0
Интересно зачем клавиши назначали
с клавишами можно протестировать работу советника целиком в тестере
avatar

AM2

  • 13 августа 2021, 17:23
+1
замените функцию:


//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
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)
               break;
            if(OrderProfit()<0)
              {
               lot=OrderLots()*KLot;
               break;
              }
           }
        }
     }
   if(lot>MaxLot)
      lot=Lots;
   return(lot);
  }
avatar

AM2

  • 12 августа 2021, 20:51
0
1 заказ в месяц трейдерам от 3-го уровня или с поручителем. см. правила
avatar

AM2

  • 12 августа 2021, 18:25
0
для мт4 делал такое. для мт5 с поручителем
avatar

AM2

  • 12 августа 2021, 17:47
0
расчет идет за указанное число баров
avatar

AM2

  • 11 августа 2021, 21:42
0
как у меня лучше идет :) 
по вашему так вот будет:


   double op1 = iCustom(NULL,0,IndName,1,Shift);
   double cl1 = iCustom(NULL,0,IndName,0,Shift);



avatar

AM2

  • 11 августа 2021, 20:47
0



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

input int width=2;
input int count=10;
input color upcolor=Blue;
input color dncolor=Red;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   ObjectsDeleteAll(0,OBJ_TREND);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
   ObjectsDeleteAll(0,OBJ_TREND);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutTrendLine(string name,datetime time1,double price1,datetime time2,double price2,color clr)
  {
   ObjectDelete(0,name);
   ObjectCreate(0,name,OBJ_TREND,0,time1,price1,time2,price2);
//--- установим цвет линии 
   ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- установим стиль отображения линии 
   ObjectSetInteger(0,name,OBJPROP_STYLE,0);
//--- установим толщину линии 
   ObjectSetInteger(0,name,OBJPROP_WIDTH,width);
//--- включим (true) или отключим (false) режим продолжения отображения линии вправо 
   ObjectSetInteger(0,name,OBJPROP_RAY_RIGHT,0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
      double hi=Close[iHighest(NULL,0,MODE_CLOSE,count,0)];
      double lo=Close[iLowest(NULL,0,MODE_CLOSE,count,0)];

      PutTrendLine("High",time[0],hi,time[count],hi,upcolor);
      PutTrendLine("Low",time[0],lo,time[count],lo,dncolor);

//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+

avatar

AM2

  • 11 августа 2021, 20:36
0
мне нужен хай и лоу на текущем времени и на истории за последние 9 свечей н4, по хаю и лоу на этой ломанной. Можно ли такое сделать?


сделать можно только после того, как я узнаю по какому принципу строится линия. опишите пожалуйста принцип построения линии
avatar

AM2

  • 11 августа 2021, 20:23
0
он ни как не считается


ломаная строится по определенным точкам, укажите по каким?
avatar

AM2

  • 11 августа 2021, 20:17
0
Спасибо, но нет(( из за чего не точность?


напишите каким образом считается линейный график и я неточность исправлю
avatar

AM2

  • 11 августа 2021, 20:09
0
вот сейчас попадает:




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

input int width=2;
input int count=10;
input color upcolor=Blue;
input color dncolor=Red;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   ObjectsDeleteAll(0,OBJ_TREND);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
   ObjectsDeleteAll(0,OBJ_TREND);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutTrendLine(string name,datetime time1,double price1,datetime time2,double price2,color clr)
  {
   ObjectDelete(0,name);
   ObjectCreate(0,name,OBJ_TREND,0,time1,price1,time2,price2);
//--- установим цвет линии 
   ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- установим стиль отображения линии 
   ObjectSetInteger(0,name,OBJPROP_STYLE,0);
//--- установим толщину линии 
   ObjectSetInteger(0,name,OBJPROP_WIDTH,width);
//--- включим (true) или отключим (false) режим продолжения отображения линии вправо 
   ObjectSetInteger(0,name,OBJPROP_RAY_RIGHT,0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
      double hi=High[iHighest(NULL,0,MODE_CLOSE,count,0)];
      double lo=Low[iLowest(NULL,0,MODE_CLOSE,count,0)];

      PutTrendLine("High",time[0],hi,time[count],hi,upcolor);
      PutTrendLine("Low",time[0],lo,time[count],lo,dncolor);

//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+

avatar

AM2

  • 11 августа 2021, 19:53
0
линейный он как строится? хай-лоу пополам или как?
avatar

AM2

  • 11 августа 2021, 19:46
+2
ровно 6 лет назад делал подобный :)  zakaz.opentraders.ru/26888.html
avatar

AM2

  • 11 августа 2021, 18:58
0
так примерно?




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

input int width=2;
input int count=10;
input color upcolor=Blue;
input color dncolor=Red;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   ObjectsDeleteAll(0,OBJ_TREND);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
   ObjectsDeleteAll(0,OBJ_TREND);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutTrendLine(string name,datetime time1,double price1,datetime time2,double price2,color clr)
  {
   ObjectDelete(0,name);
   ObjectCreate(0,name,OBJ_TREND,0,time1,price1,time2,price2);
//--- установим цвет линии 
   ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- установим стиль отображения линии 
   ObjectSetInteger(0,name,OBJPROP_STYLE,0);
//--- установим толщину линии 
   ObjectSetInteger(0,name,OBJPROP_WIDTH,width);
//--- включим (true) или отключим (false) режим продолжения отображения линии вправо 
   ObjectSetInteger(0,name,OBJPROP_RAY_RIGHT,0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
      double hi=High[iHighest(NULL,0,MODE_CLOSE,count,0)];
      double lo=Low[iLowest(NULL,0,MODE_CLOSE,count,0)];

      PutTrendLine("High",time[0],hi,time[count],hi,upcolor);
      PutTrendLine("Low",time[0],lo,time[count],lo,dncolor);

//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+

avatar

AM2

  • 11 августа 2021, 18:47
0
посмотрю сегодня
avatar

AM2

  • 10 августа 2021, 18:07
0
в МТ есть возможность работать с календарем новостей. эта приблуда не устроит? или нужно жестко по датам и времени
avatar

AM2

  • 10 августа 2021, 18:04