Новые сообщения · Участники · Правила форума · Поиск · RSS · Вход · Регистрация ·

Страница 9 из 24«1278910112324»
Форум трейдеров » Разное » Архив советников » Шаблоны стратегий для UTS
Шаблоны стратегий для UTS

expforexДата: Воскресенье, 06.06.2010, 15:53 | Сообщение # 1
Главный Администартор
Группа: Администраторы
Сообщений: 8959
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Создание алгоритмов использования индикаторов, зачастую занимает 50% времени при программировании на заказ.

Каждый программист знает, что Функции использованные в торговли в 90 % случаев - повторяются. Но для того чтобы написать эксперта - для начала нужно изучить индикаторы, использующиеся в нем.

В Этой ветке я буду представлять алгоритмы использования индикаторов. Более того, чтобы не быть голословным, все эти алгоритмы я буду встраивать в UTS( Universal Traiding System) и далее тестировать возможности индикатора в EaMultitester.

На входе: Индикатор - алгоритм его использования.
На выходе: Файл стратегии на основе индикатора










Программирование на заказ || Наши Разработки

 
СообщениеСоздание алгоритмов использования индикаторов, зачастую занимает 50% времени при программировании на заказ.

Каждый программист знает, что Функции использованные в торговли в 90 % случаев - повторяются. Но для того чтобы написать эксперта - для начала нужно изучить индикаторы, использующиеся в нем.

В Этой ветке я буду представлять алгоритмы использования индикаторов. Более того, чтобы не быть голословным, все эти алгоритмы я буду встраивать в UTS( Universal Traiding System) и далее тестировать возможности индикатора в EaMultitester.

На входе: Индикатор - алгоритм его использования.
На выходе: Файл стратегии на основе индикатора









Автор - expforex
Дата добавления - 06.06.2010 в 15:53

expforexДата: Понедельник, 02.08.2010, 09:11 | Сообщение # 81
Главный Администартор
Группа: Администраторы
Сообщений: 8959
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Стейты

Прикрепления: Exp-UTS_v_1.2-R.rar(963Kb)


Программирование на заказ || Наши Разработки

 
СообщениеСтейты

Автор - expforex
Дата добавления - 02.08.2010 в 09:11

SIPДата: Среда, 04.08.2010, 09:25 | Сообщение # 82
Трейдер - Генерал-майор
Группа: Член клуба UTS
Сообщений: 449
Награды: 3
Статус: Offline


[Бонусы за сообщения ]

Владислав, протестируйте пож. Я совместил SEFC10 с АО. Смотрел на визуале, вроде неплохо. Тактика - сетка с усреднением ТФ М5.

Code
//---------------------------------Стратегия № 15  
   if (NumberStrategy==15)
     {

//-------------------------SEFC10  /------Для стратегии №15     

   int SR = 3;
   int SRZZ = 12;
   int MainRZZ = 20;
   int FP = 21;
   int SMF = 3;
   bool DrawZZ = FALSE;
   int PriceConst = 0;       
//--------------------------------------

   double BuyOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,7);  // 14
   double SellOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,7); // 14      
   double BuyOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,9);  // 14
   double SellOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,9); // 14  
   double BuyOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,14);  // 14
   double SellOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,14); // 14  
//------------------------------------------
     double AO1_15=iAO(Symbol(),PERIOD_W1,0);
     double AO2_15=iAO(Symbol(),PERIOD_W1,1);
     double AO3_15=iAO(Symbol(),PERIOD_W1,2);
     double AO4_15=iAO(Symbol(),PERIOD_W1,3);

  if (AO4_15<AO3_15 &&AO3_15<AO2_15 && AO2_15<AO1_15 ) // up
if (BuyOpen>0 || BuyOpen1>0 || BuyOpen2>0)return(1);     

  if (AO4_15>AO3_15 &&AO3_15>AO2_15 && AO2_15>AO1_15 ) // dwn  
if (SellOpen>0 || SellOpen1>0 || SellOpen2>0)return(2);   

  }

Добавлено (04.08.2010, 09:25)
---------------------------------------------
Кстати, я тут подумал, что АО недельный можно и с ВВ совместить и получится как раз то что нужно.

 
СообщениеВладислав, протестируйте пож. Я совместил SEFC10 с АО. Смотрел на визуале, вроде неплохо. Тактика - сетка с усреднением ТФ М5.

Code
//---------------------------------Стратегия № 15  
   if (NumberStrategy==15)
     {

//-------------------------SEFC10  /------Для стратегии №15     

   int SR = 3;
   int SRZZ = 12;
   int MainRZZ = 20;
   int FP = 21;
   int SMF = 3;
   bool DrawZZ = FALSE;
   int PriceConst = 0;       
//--------------------------------------

   double BuyOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,7);  // 14
   double SellOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,7); // 14      
   double BuyOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,9);  // 14
   double SellOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,9); // 14  
   double BuyOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,14);  // 14
   double SellOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,14); // 14  
//------------------------------------------
     double AO1_15=iAO(Symbol(),PERIOD_W1,0);
     double AO2_15=iAO(Symbol(),PERIOD_W1,1);
     double AO3_15=iAO(Symbol(),PERIOD_W1,2);
     double AO4_15=iAO(Symbol(),PERIOD_W1,3);

  if (AO4_15<AO3_15 &&AO3_15<AO2_15 && AO2_15<AO1_15 ) // up
if (BuyOpen>0 || BuyOpen1>0 || BuyOpen2>0)return(1);     

  if (AO4_15>AO3_15 &&AO3_15>AO2_15 && AO2_15>AO1_15 ) // dwn  
if (SellOpen>0 || SellOpen1>0 || SellOpen2>0)return(2);   

  }

Добавлено (04.08.2010, 09:25)
---------------------------------------------
Кстати, я тут подумал, что АО недельный можно и с ВВ совместить и получится как раз то что нужно.


Автор - SIP
Дата добавления - 04.08.2010 в 09:25

ivivДата: Среда, 04.08.2010, 12:49 | Сообщение # 83
Трейдер - Генерал-лейтенант
Группа: Член клуба UTS
Сообщений: 545
Награды: 4
Статус: Offline


[Бонусы за сообщения ]

С АО вообще хорошо тестилось . Даже минутный. Надо будет посмотреть , что там СИП придумал.

 
СообщениеС АО вообще хорошо тестилось . Даже минутный. Надо будет посмотреть , что там СИП придумал.

Автор - iviv
Дата добавления - 04.08.2010 в 12:49

expforexДата: Среда, 04.08.2010, 14:14 | Сообщение # 84
Главный Администартор
Группа: Администраторы
Сообщений: 8959
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Quote (SIP)
Владислав, протестируйте пож. Я совместил SEFC10 с АО. Смотрел на визуале, вроде неплохо. Тактика - сетка с усреднением ТФ М5.

Я закачал версию с исправленным Мультитестером, попробуйте пожалуйста.

Стратегию проверим, у меня 3 терминала работают на тесты. smile



Программирование на заказ || Наши Разработки

 
Сообщение
Quote (SIP)
Владислав, протестируйте пож. Я совместил SEFC10 с АО. Смотрел на визуале, вроде неплохо. Тактика - сетка с усреднением ТФ М5.

Я закачал версию с исправленным Мультитестером, попробуйте пожалуйста.

Стратегию проверим, у меня 3 терминала работают на тесты. smile


Автор - expforex
Дата добавления - 04.08.2010 в 14:14

SIPДата: Суббота, 07.08.2010, 11:28 | Сообщение # 85
Трейдер - Генерал-майор
Группа: Член клуба UTS
Сообщений: 449
Награды: 3
Статус: Offline


[Бонусы за сообщения ]

А можно сделать вот так.

Code
//---------------------------------Стратегия № 15  
   if (NumberStrategy==15)
     {

//-------------------------SEFC10  /------Для стратегии №15     

   int SR = 3;
   int SRZZ = 12;
   int MainRZZ = 20;
   int FP = 21;
   int SMF = 3;
   bool DrawZZ = FALSE;
   int PriceConst = 0;       
//--------------------------------------

   double BuyOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,2);   
   double SellOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,2);  
   double BuyOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,3);   
   double SellOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,3);  
   double BuyOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,4);   
   double SellOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,4);  
   double BuyOpen3=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,5);   
   double SellOpen3=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,5);  
//------------------------------------------
     double AO1_15=iAO(Symbol(),PERIOD_W1,0);
     double AO2_15=iAO(Symbol(),PERIOD_W1,1);
     double AO3_15=iAO(Symbol(),PERIOD_W1,2);
     double AO4_15=iAO(Symbol(),PERIOD_W1,3);

  if (AO4_15<AO3_15 &&AO3_15<AO2_15 && AO2_15<AO1_15 ) // up
if (BuyOpen>0 || BuyOpen1>0 || BuyOpen2>0 || BuyOpen3>0)return(1);     

  if (AO4_15>AO3_15 &&AO3_15>AO2_15 && AO2_15>AO1_15 ) // dwn  
if (SellOpen>0 || SellOpen1>0 || SellOpen2>0 || SellOpen3>0)return(2);   

  }

Добавлено (07.08.2010, 11:28)
---------------------------------------------
Ну что? кто то использовал эту стратегию?

 
СообщениеА можно сделать вот так.
Code
//---------------------------------Стратегия № 15  
   if (NumberStrategy==15)
     {

//-------------------------SEFC10  /------Для стратегии №15     

   int SR = 3;
   int SRZZ = 12;
   int MainRZZ = 20;
   int FP = 21;
   int SMF = 3;
   bool DrawZZ = FALSE;
   int PriceConst = 0;       
//--------------------------------------

   double BuyOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,2);   
   double SellOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,2);  
   double BuyOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,3);   
   double SellOpen1=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,3);  
   double BuyOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,4);   
   double SellOpen2=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,4);  
   double BuyOpen3=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,4,5);   
   double SellOpen3=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,5);  
//------------------------------------------
     double AO1_15=iAO(Symbol(),PERIOD_W1,0);
     double AO2_15=iAO(Symbol(),PERIOD_W1,1);
     double AO3_15=iAO(Symbol(),PERIOD_W1,2);
     double AO4_15=iAO(Symbol(),PERIOD_W1,3);

  if (AO4_15<AO3_15 &&AO3_15<AO2_15 && AO2_15<AO1_15 ) // up
if (BuyOpen>0 || BuyOpen1>0 || BuyOpen2>0 || BuyOpen3>0)return(1);     

  if (AO4_15>AO3_15 &&AO3_15>AO2_15 && AO2_15>AO1_15 ) // dwn  
if (SellOpen>0 || SellOpen1>0 || SellOpen2>0 || SellOpen3>0)return(2);   

  }

Добавлено (07.08.2010, 11:28)
---------------------------------------------
Ну что? кто то использовал эту стратегию?


Автор - SIP
Дата добавления - 07.08.2010 в 11:28

expforexДата: Воскресенье, 08.08.2010, 15:18 | Сообщение # 86
Главный Администартор
Группа: Администраторы
Сообщений: 8959
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Quote (SIP)
Ну что? кто то использовал эту стратегию?

поставил на тест. приеду домой выложу результат.



Программирование на заказ || Наши Разработки

 
Сообщение
Quote (SIP)
Ну что? кто то использовал эту стратегию?

поставил на тест. приеду домой выложу результат.

Автор - expforex
Дата добавления - 08.08.2010 в 15:18

SIPДата: Воскресенье, 08.08.2010, 19:42 | Сообщение # 87
Трейдер - Генерал-майор
Группа: Член клуба UTS
Сообщений: 449
Награды: 3
Статус: Offline


[Бонусы за сообщения ]

Я в закрытом форуме тему создал. Как думаете, актуально?

 
СообщениеЯ в закрытом форуме тему создал. Как думаете, актуально?

Автор - SIP
Дата добавления - 08.08.2010 в 19:42

Umka85Дата: Четверг, 12.08.2010, 22:43 | Сообщение # 88
Трейдер - Генерал-лейтенант
Группа: Член клуба UTS
Сообщений: 521
Награды: 3
Статус: Offline


[Бонусы за сообщения ]

SIP, актуально, если серьезно к этому отнестись и раскладывать все по полочкам, а не в кучу складывать как обычно бывает.

Вопрос: А можно сделать какую нибудь простенькую стратегию чтобы ордер открывался в любую сторону сразу же при закрытии предыдущего. Потому как при качелях без разницы куда идет рынок, лишь бы он не был долго во флете.
Была такая стратегия на 2 странице по индикатору VQ, стратегия №12 в 14 посте, но сейчас она почему то не скачивается. У кого осталась, скиньте приз. А то я посеял. Вставить текстом не получается.



Сообщение отредактировал Umka85 - Четверг, 12.08.2010, 23:02
 
СообщениеSIP, актуально, если серьезно к этому отнестись и раскладывать все по полочкам, а не в кучу складывать как обычно бывает.

Вопрос: А можно сделать какую нибудь простенькую стратегию чтобы ордер открывался в любую сторону сразу же при закрытии предыдущего. Потому как при качелях без разницы куда идет рынок, лишь бы он не был долго во флете.
Была такая стратегия на 2 странице по индикатору VQ, стратегия №12 в 14 посте, но сейчас она почему то не скачивается. У кого осталась, скиньте приз. А то я посеял. Вставить текстом не получается.


Автор - Umka85
Дата добавления - 12.08.2010 в 22:43

SIPДата: Суббота, 14.08.2010, 09:43 | Сообщение # 89
Трейдер - Генерал-майор
Группа: Член клуба UTS
Сообщений: 449
Награды: 3
Статус: Offline


[Бонусы за сообщения ]

Quote (Umka85)
Была такая стратегия на 2 странице по индикатору VQ, стратегия №12 в 14 посте

Скачивается, но файлик без стратегии. А текстом не вставляется потому, что у тебя наверно переменные индикатора с каким то другим дублируются и ошибка при компиляции. Можно переменные заремарить, т.е на весь блок поставить вначале /* , а в конце */ или каждую строчку // двумя слешами.
Code
/*
      bool     Crash = false;
      int      TimeFrame = 0;
      int      Length = 5;
      int      Method = 3;
      int      Smoothing = 2;
      int      Filter = 1;
      bool     RealTime = true;
      bool     Steady  = false;
      bool     Color = true;
      bool     Alerts = false;
      bool     EmailON = false;
      bool     SignalPrice = true;
      color    SignalPriceBUY = Lime;
      color    SignalPriceSELL = Red;
      int      CountBars = 1485;
*/

И вместо переменных в описании индикатора вписать числа.
Сейчас посмотрел эту стратегию. Владислав вроде ошибся, так как по его фунции идут постоянные сигналы
Для стрелок используются 3 и 4 буферы, а он ставил 1 и 2
Я изменил и вроде как щас правильные сигналы.
Code
// UP стрелка
double VQ1=iCustom(Symbol(),0,"VQ",Crash,TimeFrame,Length,Method,Smoothing,Filter,RealTime,Steady,Color,Alerts,EmailON,SignalPrice,SignalPriceBUY,S ignalPriceSELL,CountBars,3,1);
// Down стрелка
double VQ2=iCustom(Symbol(),0,"VQ",Crash,TimeFrame,Length,Method,Smoothing,Filter,RealTime,Steady,Color,Alerts,EmailON,SignalPrice,SignalPriceBUY,S ignalPriceSELL,CountBars,4,1);

if(VQ1!=EMPTY_VALUE)
return(1);

if(VQ2!=EMPTY_VALUE)
return(2);

  }

Прикрепления: UTS_Str-gy_12-V.rar(46Kb)


Сообщение отредактировал SIP - Суббота, 14.08.2010, 10:32
 
Сообщение
Quote (Umka85)
Была такая стратегия на 2 странице по индикатору VQ, стратегия №12 в 14 посте

Скачивается, но файлик без стратегии. А текстом не вставляется потому, что у тебя наверно переменные индикатора с каким то другим дублируются и ошибка при компиляции. Можно переменные заремарить, т.е на весь блок поставить вначале /* , а в конце */ или каждую строчку // двумя слешами.
Code
/*
      bool     Crash = false;
      int      TimeFrame = 0;
      int      Length = 5;
      int      Method = 3;
      int      Smoothing = 2;
      int      Filter = 1;
      bool     RealTime = true;
      bool     Steady  = false;
      bool     Color = true;
      bool     Alerts = false;
      bool     EmailON = false;
      bool     SignalPrice = true;
      color    SignalPriceBUY = Lime;
      color    SignalPriceSELL = Red;
      int      CountBars = 1485;
*/

И вместо переменных в описании индикатора вписать числа.
Сейчас посмотрел эту стратегию. Владислав вроде ошибся, так как по его фунции идут постоянные сигналы
Для стрелок используются 3 и 4 буферы, а он ставил 1 и 2
Я изменил и вроде как щас правильные сигналы.
Code
// UP стрелка
double VQ1=iCustom(Symbol(),0,"VQ",Crash,TimeFrame,Length,Method,Smoothing,Filter,RealTime,Steady,Color,Alerts,EmailON,SignalPrice,SignalPriceBUY,S ignalPriceSELL,CountBars,3,1);
// Down стрелка
double VQ2=iCustom(Symbol(),0,"VQ",Crash,TimeFrame,Length,Method,Smoothing,Filter,RealTime,Steady,Color,Alerts,EmailON,SignalPrice,SignalPriceBUY,S ignalPriceSELL,CountBars,4,1);

if(VQ1!=EMPTY_VALUE)
return(1);

if(VQ2!=EMPTY_VALUE)
return(2);

  }

Автор - SIP
Дата добавления - 14.08.2010 в 09:43

expforexДата: Суббота, 14.08.2010, 10:40 | Сообщение # 90
Главный Администартор
Группа: Администраторы
Сообщений: 8959
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

SIP, Прошу прощения за столь долгий процесс. Установил ПРОМТ-переводчик, он мне инет убил. работаю опять с ноута на модеме.

Quote (Umka85)
Вопрос: А можно сделать какую нибудь простенькую стратегию чтобы ордер открывался в любую сторону сразу же при закрытии предыдущего. Потому как при качелях без разницы куда идет рынок, лишь бы он не был долго во флете.

Делал такую стратегию для тестирования. Выложу позже.

Ребята извините за отсутствие.



Программирование на заказ || Наши Разработки

 
СообщениеSIP, Прошу прощения за столь долгий процесс. Установил ПРОМТ-переводчик, он мне инет убил. работаю опять с ноута на модеме.
Quote (Umka85)
Вопрос: А можно сделать какую нибудь простенькую стратегию чтобы ордер открывался в любую сторону сразу же при закрытии предыдущего. Потому как при качелях без разницы куда идет рынок, лишь бы он не был долго во флете.

Делал такую стратегию для тестирования. Выложу позже.

Ребята извините за отсутствие.


Автор - expforex
Дата добавления - 14.08.2010 в 10:40
Форум трейдеров » Разное » Архив советников » Шаблоны стратегий для UTS
Страница 9 из 24«1278910112324»
Поиск:


WebMoney Яндекс цитирования.