ruslan71
Руслан

 
Уровень 21

  Торгую в компаниях:


Группа "Стол заказов MQL"

Рейтинг 2087



РЕКОМЕНДУЮ



Сова
[*]

Здраствуйте Андрей напишите пожалуйста сову по индюку TDITDI Red Green.ex4 (15 Kb) TDI Red Green.mq4 (8 Kb) и двум машкам moving_averages.mq4 (5 Kb) moving_averages.ex4 (16 Kb)
в сове присутствуют
1 тейк
2 стоп
3 время торговли
4 увелечение лота после минусовой сделки
5 вход или на каждый сигнал или ждем пока достигнем тейка или стопа функция с вкл/выкл выбор пользователя
6 параметры машек
1-я машка период 10 метод Exponential применить к Cloce
2-я машка период 200 метод Exponential применить кCloce
Покупки
Цена должна быть выше 200 ema
TDI должен быть ниже уровня 68
Для входа в сделку ждем пересечения зеленой линии TDI с красной снизу вверх.
Дожидаемся нового пересечения ценой 10 ема снизу вверх
Продажи
Цена должна быть ниже 200 ema
TDI должен быть выше уровня 32
Для входа в сделку ждем пересечения зеленой линии TDI с красной сверху вниз.
Дожидаемся нового пересечения ценой 10 ема сверху вниз
  • 0
  • Просмотров: 2665
  • 11 июля 2017, 17:00
  • ruslan71
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
советник лок системс
Следующая запись в группе  
Доделать советник
09 июля 2017
13 июля 2017

Комментарии (10)

+
0
Сделал набросок. Смотрите что убавить что прибавить:




//+------------------------------------------------------------------+
//|                                                      Dynamic.mq4 |
//|                                              Copyright 2017, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lots         = 0.1;      // лот
extern double KLot         = 2;        // умножение лота
extern double MaxLot       = 5;        // максимальный лот
extern double StopLoss     = 500;      // лось
extern double TakeProfit   = 500;      // язь

extern int StartHour       = 0;        // час начала торговли
extern int StartMin        = 30;       // минута начала торговли
extern int EndHour         = 23;       // час окончания торговли
extern int EndMin          = 30;       // минута окончания торговли

extern int Shift           = 1;        // на каком баре сигнал индикатора
extern int Slip            = 30;       // реквот
extern int Trade           = 1;        // 2-открытие нескольких поз
extern int Level           = 32;       // уровень индикатора
extern int Magic           = 123;      // магик

extern string IndName="TDI Red Green";
extern string s="------------- Настройки TDI Red Green -------------";
extern int RSI_Period = 13;         //8-25
extern int RSI_Price = 0;           //0-6
extern int Volatility_Band = 34;    //20-40
extern int RSI_Price_Line=2;
extern int RSI_Price_Type=0;      //0-3
extern int Trade_Signal_Line=7;
extern int Trade_Signal_Type=0;   //0-3

datetime t=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutOrder(int type,double price)
  {
   int r=0;
   color clr=Green;
   double sl=0,tp=0;

   if(type==1 || type==3 || type==5)
     {
      clr=Red;
      if(StopLoss>0) sl=NormalizeDouble(price+StopLoss*Point,Digits);
      if(TakeProfit>0) tp=NormalizeDouble(price-TakeProfit*Point,Digits);
     }

   if(type==0 || type==2 || type==4)
     {
      clr=Blue;
      if(StopLoss>0) sl=NormalizeDouble(price-StopLoss*Point,Digits);
      if(TakeProfit>0) tp=NormalizeDouble(price+TakeProfit*Point,Digits);
     }

   r=OrderSend(NULL,type,Lot(),NormalizeDouble(price,Digits),Slip,sl,tp,"",Magic,0,clr);
   return;
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OpenPos()
  {
   double green1=iCustom(NULL,0,IndName,RSI_Period,RSI_Price,Volatility_Band,RSI_Price_Line,RSI_Price_Type,Trade_Signal_Line,Trade_Signal_Type,4,Shift);
   double red1=iCustom(NULL,0,IndName,RSI_Period,RSI_Price,Volatility_Band,RSI_Price_Line,RSI_Price_Type,Trade_Signal_Line,Trade_Signal_Type,5,Shift);
   double green2=iCustom(NULL,0,IndName,RSI_Period,RSI_Price,Volatility_Band,RSI_Price_Line,RSI_Price_Type,Trade_Signal_Line,Trade_Signal_Type,4,Shift+1);
   double red2=iCustom(NULL,0,IndName,RSI_Period,RSI_Price,Volatility_Band,RSI_Price_Line,RSI_Price_Type,Trade_Signal_Line,Trade_Signal_Type,5,Shift+1);
   double ma=iMA(NULL,0,200,0,1,0,Shift);
   
//--- sell 
   if(red1>Level && green1<red1 && green2>red2 && Bid<ma)
     {
      PutOrder(1,Bid);
     }
//--- buy conditions
   if(red1<100-Level && green1>red1 && green2<red2 && Bid>ma)
     {
      PutOrder(0,Ask);
     }
//---
  }
//+------------------------------------------------------------------+
int CountTrades()
  {
   int count=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()<2) count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double Lot()
  {
   double lot=Lots;

   for(int i=OrdersHistoryTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderProfit()<0)
              {
               lot=OrderLots()*KLot;
              }
            break;
           }
        }
     }
   if(lot>MaxLot)lot=Lots;
   return(lot);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool isTradeTimeInt(int hb=0,int mb=0,int he=0,int me=0)
  {
   datetime db, de;           // Время начала и окончания работы
   int      hc;               // Часы текущего времени торгового сервера

   db=StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+(string)hb+":"+(string)mb);
   de=StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+(string)he+":"+(string)me);
   hc=TimeHour(TimeCurrent());

   if(db>=de)
     {
      if(hc>=he) de+=24*60*60; else db-=24*60*60;
     }

   if(TimeCurrent()>=db && TimeCurrent()<=de) return(True);
   else return(False);
  }
//+------------------------------------------------------------------+
//| OnTick function                                                  |
//+------------------------------------------------------------------+
void OnTick()
  {
   double green=iCustom(NULL,0,IndName,4,Shift);
   double red=iCustom(NULL,0,IndName,5,Shift);

   if(t!=Time[0] && isTradeTimeInt(StartHour,StartMin,EndHour,EndMin))
     {
      if(Trade>1) OpenPos();
      if(CountTrades()<1 && Trade==1) OpenPos();
      t=Time[0];
     }

   Comment("\n Red: ",red,
           "\n Green: ",green);
//---
  }
//+------------------------------------------------------------------+


Редактирован: 11 июля 2017, 21:57
avatar

  34  AM2 Сообщений: 15879 - Андрей

  • 11 июля 2017, 17:44
+
0
avatar

  21  ruslan71 Автор Сообщений: 974 - Руслан

  • 12 июля 2017, 15:05
+
0
ок спасибо посмотрю отпишусь
avatar

  21  ruslan71 Автор Сообщений: 974 - Руслан

  • 12 июля 2017, 08:29
+
0
Уважаемый Андрей несколько вопросов почему при остановки тестора машки с параметром 10 не видно? и еще вопрос что означают уровни в настройках индюка TDI 8-25 0-6 20-40 ведь там только 68 50 и 32
avatar

  21  ruslan71 Автор Сообщений: 974 - Руслан

  • 12 июля 2017, 11:05
+
0
Добавил МА 10 и пункты: www.opentraders.ru/downloads/1632/

Дожидаемся нового пересечения ценой 10 ема сверху вниз
Дожидаемся нового пересечения ценой 10 ема снизу вверх


avatar

  34  AM2 Сообщений: 15879 - Андрей

  • 12 июля 2017, 17:51
+
0
спасибо и можно что бы по одной сделки на сигнал тобишь если пересекает цена ма 200 с верху вниз то на этот сигнал одна сделка следущий ждем другово пересечение или на продажу или на покупку
avatar

  21  ruslan71 Автор Сообщений: 974 - Руслан

  • 12 июля 2017, 20:46
+
0
Эти вещи тогда противоречить будут друг другу:

можно что бы по одной сделки на сигнал тобишь если пересекает цена ма 200 с верху вниз то на этот сигнал одна сделка следущий ждем другово пересечение или на продажу или на покупку


Дожидаемся нового пересечения ценой 10 ема сверху вниз
Дожидаемся нового пересечения ценой 10 ема снизу вверх
avatar

  34  AM2 Сообщений: 15879 - Андрей

  • 12 июля 2017, 21:33
+
0
понял не подумал
avatar

  21  ruslan71 Автор Сообщений: 974 - Руслан

  • 13 июля 2017, 09:16
+
0
Умножение не работает. И ещё бы добавить трал, безубыток, и профит. А то советнику нечем закрываться кроме тейк профита отдельно на каждый ордер. И ещё бы сделать закрытие обшим тейк профитом.
avatar

  15  cashyra Сообщений: 392 - Юра

  • 13 июля 2017, 16:59
+
0
Умножение не работает. И ещё бы добавить трал, безубыток, и профит. А то советнику нечем закрываться кроме тейк профита отдельно на каждый ордер. И ещё бы сделать закрытие обшим тейк профитом.


Делайте заказ доработаю.
avatar

  34  AM2 Сообщений: 15879 - Андрей

  • 13 июля 2017, 17:32

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий
Начать торговлю с Альпари