СыроеШкин

Читают

User-icon
75

Записи

7

Стратегии торговли диагональных уровней. Тестирование, использование…

   Три года назад пришла идея реализовать один торговый алгоритм. Привлекали диагональные уровни поддержки/сопротивления, которые явно визуально видны, но не было графического индикатора для многих терминалов, чтобы автоматизировать процесс.

      Была найдена информация на эту тему, созданы методы расчета, тестеры программы симуляционной торговли, и полностью автономный робот на базе терминала Квик.

Что выяснилось? Эти системы работают в реале и существует множество способов «обыгрывания» диагональных уровней. Для их торговли применял фильтры ложного-неложного пробоя по Л. Рашке; метод Сперандро (там уровни чуть по другому рассчитываются) и т.д… Здесь иногда появлялись посты на эту тему, торгуют их. Например misa с его простой и гениальной системой.

 Метод постепенно эволюционировал, оброс диверсификацией, мани-менеджментом и т.п.

      Все это я реально использовал в своих торговых алгоритмах, которые зарабатывали продолжительное время. Затем доходность упала (весна 2016, снижение волатильности в Си, которая была ведущим инструментом в портфеле) мани-менеджмент «порезал» плечи, робот «мумифицировался» и был отключен. Я перешел на другие методы торговли, а недавно протестировал некоторые незаслуженно заброшенные системы диагональных уровней – работают.



( Читать дальше )

Тюнинг для QUIK. Индикатор диагональных уровней.

Добавляю новую полезность для терминала QUIK.

По заказам доводилось делать много торговых систем, торгующих по горизонтальным уровням. Каждый заказчик строил свою систему, все они были успешно реализованы.

А как же диагональные уровни? Их возможно построить вручную, сколько людей, столько мнений…

Сегодняшний индикатор показывает косые уровни, их можно интерпретировать как диагональные уровни поддержки-сопротиления, линии каналов и т.п.

 Тюнинг для QUIK. Индикатор диагональных уровней.
Тюнинг для QUIK. Индикатор диагональных уровней.



( Читать дальше )

Для QUIK индикатор Parabolik учитывающий волатильность

   Добавляю код сделанного мной индикатора Parabolik в котором параметр ускорение зависит от волатильности. Чем больше волатильность, тем больше увеличивается ускорение и индикатор быстрее «догоняет» цену. Подобные есть на просторах интернета для метатрейдера (и не бесплатно), для квика не встречал.

 Для QUIK индикатор Parabolik учитывающий волатильность

Видно, что он дает меньше перескоков (красный), чем обычный Parabolik (черный). Хорошо себя зарекомендовал для выходов из позиций, открытых по тренду. На вход в боковике конечно будет давать ложные сигналы, как и обычный Parabolik (но меньше!), создатель которого не рекомендовал только его использовать для открытия позиций.

Код индикатора:

Settings = {
Name = "Parabolic ATR",
Period_ATR=14,
line = {{
                Name = "Parabolic ATR",
                Type = TYPE_POINT,
                Color = RGB(255,0,0),
                Width = 2
                }
                }
}

old_idx=0
long=false
short=false
revers=false


function Init()
        return 1
end

function OnCalculate(idx)
if idx<Settings.Period_ATR then
return nil
else
if idx==Settings.Period_ATR  then
psar={}
psar[idx]=L(idx)
long=true
hmax=H(idx)
per_ATR=Settings.Period_ATR
local TR=0
for js=(idx-per_ATR),idx-1 do
TR=(TR+H(js)-L(js))
end
Old_ATR=TR/per_ATR
revers=true
else

if idx~=old_idx then
local TR=0
for js=(idx-per_ATR),idx-1 do
TR=(TR+H(js)-L(js))
end
local ATR=TR/per_ATR
af=ATR/(Old_ATR+ATR)
af=af/10
Old_ATR=ATR
if long then
if hmax<H(idx-1) then
hmax=H(idx-1)
end
psar[idx]=psar[idx-1]+af*(hmax-psar[idx-1])
end
if short then
if lmin>L(idx-1) then
lmin=L(idx-1)
end
psar[idx]=psar[idx-1]+af*(lmin-psar[idx-1])
end
revers=true
end
if long and L(idx)<psar[idx] and revers then
psar[idx]=hmax
short=true
long=false
lmin=L(idx)
af=Step
revers=false
end
if short and H(idx)>psar[idx] and revers then
psar[idx]=lmin
long=true
short=false
hmax=H(idx)
af=Step
revers=false
end
end

old_idx=idx

return psar[idx]
end
end



( Читать дальше )

В Анталью на машине из Москвы. Турция.

Продолжение, начало здесь http://smart-lab.ru/blog/329688.php

Границу Грузии и Турции переезжали в Ахалцихе, там менее многолюдно, чем в Батуми. В Турции на авто необходима страховка (в Грузии вроде хотят с этого года тоже ввести), «сигорта» по-турецки. Можно сделать грин-кард дома, но это намного дороже, чем оформить сигорту на турецкой границе. После границы идет живописная горная дорога, покрытие много лучше, чем в Грузии.

В Анталью на машине из Москвы. Турция.

 Автомобильная культура в Турции на высоте, сказывается отсутствие железных дорог. Почти на любой заправке отельчик, мойка кафешка. Народ ездит очень грамотно, расчетливо, дороги хорошего качества. Правда дико дорогой бензин. Ввоз машины для иностранца — три месяца. Для пенсионеров-иностранцев, кто имеет недвижимость в Турции, эти сроки намного больше, можно купить авто без растаможки. Первым местом посещения была Каппадокия. Ехал от границы чрез Карс-Эрзурум-Кайсери в Гореме.



( Читать дальше )

На машине из Москвы в Анталью, летнему сезону посвящается!

Ровно год исполняется с момента как мы начали это путешествие, сев в автомобиль и взяв курс на юг.Этому предшествовала подготовка: машина, не новая «Субару», с особым пристрастием осмотрена на сервисе, заменено кой-чего; составлен подробный маршрут с запасными вариантами; навигация с платными картами «Навител» — Россия, Грузия, Турция; карты «Виза» и «Мастер» разных банков. В самой южной точке маршрута, турецком прибрежном городке Авсалар забронирована квартира в кондо на два месяца.
Ну и конечно о нелегком (но местами приятном) бизнесе нашем… Я оставил работать своего нового робота (тут ничего не рекламирую), который за три месяца работы-отладки показал неплохие результаты. Без реинвестирования, чтобы не рушил мозг на отдыхе возможными просадками. Дал ему денег на ГО 25 Си, чтоб оправдать сервак, где он «вкалывает», ну и заработать/потерять без эмоций. Статистику покажу понедельно, в пунктах на контракт, как и вел.

Поехали втроем: я, жена, сын десяти лет. Первый город остановки и ночевки – Волгоград, выбрали этот маршрут в честь юбилея Победы, чтобы посетить Мамаев курган. По дороге один раз пытались развести гаишники, мол обгон через сплошную, у нас есть запись, сотрем за три тыщи.



( Читать дальше )

Для Quik. Авто тейк & стоп. Новый подход, код.

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



( Читать дальше )

Всем привет! Индикатор для QUIK - нештатный, нашару

Всем привет! 
Чуть о себе: зарабатываю на российском рынке (только для себя), делаю торговые программы (для себя и для других).
Давно читаю Smart-lab, нахожу что-то полезное и интересное. Вот добавлю одну свою легенькую утилитку для Квика, надеюсь пригодится.

Всем привет! Индикатор для QUIK - нештатный, нашару

Индикатор Fractal_Chennal, рисует уровни по «фракталам» с задаваемым периодом. В отличии от штатного  «Fractals» дожидается окончательного формирования формации. Я его использовал в качестве трейлинг-стопа в некоторых программах. Отдает два значения скриптам.
Код:

Settings={
Name = "Fractal_Chennal",
period=5,
line={
{
Name = "Level_High",
Type =TYPE_LINE,-- = LINE --линии  = DASH -- тире  = POINT -- точки
Width = 1,
Color = RGB(0,255, 0)--green
},
{
Name = "Level_Low",
Type =TYPE_LINE,
Width = 1,
Color = RGB(255,0,0)--root
}}}

idx_prosl=0

function Init()
return 2
end

function OnCalculate(idx)
if idx==1 then
P = math.floor(Settings.period/2)*2+1
message("Код бумаги: "..getDataSourceInfo().sec_code.." ; период индикатора: "..P,1)
t_H,t_L={},{}
end
if idx~=nil and idx>P then
if idx_prosl~=idx then
local l=idx-P
for l=l,idx-1 do
t_H[l]=H(l)
t_L[l]=L(l)
end
if t_H[#t_H-(P-1)/2]==math.max(unpack(t_H,#t_H-P+1,#t_H)) then
H_ind_value=t_H[#t_H-(P-1)/2]
end
if t_L[#t_L-(P-1)/2]==math.min(unpack(t_L,#t_L-P+1,#t_L)) then
L_ind_value=t_L[#t_L-(P-1)/2]
end
end
else
H_ind_value=nil
L_ind_value=nil
end
idx_prosl=idx
return H_ind_value, L_ind_value
end
Как пользоваться:

( Читать дальше )

теги блога СыроеШкин

....все тэги



UPDONW
Новый дизайн