Избранное трейдера Ramil Shahattudinov
Люди делятся на гуманитариев и математиков. Верно?.
Нет. Люди делятся на личностей. И каждая личность имеет свой подход в той или иной области. В понедельник выложил две задачки по теории вероятности. Одна из них очень известная. Мне показалось, что для многих теория вероятности – очень сложно. Хочу переубедить в обратном. Математика – это очень легко. Но только если вы используете правильный подход. Чем отличаются люди с гуманитарным складом ума - от математического? Гуманитарии на одну и туже задачу имеют несколько решений. К примеру, опишите смысл Шекспировского произведения? Если у Вас их будет десять – будет ли это являться неправильно? Будет наоборот – замечательно! Даже если кто то зачитает строки из произведения, и прибавит к ним что то свое – никто не обидятся. А многие даже не заметят. Но если вы имеете 10 решений на простую задачу по математике – значит большинство из них не правильные. Пример, простая задача: Сколько будет сложить «2+2»? Гуманитарии на этот счет найдут анекдоты, где результат будет разный. Вот только этим и отличаются гуманитарии от математиков. В подходе. Для того, что бы иметь математический слад, надо лишь придерживаться логике математика.


Settings =
{
Name = "xBollinger_LinReg",
period = 40,
deviation=2,
line=
{
{
Name = "xBollinger_LinReg",
Color = RGB(0, 0, 255),
Type = TYPE_LINE,
Width = 2
},
{
Name = "xBollinger_LinReg",
Color = RGB(192, 0, 0),
Type = TYPE_LINE,
Width = 2
},
{
Name = "xBollinger_LinReg",
Color = RGB(0, 128, 0),
Type = TYPE_LINE,
Width = 6
}
}
}
function c_FF()
local AMA={}
local CC={}
return function(ind, _p,_ddd)
local period = _p
local index = ind
local vol = 0
local sigma = 0
local sigma2 = 0
local aav = 0
local bb = 0
local ZZZ = 0
if index == 1 then
AMA={}
CC={}
CC[index]=(C(index)+H(index)+L(index))/3
AMA[index]=(C(index)+O(index))/2
return nil
end
------------------------------
AMA[index]=AMA[index-1]
CC[index]=(C(index)+H(index)+L(index))/3
if index < (_p) then return nil end
period =_p
if index < period then period = index end
---------------
sigma=0
sigma2=0
aav=0
ZZZ=0
for i = 0, period-1 do
ZZZ=CC[index+i-period+1]
aav=aav+ZZZ
sigma=sigma+ZZZ*(-(period-1)/2+i)
sigma2=sigma2+(-(period-1)/2+i)^2
end
bb=sigma/sigma2
aav=aav/period
AMA[index]=aav+bb*((period-1)/2)
sigma=0
sigma2=0
sigma3 = 0
for i = 0, period-1 do
ZZZ=CC[index+i-period+1]
sigma2=aav+bb*(-(period-1)/2+i)
sigma=sigma+(ZZZ-sigma2)^2
end
sigma=(sigma/period)^(1/2)
return AMA[index]-sigma*_ddd,AMA[index]+sigma*_ddd, AMA[index]
end
end
function Init()
myFF = c_FF()
return 3
end
function OnCalculate(index)
return myFF(index, Settings.period,Settings.deviation)
end
С выходом этого монитора, мы бы хотели вам показать, что учитываем требования наших клиентов, объединившись с теми, кому этот монитор будет полезнее всего, прежде всего с ТРЕЙДЕРАМИ… © Берт Парк, один из бонз Dell

Терминал позволяет разрабатывать самодельные индикаторы, работающие в отдельном потоке. Но индикаторам можно давать и дополнительную нагрузку, реализовывать даже легких роботов-индикаторов, торгующих автономно. Из плюсов – получаем штатное диалоговое окно средствами Квика, что-то рисуем не отходя от кассы… Не требуется подключения внешних библиотек для работы и отображения диалоговых окон, что повышает надежность и простоту установки.
Для примера сделал вполне рабочую программку авто стоп-тейк. Торговлю для примера на скользящих делать не стал, никому не нужна, а автостоп пригодится. Проверял на собственном реальном счете – работает. Пользуйтесь на здоровье!
Есть один недостаток: по одному графику инструмента (бумаги) не может работать индикатор, получающий данные извне этого графика (как этот) и луа скрипт с main. Происходит конфликт и Квик подвисает. Поэтому сейчас становится сложно надежно графически отобразить арбитражный спред например и его торговать. Но эту проблемку разработчики терминала обещают устранить в свежей версии.

Небольшая по объему (но, с учетом комментариев, количество строк больше 555) программа, которая не только позволяет торговать выбранным инструментом простым нажатием на ячейки таблицы, но и может вести полное протоколирование с точностью до миллисекунд действий пользователя, программы и коллбэков QUIK: OnTransReply, OnTrade, OnOrder.
С исходным кодом, слегка приправлен комментариями. Скачать: www.xsharp.ru/superscalp
Бесплатен, без ограничения сроков, «Free software».
Предыдущие версии: тут и тут
UPD. действий программы и коллбэков => действий пользователя, программы и коллбэков

Представляю вашему вниманию программу для вывода значения свечей и индикаторов из Квик в Эксель. Она позволит за несколько минут настроить экспорт, БЕЗ НАПИСАНИЯ КОДА И РЕДАКТИРОВАНИЯ СКРИПТОВ.
Программа позволит алгоритмизироваться огромному количеству людей.
И это статья/инструкция о том, как ей пользоваться.
План:
1) Как создать скрипт для Quik при помощи TableFromQuikToExcel;
2) Как запустить скрипт и вывести таблицу Quik;
3) Как импортировать данные свечей и индикаторов в Excel;
4) Заключение
1 Как создать скрипт для Quik при помощи TableFromQuikToExcel
Скрипты на языке Lua
Написанный на Lua скрипт не имеет какой-либо специальной функции, с которой начиналось бы его выполнение. Скрипт можно рассматривать просто как набор команд (инструкций), который выполняется, начиная с первой инструкции.
Скрипт может быть как очень простым, состоящим всего из одной команды, так и весьма сложным, содержащим десятки, сотни и даже тысячи инструкций. Следующие друг за другом инструкции могут разделяться точкой с запятой (;). Однако это требование не является обязательным, поэтому весь приведённый ниже код является корректным с точки зрения синтаксиса:
a = 1; b = 2
a = 1 b = 2
a = 1;
b = 2;
a = 1
b = 2
Работа с переменными в Lua
Переменные используются для хранения значений в процессе выполнения скрипта.
Имена переменных в Lua
Именами (идентификаторами) переменных в Lua могут быть любые последовательности из букв, цифр и символа подчеркивания, начинающиеся не с цифры.
