Парный трейдинг и мультивалютный арбитраж. Разборки. - страница 255

 
Maxim Kuznetsov #:

можно сократить до естественных корзинных синтетиков :-)

синтетик еврозоны: EURUSD+GBPUSD+10.0/USDSEK (сумма курсов евро фунта с кроной представляют европу)

синтетик америки: 1.0/USDCAD + 100.0/USDJPY (штатовские нефть+зерно и их-же вассальный банк)

синтетик азии:  100.0/USDJPY + NZDUSD (йена c киви)

синтетик золота: XAUUSD/troy/100 + AUDUSD + 1.0/USDCHF ( цена золота в метрической системе+ для AUD - золото это статья экспорта+ франк исторически с золотом)

и доп.синтетик UK : 1.0/USDСAD+AUDUSD+NZDUSD+GBPUSD

так по крайней мере сохраняется логический и экономический смысл. Чего в переборе всех сочетаний к сожалению нет

В исходних данних надо определить ОБЩУЮ ширину канала  -какова его ширина и куда он идет -расширяется или сжимается.
Ширина канала имеет значение для параметров дифференциала, там либо откривать стопордер либо лимит, также и закритие связано с дифференциалом.
Закритие и откритие ордеров связано с значением импульса и дифференциала (лимит или стопордер).
также по етим данним определяется идеализированний импульс.
Надо брать все 8 валют
//"USD", "EUR", "GBP",  "JPY", "AUD", "CAD", "NZD","CHF
, данние по их силе, и по ним определять ширину всего канала, направление и импульс.

Дифференциал -ето когда   колеса задние крутятся одно по часовой стрелке, второе против часовой.
Смисл в том, что если торговать 28 пар (етого вполне достаточно, золото и шведская крона тут явно лишние)
то смисл в том что ти постоянно перекупаешь или перепродаешь пай, для расширяющихся и сжимающихся.
 
Maxim Kuznetsov #:

так по крайней мере сохраняется логический и эконом

У меня сигнальний блок алгоритма и торговий робот разделени.
Сигнальний блок ето отдельная утилита, с снятими с буферов индикатора исходними данними,
вичислительними формулами для уравнений, параметрами дифференциала, импульса 
Алгоритм передает результати расчета  (сигнал) через глобальние переменние терминала передает роботу. 

например

 if (( AUD1-CAD1)/css1_long > master_midpoint1*((AUD2-CAD2)/css2_long + (AUD3-CAD3)/css3_long + (AUD4-CAD4)/css4_long )/3

  && AUD1 > CAD1 && (AUD1-CAD1) / css1_width>0.025 && GAP1>0)

  GlobalVariableSet("bb_trend06_AUDCAD",-1);

Робот получает только сигнал, Робот пустой-как барабан - все основние данние запаковани в алгоритме.

 
Alexander Pryakha #:

У меня сигнальний блок алгоритма и торговий робот разделени.
Сигнальний блок ето отдельная утилита, с снятими с буферов индикатора исходними данними,
вичислительними формулами для уравнений, параметрами дифференциала, импульса 
Алгоритм передает результати расчета  (сигнал) через глобальние переменние терминала передает роботу. 

например

 if (( AUD1-CAD1)/css1_long > master_midpoint1*((AUD2-CAD2)/css2_long + (AUD3-CAD3)/css3_long + (AUD4-CAD4)/css4_long )/3

  && AUD1 > CAD1 && (AUD1-CAD1) / css1_width>0.025 && GAP1>0)

  GlobalVariableSet("bb_trend06_AUDCAD",-1);

Робот получает только сигнал, Робот пустой-как барабан - все основние данние запаковани в алгоритме.

жесть какая то

почему этих AUD и CAD несколько, почему не валютные пары?

для парного трейдинга Вы используете индикатор индексов что ли 

 
Renat Akhtyamov #:
жесть какая то
AUD1 -текущая сила AUD.
AUD2 -сила AUD на предидущем баре
css1_long - сумма всех лонгов текущая (или половина общей ширини канала - сумма лонгов равна сумме шортов)
(AUD1-CAD1)/css1_long  -пай (или доля пая) текущая
(AUD2-CAD2)/css2_long  пай (или доля пая) предидущего бара.
master_midpoint1  - идеализированний импульс

(AUD1-CAD1) / css1_width>0.025  ето значит что канал больше 100% для пари AUDCAD
GAP1>0 параметр дифференциала для корзини  GAP1, значит что канал сжимается и ширина общего канала меньше 100%
GlobalVariableSet("bb_trend06_AUDCAD",-1)  передача данних с алгоритма в глобалку , сигнал на продажу
AUD1-CAD1 єто зачение может бить как положительное так и отрицательное, поетому силу импульса в формуле, надо прикладивать в разние сторони,
в зависимости кто сильнее  AUD1 > CAD1 .


индикатор которий использую, викладивал в етой веточке.
Ето гибрид от CCFp, но можно прицепить и другой кластерний индикатор, главное чтоби порядок буферов совпадал, или корректировать либо индикатор либо сигнальний блок под ето дело.
В алгоритме сигнального блока  буфери кластерного индикатора расположени в такой последовательности

USD1 = css1 [0];

 EUR1 = css1 [1];

 GBP1 = css1 [2];

 CHF1 = css1 [3];

 JPY1 = css1 [4];

 AUD1 = css1 [5];

 CAD1 = css1 [6];

 NZD1 = css1 [7];

На одну пару в алгоритме получилось 128 строчек кода,
(ето 16 уравнений для дифференциала 4х4 : два лимита,два стоп-ордера, 4 корзини) ,
а общее число строк в коде 5260
И єто его еще хорошенько попрессовал.

 
Alexander Pryakha #:

Надо брать все 8 валют
//"USD", "EUR", "GBP",  "JPY", "AUD", "CAD", "NZD","CHF
, данние по их силе, и по ним определять ширину всего канала, направление и импульс.

Так в естественных наборах и есть все 8..даже 9 ;-)

зато можно найти (и использовать) реально присутствующие тренды,циклы и тенденции. 

а когда берутся все сочетания, то 1) личного внимания на всех не хватит 2) в роботах слишком легко приумножаются ошибки. Хотя на вкус и цвет..

---

вот европа циклит и просаживается каждые два месяца (~300  H4, плюс-минус от дней календаря)

 
Renat Akhtyamov #:
почему не валютные пары?

Валютние пари и их котировки смотреть безполезно, там фуфел .
надо использовать силу каждой валюти, причем еще ету силу надо верифицировать,
чтоби индикатор корректно ее показивал.

 
Maxim Kuznetsov #:

вот европа циклит и просаживается каждые два месяца (~300  H4, плюс-минус от дней календаря)

Сегодня разворотов дифференциала било где-то штук 12, Ето для М30.
Ждать когда в конце тоннеля будет приз -пару месяцев итд, ето неправильно.
Впринципе по торговле  вихвативается с ордера 10-20 пунктов, бивает что и 5, редко 30-40  и на етом идет закритие.
Все сквизи практически идет отстрел на верху сквиза и закуп в другую сторону (ето работа идеализированного импульса).
Если сквиз левий, то закрития не происходит, ордер держится дальше.
Лоси тоже отстреливаются. Если ето действительно лоси.. Потому как могут бить и не лоси, тогда включается мартин при повторном сигнале.
Там вообще не нужно ставить стоп и тейк -закритие идет по импульсу.

 
Вот гистограмка результатов расчета с кластерного индикатора CCFp_v1.0.3cvert.
таймфрейм М30 .
Текущие динамичние значения:
Состояние канала CROSS2.  (всего 4 корзини   CROSS1, CROSS2,GAP1, GAP2)
Импульс в канале 1.106
Контрольние значения сили валют текущие
Канал расширяется, толщина канала 112%
Сколько всего сила канала 186.3.
Также, кроме мажора M30 использкется минор М5.
Также посчитано состояние канала М5 ( корзина GAP1) и импульс в канале М5.
Посчитан вес пая каждой пари (28 пар) и что происходит с паем -растет он или падает.
Ето уже результати расчета , а не входящие значения!
По етим полученним значениям и находим ответи в задаче, какой сигнал.
Индикатор  CCFp_v1.0.3cvert см. вложение

Файлы:
 
Alexander Pryakha #:

Валютние пари и их котировки смотреть безполезно, там фуфел .
надо использовать силу каждой валюти, причем еще ету силу надо верифицировать,
чтоби индикатор корректно ее показивал.

А что если рассматривать силу корзин? .уровнять силы  4х корзин.

 
mvf358 #:

А что если рассматривать силу корзин? .уровнять силы  4х корзин.

Корзини уравнивать не надо.
Корзина в торговле всегда одна, ето откритие 28 ордеров по 1 ордеру на пару -шорт или лонг :-)
Ето ж как тренд бичий (расширение корзини) и медвежий (сжатие)
кроме етого сила тренда меньше 100% или больше 100%.

У каждой корзини свой диапазон торговля для CROSS  и GAP
и свои условия - откривать надо либо стоп-ордер либо лимитний ордер,
при етом, в зависимости какая ширина канала и какое его состояние -сжатие или растяжение,
такие и направления векторов движения надо принимать.
Если использовать число Фибоначчи, что логично

/////13,21,34,55,89,144,233,377,610


то при условии, что css1_width = 100 - ето средняя ширина торгового диапазона,
то условия для корзин по откритию и закритию будут виглядеть примерно так:

//////////////////////////////////////////////////

//Basket 1 GAP1 

//CROSS1 limit   css1_width>13 && css1_width<34

//GAP2 limit  css1_width>89 && css1_width<233

//GAP1 stop  css1_width>34 && css1_width<89


//Basket 2 CROSS1 

//CROSS2 limit  css1_width>89 && css1_width<233

//GAP1 limit     css1_width>55 && css1_width<89

//CROSS1 stop   css1_width>13 && css1_width<34


//Basket 3 GAP2

//GAP1 limit  css1_width>21 && css1_width<89

//CROSS2 limit   css1_width>89 && css1_width<144

//GAP2 stop   css1_width>144 && css1_width<233


//Basket 4 CROSS2

//GAP2 limit  css1_width>144 && css1_width<233

//CROSS1 limit  css1_width>13 && css1_width<89

//CROSS2 stop  css1_width>89 && css1_width<144.

Всегда торгуются текущая основная корзина  по стоп-ордеру 
 и  половина ордеров двух пограничних корзин -  по лимитним ордерам.
Оппозитная -противоположная корзина -не торгуется.
Когда из текущего состояния корзина перейдет в пограничное,
то "старая" оппозитная корзина тогда станет пограничной, и начнет торговаться.
Єто тоже самое как в игре в наперстки -только наперстков не три, а четире,
и нужно смотреть за наперстком, где шарик, и за двумя соседними наперстками.
И при условии, что ти знаешь - куда катится сейчас шарик (направление тренда)
и под каким  наперстком (корзиной) он сейчас находится
-в таком случае торговля будет прибильной.
Если не иметь єтой бази -то делать на форексе нечего, 
побреют при любих раскладах.