Помощь в кодировании - страница 715

 
TEAMTRADER:

Как я могу сделать стрелки на этом индикаторе большего размера?

TEAMTRADER

Используйте эту версию

 

Младен,

можно ли перенести эту функцию на mt5?

Мне нужно закрыть все открытые позиции в советнике.

например:

void cleanUp()
{

Alert("Clean Up="+Symbol());
for(int x=OrdersTotal()-1;x>=0;x--)
{
if(OrderSelect(x,SELECT_BY_POS,MODE_TRADES)==false) break;
if( OrderSymbol()==Symbol())//&& OrderMagicNumber()== MAGICMA)
{
if(OrderType()==OP_BUY)
{
if(OrderClose(OrderTicket(),OrderLots(),Bid,3,Red)==false)
{
Print(GetLastError());
}
}
if(OrderType()==OP_SELL)
{
if(OrderClose(OrderTicket(),OrderLots(),Ask,3,Red)==false)
{
Print(GetLastError());
}
}
if(OrderType()==OP_SELLSTOP || OrderType()==OP_BUYSTOP)
{

if(OrderDelete(OrderTicket())==false)
{
Print(GetLastError());
}
}
}

}

}

 

 

void OnTick()
{

if(Hour()==16 && Min()==55 && DayOfWeek()==5)
cleanUp();

else ExtExpert.OnTick(); 

}


  
 
baraozemo:
Проверю, что можно сделать (но только когда рынок откроется - в целях тестирования)
 

baraozemo:

Я произвел этот код в mql5, должен ли он работать?

include <Trade\Trade.mqh>
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+


void 
cleanUP()
{
int ord_total=OrdersTotal();
   if(ord_total > 0)
     {
      for(int i=ord_total-1;i>=0;i--)
        {
         ulong ticket=OrderGetTicket(i);
         if(OrderSelect(ticket) && OrderGetString(ORDER_SYMBOL)==Symbol() && PositionGetInteger(POSITION_MAGIC)==Expert_MagicNumber)
           {
            CTrade *trade=new CTrade();
            trade.OrderDelete(ticket);
            delete trade;
           }
        }
      }
}


Младен,

можно ли перенести эту функцию на mt5?

Мне нужно закрыть все открытые позиции в советнике.

например:

void cleanUp()
{

Alert("Clean Up="+Symbol());
for(int x=OrdersTotal()-1;x>=0;x--)
{
if(OrderSelect(x,SELECT_BY_POS,MODE_TRADES)==false) break;
if( OrderSymbol()==Symbol())//&& OrderMagicNumber()== MAGICMA)
{
if(OrderType()==OP_BUY)
{
if(OrderClose(OrderTicket(),OrderLots(),Bid,3,Red)==false)
{
Print(GetLastError());
}
}
if(OrderType()==OP_SELL)
{
if(OrderClose(OrderTicket(),OrderLots(),Ask,3,Red)==false)
{
Print(GetLastError());
}
}
if(OrderType()==OP_SELLSTOP || OrderType()==OP_BUYSTOP)
{

if(OrderDelete(OrderTicket())==false)
{
Print(GetLastError());
}
}
}

}

}

 

 

void OnTick()
{

if(Hour()==16 && Min()==55 && DayOfWeek()==5)
cleanUp();

else ExtExpert.OnTick(); 

}


  
 

МР МЛАДЕН:

не могли бы вы добавить это в таблицу

в отношении

Файлы:
ADX MTF.mq4  17 kb
 
mladen:
Проверит, что можно сделать (но только когда рынок откроется - в целях тестирования)

Коды Mt5 для проверки функциональности


//#include <Trade\Trade.mqh>
void CloseOpenedOrdersTest1()
{
int ord_total=OrdersTotal();
   if(ord_total > 0)
     {
      for(int i=ord_total-1;i>=0;i--)
        {
         ulong ticket=OrderGetTicket(i);
         if(OrderSelect(ticket) && OrderGetString(ORDER_SYMBOL)==Symbol() && PositionGetInteger(POSITION_MAGIC)==Expert_MagicNumber)
           {
            CTrade *trade=new CTrade();
            trade.OrderDelete(ticket);
            delete trade;
           }
        }
      }
     }

//#include <Trade\Trade.mqh>
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void CloseOpenedOrdersTest2()
  {
MqlTradeRequest req = {0};
   MqlTradeResult  res = {0};

   int orders = OrdersTotal();
   req.action = TRADE_ACTION_REMOVE;

   for(int i = orders - 1; i >= 0 ;i--)
     {
     req.order  = OrderGetTicket (i);
      if (OrderGetString(ORDER_SYMBOL) == _Symbol)
        {
        ResetLastError();
        if(!OrderSend(req,res))
          {
           Print("Fail to delete ticket ",req.order  ,": Error ",GetLastError(),", retcode = ",res.retcode);
          }
        }
     }
   }
 

Мистер Младен:

почему, когда я меняю это число, на графике ничего не происходит?

с уважением

 
bilbao:

Мистер Младен:

почему, когда я меняю это число, на графике ничего не происходит?

с уважением

Потому что это значение используется только в том случае, если параметр "width" опущен.

Проверьте вызов ButtonCreate() и посмотрите, какое значение передается при вызове функции

 
mladen:

Потому что это значение используется только в том случае, если параметр "width" опущен

Проверьте вызов ButtonCreate() и посмотрите, какое значение передается при вызове функции

ПОСТОЯННО

 

Re: Вопрос относительно тестера стратегий MT4 и mtf

Я использую один из индикаторов MACD mtf Младена в своем советнике (использую iCustom для его вызова). Это exe-файл. Советник работает на 5 минутах, но индикатор MACD установлен на 15 минут. Я знаю, что он не будет рисоваться в страт-тестере. Есть ли способ отключить рисование индикатора MACD mtf в страт-тестере, чтобы все остальные индикаторы рисовались правильно? Спасибо за любую помощь.