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

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

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


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

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

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

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

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










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

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

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

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

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









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

ivivДата: Воскресенье, 25.07.2010, 22:58 | Сообщение # 71
Трейдер - Генерал-лейтенант
Группа: Член клуба UTS
Сообщений: 545
Награды: 4
Статус: Offline


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

Хорошо отмазался. Чукча тоже , что видит , то поет.

 
СообщениеХорошо отмазался. Чукча тоже , что видит , то поет.

Автор - iviv
Дата добавления - 25.07.2010 в 22:58

SolomanaДата: Понедельник, 26.07.2010, 01:31 | Сообщение # 72
Трейдер - Рядовой
Группа: Член клуба UTS
Сообщений: 18
Награды: 0
Статус: Offline


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

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

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

Автор - Solomana
Дата добавления - 26.07.2010 в 01:31

expforexДата: Понедельник, 26.07.2010, 12:39 | Сообщение # 73
Главный Администартор
Группа: Администраторы
Сообщений: 9037
Награды: 29
Статус: Offline


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

Solomana,
Да можно сделать и так.

Есть несколько вариантов:

1. Есть параметр
CloseifChange это параметр закрывает при обратном сигнале. Далее значение параметров
MaxTrades = Общее количество разрешенных сделок на счете, в рамках одной магика
MaxTradesBuy = Общее количество бай сделок
MaxTradesSell = Общее количество селл сделок

Для того чтобы сделки не закрывались по обратному сигналу, а открывались по всем сигналам индикатора, нужно настроить эти параметры:

CloseifChange false
MaxTrades = например 20
MaxTradesBuy = 10
MaxTradesSell = 10

Тогда сделки не будут закрываться по обратному сигналу, а например по профиту, или по стопам.

далее, если хотите чтобы было только одно направление (противоположные по сигналу обратному - закрывались)

нужно сделать так:

CloseifChange true
MaxTrades = например 20
MaxTradesBuy = 10
MaxTradesSell = 10



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

 
СообщениеSolomana,
Да можно сделать и так.

Есть несколько вариантов:

1. Есть параметр
CloseifChange это параметр закрывает при обратном сигнале. Далее значение параметров
MaxTrades = Общее количество разрешенных сделок на счете, в рамках одной магика
MaxTradesBuy = Общее количество бай сделок
MaxTradesSell = Общее количество селл сделок

Для того чтобы сделки не закрывались по обратному сигналу, а открывались по всем сигналам индикатора, нужно настроить эти параметры:

CloseifChange false
MaxTrades = например 20
MaxTradesBuy = 10
MaxTradesSell = 10

Тогда сделки не будут закрываться по обратному сигналу, а например по профиту, или по стопам.

далее, если хотите чтобы было только одно направление (противоположные по сигналу обратному - закрывались)

нужно сделать так:

CloseifChange true
MaxTrades = например 20
MaxTradesBuy = 10
MaxTradesSell = 10


Автор - expforex
Дата добавления - 26.07.2010 в 12:39

expforexДата: Четверг, 29.07.2010, 21:21 | Сообщение # 74
Главный Администартор
Группа: Администраторы
Сообщений: 9037
Награды: 29
Статус: Offline


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

В Этой ветке обсуждаем стратегии для UTS



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

 
СообщениеВ Этой ветке обсуждаем стратегии для UTS

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

expforexДата: Четверг, 29.07.2010, 21:40 | Сообщение # 75
Главный Администартор
Группа: Администраторы
Сообщений: 9037
Награды: 29
Статус: Offline


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

Quote (SIP)
Владислав, хочу поэксперементировать с этим индикатором SEFC10. Как прописать сигнал Сел, Бай и завершения этих сигналов. Бай и Селл желательно определять по второму квадратику, которые рисуются на графике. Окончание рисуется в виде ножниц. Пробовал ******!=EMPTY_VALUE использовать по аналогии, получаются постоянные сигналы. Заранее благодарен.

Ножницы я так понял заканчивают не на все сигналы, т.е. они когда есть когда их нет.

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

EMPTY_VALUE
здесь выражение не подходит, во первых используются буферы: 4 для бай, и 5 для селл , и если они больше 0, то это сигнал . НО!!! Этот сигнал появляется не раньше чем через 6 баров, когда уже цена вроде бы как вернулась.

Мое резюме: Индикатор очень сильно запаздывает, к тому же и перерисовывается.

я прописал формулу так:

Code

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,14);
   double SellOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,14);       

if (BuyOpen>0)return(1);     
if (SellOpen>0)return(2);  

То что я выделил это номер бара на котором считается сигнал, т.е. Вы говорили когдла рисуется 2 квадратик, по идее если бы индикатор не перерисовывался, нужно было бы поставить 2, но я не знаю какой индекс бара тут ставить, я даже пробовал перевернуть сделки smile - неполучилось.

Судите сами.



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

 
Сообщение
Quote (SIP)
Владислав, хочу поэксперементировать с этим индикатором SEFC10. Как прописать сигнал Сел, Бай и завершения этих сигналов. Бай и Селл желательно определять по второму квадратику, которые рисуются на графике. Окончание рисуется в виде ножниц. Пробовал ******!=EMPTY_VALUE использовать по аналогии, получаются постоянные сигналы. Заранее благодарен.

Ножницы я так понял заканчивают не на все сигналы, т.е. они когда есть когда их нет.

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

EMPTY_VALUE
здесь выражение не подходит, во первых используются буферы: 4 для бай, и 5 для селл , и если они больше 0, то это сигнал . НО!!! Этот сигнал появляется не раньше чем через 6 баров, когда уже цена вроде бы как вернулась.

Мое резюме: Индикатор очень сильно запаздывает, к тому же и перерисовывается.

я прописал формулу так:

Code

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,14);
   double SellOpen=iCustom(Symbol(),0,"SEFC10",SR,SRZZ,MainRZZ,FP,SMF,DrawZZ,PriceConst,5,14);       

if (BuyOpen>0)return(1);     
if (SellOpen>0)return(2);  

То что я выделил это номер бара на котором считается сигнал, т.е. Вы говорили когдла рисуется 2 квадратик, по идее если бы индикатор не перерисовывался, нужно было бы поставить 2, но я не знаю какой индекс бара тут ставить, я даже пробовал перевернуть сделки smile - неполучилось.

Судите сами.


Автор - expforex
Дата добавления - 29.07.2010 в 21:40

SIPДата: Четверг, 29.07.2010, 21:49 | Сообщение # 76
Трейдер - Генерал-майор
Группа: Член клуба UTS
Сообщений: 449
Награды: 3
Статус: Offline


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

Quote (expforex)
Мое резюме: Индикатор очень сильно запаздывает, к тому же и перерисовывается.

Cпасибо за разъяснения и что уделили на это время. Естественно один этот индикатор для открытия сделок использовать рискованно, поэксперементирую совместить его с другими.

 
Сообщение
Quote (expforex)
Мое резюме: Индикатор очень сильно запаздывает, к тому же и перерисовывается.

Cпасибо за разъяснения и что уделили на это время. Естественно один этот индикатор для открытия сделок использовать рискованно, поэксперементирую совместить его с другими.

Автор - SIP
Дата добавления - 29.07.2010 в 21:49

expforexДата: Четверг, 29.07.2010, 22:42 | Сообщение # 77
Главный Администартор
Группа: Администраторы
Сообщений: 9037
Награды: 29
Статус: Offline


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

Незачто, это все занимает совсем немного времени, просто у меня столько проектов, что неуспеваю.....

Кстати версия UTS - обновлена исправлены качели и автолот



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

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

Кстати версия UTS - обновлена исправлены качели и автолот


Автор - expforex
Дата добавления - 29.07.2010 в 22:42

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


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

Владислав, посмотрите пож. эти индикаторы, правильно ли я указал для них сигнал. 2 на продажу и 3 на покупку для THV4 HA ? и для THV3 trend_MACD, я декомпилировал их и для последнего вывел переменные.

Code
//---------------------------------Стратегия № 17  
   if (NumberStrategy==17)
     {
  double THV3_trend1_17=iCustom(Symbol(),PERIOD_M30,"THV3 trend_MACD",15,2,4,9,1000,1,1);  // 1,  Green);
  double THV3_trend2_17=iCustom(Symbol(),PERIOD_M30,"THV3 trend_MACD",15,2,4,9,1000,0,1);  // 0,  FireBrick);

//-------------THV4HA----------
bool Indicator_On? = TRUE;

  double THV4HA_1_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,3,1);  // 1,  Green);
  double THV4HA_2_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,2,1);  // 0,  FireBrick);

double SSRC_1_17=iCustom(Symbol(),PERIOD_M5,"SSRC",21,21,6,6,0,0);
double SSRC_2_17=iCustom(Symbol(),PERIOD_M5,"SSRC",21,21,6,6,0,2);

  if (THV3_trend1_17==1 && THV4HA_1_17>0 && SSRC_1_17>0.9 && SSRC_2_17<0.9 ) return(1);
   
  if (THV3_trend2_17==1 && THV4HA_2_17>0 && SSRC_1_17<-0.9 && SSRC_2_17>-0.9) return(2);
}

Вот если что не правильно поправьте пожалста

Прикрепления: THV4_HA.rar(1Kb) · THV3_trend_MACD.rar(1Kb)
 
СообщениеВладислав, посмотрите пож. эти индикаторы, правильно ли я указал для них сигнал. 2 на продажу и 3 на покупку для THV4 HA ? и для THV3 trend_MACD, я декомпилировал их и для последнего вывел переменные.

Code
//---------------------------------Стратегия № 17  
   if (NumberStrategy==17)
     {
  double THV3_trend1_17=iCustom(Symbol(),PERIOD_M30,"THV3 trend_MACD",15,2,4,9,1000,1,1);  // 1,  Green);
  double THV3_trend2_17=iCustom(Symbol(),PERIOD_M30,"THV3 trend_MACD",15,2,4,9,1000,0,1);  // 0,  FireBrick);

//-------------THV4HA----------
bool Indicator_On? = TRUE;

  double THV4HA_1_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,3,1);  // 1,  Green);
  double THV4HA_2_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,2,1);  // 0,  FireBrick);

double SSRC_1_17=iCustom(Symbol(),PERIOD_M5,"SSRC",21,21,6,6,0,0);
double SSRC_2_17=iCustom(Symbol(),PERIOD_M5,"SSRC",21,21,6,6,0,2);

  if (THV3_trend1_17==1 && THV4HA_1_17>0 && SSRC_1_17>0.9 && SSRC_2_17<0.9 ) return(1);
   
  if (THV3_trend2_17==1 && THV4HA_2_17>0 && SSRC_1_17<-0.9 && SSRC_2_17>-0.9) return(2);
}

Вот если что не правильно поправьте пожалста


Автор - SIP
Дата добавления - 01.08.2010 в 20:34

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


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

Quote (SIP)
Владислав, посмотрите пож. эти индикаторы, правильно ли я указал для них сигнал. 2 на продажу и 3 на покупку для THV4 HA ? и для THV3 trend_MACD, я декомпилировал их и для последнего вывел переменные.

если Вы имеете ввиду вытащить показания - когда зеленый бар , когда красный, то нужно делать так:

double THV4HA_1_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,3,1); // CLOSE
double THV4HA_2_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,2,1); // OPEN

if (THV4HA_1_17>THV4HA_2_17) Тогда предыдущий бар зеленый,

if (THV4HA_1_17<THV4HA_2_17) Тогда предыдущий бар красный,



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

 
Сообщение
Quote (SIP)
Владислав, посмотрите пож. эти индикаторы, правильно ли я указал для них сигнал. 2 на продажу и 3 на покупку для THV4 HA ? и для THV3 trend_MACD, я декомпилировал их и для последнего вывел переменные.

если Вы имеете ввиду вытащить показания - когда зеленый бар , когда красный, то нужно делать так:

double THV4HA_1_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,3,1); // CLOSE
double THV4HA_2_17=iCustom(Symbol(),PERIOD_M30,"THV4 HA ",Indicator_On?,2,1); // OPEN

if (THV4HA_1_17>THV4HA_2_17) Тогда предыдущий бар зеленый,

if (THV4HA_1_17<THV4HA_2_17) Тогда предыдущий бар красный,


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

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


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

Стратегия на EMA:

Quote
В данной системе используются стандартные индикаторы входящие в комплект МТ4.
RSI 14, ЕМА 14 close, EMA 6 close, EMA 4 close .

Правила входа в рынок:

Buy
1. RSI пересекает на закрывшейся свече, уровень 50 снизу вверх. Это первый момент, далее проверяем машки.
2. ЕМА 4 должна быть выше ЕМА 6, а ЕМА 6 выше ЕМА 14.

Код:

Code
     if (NumberStrategy==1)
       
      {
        
   
  int RSIperiod=14;
  int EMA1period=14;
  int EMA1ma_shift=0;
  int EMA2period=6;
  int EMA2ma_shift=0;
  int EMA3period=4;
  int EMA3ma_shift=0;
  int applied_price=0;        

double RSI1=iRSI(Symbol(),0,RSIperiod,applied_price,1);
double RSI2=iRSI(Symbol(),0,RSIperiod,applied_price,2);
double RSI3=iRSI(Symbol(),0,RSIperiod,applied_price,3);

double EMA1_1= iMA(Symbol(),0,EMA1period,EMA1ma_shift,MODE_EMA,applied_price,1);
double EMA2_1= iMA(Symbol(),0,EMA2period,EMA2ma_shift,MODE_EMA,applied_price,1);
double EMA3_1= iMA(Symbol(),0,EMA3period,EMA3ma_shift,MODE_EMA,applied_price,1);

double EMA1_2= iMA(Symbol(),0,EMA1period,EMA1ma_shift,MODE_EMA,applied_price,2);
double EMA2_2= iMA(Symbol(),0,EMA2period,EMA2ma_shift,MODE_EMA,applied_price,2);
double EMA3_2= iMA(Symbol(),0,EMA3period,EMA3ma_shift,MODE_EMA,applied_price,2);

    if(   ((RSI2<50&&RSI1>50) ||(RSI3<50&&RSI2>50)) &&EMA3_1>EMA2_1 && EMA2_1>EMA1_1   ){Signal=1; }
    if(   ((RSI2>50&&RSI1<50) ||(RSI3>50&&RSI2<50)) &&EMA3_1<EMA2_1 && EMA2_1<EMA1_1   ){Signal=2; }
          
      
return(Signal);     
      
      }  
    
   
  

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

Из прибыльных графиков я выделил:

Все графики имеют имена с валютной парой - ТФ тестирования и стратегией тестирования.

Полный архив стейтов проверки этой стратегии в прикреплении.






Прикрепления: 0365002.gif(6Kb) · 8377622.gif(6Kb) · 5730961.gif(7Kb) · 7878770.gif(6Kb) · 4639025.gif(6Kb) · 3127430.gif(6Kb) · 9976434.gif(6Kb)


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

 
СообщениеСтратегия на EMA:

Quote
В данной системе используются стандартные индикаторы входящие в комплект МТ4.
RSI 14, ЕМА 14 close, EMA 6 close, EMA 4 close .

Правила входа в рынок:

Buy
1. RSI пересекает на закрывшейся свече, уровень 50 снизу вверх. Это первый момент, далее проверяем машки.
2. ЕМА 4 должна быть выше ЕМА 6, а ЕМА 6 выше ЕМА 14.

Код:

Code
     if (NumberStrategy==1)
       
      {
        
   
  int RSIperiod=14;
  int EMA1period=14;
  int EMA1ma_shift=0;
  int EMA2period=6;
  int EMA2ma_shift=0;
  int EMA3period=4;
  int EMA3ma_shift=0;
  int applied_price=0;        

double RSI1=iRSI(Symbol(),0,RSIperiod,applied_price,1);
double RSI2=iRSI(Symbol(),0,RSIperiod,applied_price,2);
double RSI3=iRSI(Symbol(),0,RSIperiod,applied_price,3);

double EMA1_1= iMA(Symbol(),0,EMA1period,EMA1ma_shift,MODE_EMA,applied_price,1);
double EMA2_1= iMA(Symbol(),0,EMA2period,EMA2ma_shift,MODE_EMA,applied_price,1);
double EMA3_1= iMA(Symbol(),0,EMA3period,EMA3ma_shift,MODE_EMA,applied_price,1);

double EMA1_2= iMA(Symbol(),0,EMA1period,EMA1ma_shift,MODE_EMA,applied_price,2);
double EMA2_2= iMA(Symbol(),0,EMA2period,EMA2ma_shift,MODE_EMA,applied_price,2);
double EMA3_2= iMA(Symbol(),0,EMA3period,EMA3ma_shift,MODE_EMA,applied_price,2);

    if(   ((RSI2<50&&RSI1>50) ||(RSI3<50&&RSI2>50)) &&EMA3_1>EMA2_1 && EMA2_1>EMA1_1   ){Signal=1; }
    if(   ((RSI2>50&&RSI1<50) ||(RSI3>50&&RSI2<50)) &&EMA3_1<EMA2_1 && EMA2_1<EMA1_1   ){Signal=2; }
          
      
return(Signal);     
      
      }  
    
   
  

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

Из прибыльных графиков я выделил:

Все графики имеют имена с валютной парой - ТФ тестирования и стратегией тестирования.

Полный архив стейтов проверки этой стратегии в прикреплении.







Автор - expforex
Дата добавления - 02.08.2010 в 09:03
Форум трейдеров » Разное » Архив советников » Шаблоны стратегий для UTS
Страница 8 из 24«126789102324»
Поиск:


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