В режиме визуализации не отрисовываются отложенные ордера - страница 2

 
xxz:


...

о‌тложенные ордера не отображаются...


Ложь и провокация :). Все отложенные ордера отображаются в тестере в визуальном режиме. Пример:

//+------------------------------------------------------------------+
//|                                           BuyLimit SellLimit.mq5 |
//|                              Copyright © 2016, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2016, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>  
CTrade         m_trade;                      // trading object
CSymbolInfo    m_symbol;                     // symbol info object
//--- input parameters
input ushort   InpIndent=30;         // Indent (in pips)
//---
double         ExtIndent;
bool           FirstStart=true;              // true - first start
ENUM_ACCOUNT_MARGIN_MODE m_margin_mode;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   SetMarginMode();
   if(!IsHedging())
     {
      Print("Hedging only!");
      return(INIT_FAILED);
     }

   m_symbol.Name(Symbol());                  // sets symbol name
   m_symbol.Refresh();                       // refreshes the symbol data
   if(!RefreshRates())
     {
      Print("Error RefreshRates. Bid=",DoubleToString(m_symbol.Bid(),Digits()),
            ", Ask=",DoubleToString(m_symbol.Ask(),Digits()));
      return(INIT_FAILED);
     }
//--- tuning for 3 or 5 digits
   int digits_adjust=1;
   if(m_symbol.Digits()==3 || m_symbol.Digits()==5)
      digits_adjust=10;

   ExtIndent=InpIndent  *digits_adjust*m_symbol.Point();

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

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(FirstStart)
     {
      if(!RefreshRates())
         return;

      m_trade.BuyLimit(m_symbol.LotsMin(),m_symbol.Ask()-ExtIndent);

      m_trade.SellLimit(m_symbol.LotsMin(),m_symbol.Bid()+ExtIndent);

      FirstStart=false;
     }
  }
//+------------------------------------------------------------------+
//| Refreshes the symbol quotes data                                 |
//+------------------------------------------------------------------+
bool RefreshRates()
  {
//--- refresh rates
   if(!m_symbol.RefreshRates())
      return(false);
//--- protection against the return value of "zero"
   if(m_symbol.Ask()==0 || m_symbol.Bid()==0)
      return(false);
//---
   return(true);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void SetMarginMode(void)
  {
   m_margin_mode=(ENUM_ACCOUNT_MARGIN_MODE)AccountInfoInteger(ACCOUNT_MARGIN_MODE);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsHedging(void)
  {
   return(m_margin_mode==ACCOUNT_MARGIN_MODE_RETAIL_HEDGING);
  }
//+------------------------------------------------------------------+


‌Рекомендации - скорость прокрутки ставьте не максимальную, а максимальную минус один или два шага. Также следите за заданным таймфреймом, так как на M1 30 старорежимных пунктов могут запросто уйти за экран и пока Вы не уменьшите масштаб - Вы естественно не увидите линий отложенных ордеров.

Файлы:
 
Vladimir Karputov:


Ложь и провокация :). Все отложенные ордера отображаются в тестере в визуальном режиме. Пример:

//+------------------------------------------------------------------+
//|                                           BuyLimit SellLimit.mq5 |
//|                              Copyright © 2016, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2016, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
#include <Trade\Trade.mqh>
#include <Trade\SymbolInfo.mqh>  
CTrade         m_trade;                      // trading object
CSymbolInfo    m_symbol;                     // symbol info object
//--- input parameters
input ushort   InpIndent=30;         // Indent (in pips)
//---
double         ExtIndent;
bool           FirstStart=true;              // true - first start
ENUM_ACCOUNT_MARGIN_MODE m_margin_mode;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   SetMarginMode();
   if(!IsHedging())
     {
      Print("Hedging only!");
      return(INIT_FAILED);
     }

   m_symbol.Name(Symbol());                  // sets symbol name
   m_symbol.Refresh();                       // refreshes the symbol data
   if(!RefreshRates())
     {
      Print("Error RefreshRates. Bid=",DoubleToString(m_symbol.Bid(),Digits()),
            ", Ask=",DoubleToString(m_symbol.Ask(),Digits()));
      return(INIT_FAILED);
     }
//--- tuning for 3 or 5 digits
   int digits_adjust=1;
   if(m_symbol.Digits()==3 || m_symbol.Digits()==5)
      digits_adjust=10;

   ExtIndent=InpIndent  *digits_adjust*m_symbol.Point();

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

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(FirstStart)
     {
      if(!RefreshRates())
         return;

      m_trade.BuyLimit(m_symbol.LotsMin(),m_symbol.Ask()-ExtIndent);

      m_trade.SellLimit(m_symbol.LotsMin(),m_symbol.Bid()+ExtIndent);

      FirstStart=false;
     }
  }
//+------------------------------------------------------------------+
//| Refreshes the symbol quotes data                                 |
//+------------------------------------------------------------------+
bool RefreshRates()
  {
//--- refresh rates
   if(!m_symbol.RefreshRates())
      return(false);
//--- protection against the return value of "zero"
   if(m_symbol.Ask()==0 || m_symbol.Bid()==0)
      return(false);
//---
   return(true);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void SetMarginMode(void)
  {
   m_margin_mode=(ENUM_ACCOUNT_MARGIN_MODE)AccountInfoInteger(ACCOUNT_MARGIN_MODE);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsHedging(void)
  {
   return(m_margin_mode==ACCOUNT_MARGIN_MODE_RETAIL_HEDGING);
  }
//+------------------------------------------------------------------+


‌Рекомендации - скорость прокрутки ставьте не максимальную, а максимальную минус один или два шага. Также следите за заданным таймфреймом, так как на M1 30 старорежимных пунктов могут запросто уйти за экран и пока Вы не уменьшите масштаб - Вы естественно не увидите линий отложенных ордеров.


Нет не отображаются !!!!

О‌тображается только момент срабатывания и закрытия,

а вот место где он выставлен ни как не обозначено!

а‌ если он ещё и в процессе удалён то от него и следа на графике не остаётся.

в‌ыставил два ордера в 12 часов один сработал  через сутки другой удалился

н‌а графике будет начало которое произошло через сутки...

а‌ тебе визуально надо видеть весь процесс от начала до конца иначе зачем вообще визуализация!

 
xxz:


Нет не отображаются !!!!

О‌тображается только момент срабатывания и закрытия,

а вот место где он выставлен ни как не обозначено!

а‌ если он ещё и в процессе удалён то от него и следа на графике не остаётся.

в‌ыставил два ордера в 12 часов один сработал  через сутки другой удалился

н‌а графике будет начало которое произошло через сутки...

а‌ тебе визуально надо видеть весь процесс от начала до конца иначе зачем вообще визуализация!


Вместо того, чтобы спорить, возьмите и запустите пример. Ну нельзя же быть настолько упёртым и при этом даже не запустить пример :). Через 20 минут готовьте скайп - буду учить уму-разуму по работе с тестером...
 
Vladimir Karputov:

Вместо того, чтобы спорить, возьмите и запустите пример. Ну нельзя же быть настолько упёртым и при этом даже не запустить пример :). Через 20 минут готовьте скайп - буду учить уму-разуму по работе с тестером...


Я сразу прогнал!

о‌рдер был выставлен в 00:00 а сработал только в 10:01  и там появилась стрелка открытия позиции!

п‌ромежуток от 00:00 до 10:01 ни каким образом не обозначен!

вот как должно отображаться

видно где были выставлены ордера, видно как один сработал, закрылся , отложка вторая удалилась!

(‌видно как за 40 минут до этого почти не сработал)

а в МТ5 будет только один участочек сработал ордер и закрылся вот и всё... 

 

Я даже видео снял, где видно что отложенные ордера BuyLimit SellLimit в тестере стратегий в режиме визуализации ОТОБРАЖАЮТСЯ:

 
Vladimir Karputov:

Я даже видео снял, где видно что отложенные ордера BuyLimit SellLimit в тестере стратегий в режиме визуализации ОТОБРАЖАЮТСЯ:


Это отображение торгового уровня!

п‌осле завершения тестирования эти уровни исчезнут как карета у золушки и останется только место где ордер сработал !

в‌от прогон вашего советника с 0 до 10  ничего нет

а‌ второй ордер вообще через 21 день сработал а где видно что он свою тяжёлую вахту начал нести в 00 часов 9 ноября?

 

 

Ведь для анализа и понимания визуально надо видеть момент принятия решения на выставление ордеров, а не только их последствия 

т‌ем более если уже прошёл 21 день)))

 
xxz:

Ведь для анализа и понимания визуально надо видеть момент принятия решения на выставление ордеров, а не только их последствия 

т‌ем более если уже прошёл 21 день)))


Любые Ваши пожелания Вы можете воплотить при помощи MQL5. Также нужно помнить, что есть вкладка "Журнал", где подробным образом логируются все торговые операции - если Вам нужно знать, что происходило - загляните в Журнал и прочтите.
 
Vladimir Karputov:

Любые Ваши пожелания Вы можете воплотить при помощи MQL5. Также нужно помнить, что есть вкладка "Журнал", где подробным образом логируются все торговые операции - если Вам нужно знать, что происходило - загляните в Журнал и прочтите.


Лучше один раз увидеть чем 100 раз прочитать.

Визуальное восприятие на 99,99% даёт фору иным способам восприятия.

 
xxz:


Лучше один раз увидеть чем 100 раз прочитать.

Визуальное восприятие на 99,99% даёт фору иным способам восприятия.


MQL5 в помощь. Рисуйте, творите, создавайте :). Кто Вам мешает? Создайте свой класс и применяйте его в тех советниках, где Вы хотите визуализацию.