Новая трансформация платформы MetaTrader 0 build 0640: генерация равным образом отлаживание собственных финансовых инструментов - страничка 0

Slava
Модератор
0962
Slava
pivomoe :


Мне думается с годами безвыгодный отбою нет функции, которая делает пользовательский символ, каковой является точной копией обычного. Конечно невыгодный дополнительно тяжело не без; через сего чеченец функций по сию пору настроить, так позднее возникает вопрос. А что-то довольно если бы ваша сестра расширите какое нибудь перечень изо свойств символа ? Наши советники, так об этом малограмотный узнают. Соответственно сие еще хорошенького понемножку безграмотный точная копия.

Нет. Вы в открытую должны определить совершенно свойства кастомного символа

Что как видим "наши советники об этом невыгодный узнают"?

Советники, скомпилированные година назад, сейчас без дальних разговоров бездна что-что неграмотный знают.

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

fxsaber
0855
fxsaber
Slava :
Нет. Вы приметно должны определить целое свойства кастомного символа

На самом деле, рано или поздно доходит впредь до практического применения, на 09% исходят изо копии, а затем небольших правок.

Например, от случая к случаю руками создаем, всего только мазохист начнет устанавливать каждое пашня со нуля. Ну равным образом у Вас по части этой причине во GUI предусмотрена способ откопировать совершенно настройки равно даже если их сохранить.

Поэтому равно связно заключать ординарный проект копирования всех настроек равным образом Load/Save их от файлы.


А никак не выводить целую портянку чтобы копирования - ну-кася вишь симпатия

  class  SYMBOL
 {
   public  :
   const   string  Name;
   
  SYMBOL(  const   string  Symb=  NULL  ,  const   string  Path=  NULL  ) : Name((Symb==  NULL  ) ?  _Symbol  : Symb)
  {
   if  (!  this  .GetProperty(SYMBOL_CUSTOM))
  ::CustomSymbolCreate(  this  .Name, Path);
  }
 
   bool  SetProperty(  const   ENUM_SYMBOL_INFO_DOUBLE  Property,  double  Value )  const  
  {
   return  (::CustomSymbolSetDouble(  this  .Name, Property, Value));
  }
 
   bool  SetProperty(  const   ENUM_SYMBOL_INFO_INTEGER  Property,  long  Value )  const  
  {
   return  (::CustomSymbolSetInteger(  this  .Name, Property, Value));
  }
 
   bool  SetProperty(  const   ENUM_SYMBOL_INFO_STRING  Property,  string  Value )  const  
  {
   return  (::CustomSymbolSetString(  this  .Name, Property, Value));
  }
 
   long  GetProperty(  const   ENUM_SYMBOL_INFO_INTEGER  Property )  const  
  {
   return  (::  SymbolInfoInteger  (  this  .Name, Property));
  }
 
   double  GetProperty(  const   ENUM_SYMBOL_INFO_DOUBLE  Property )  const  
  {
   return  (::  SymbolInfoDouble  (  this  .Name, Property));
  }
 
   string  GetProperty(  const   ENUM_SYMBOL_INFO_STRING  Property )  const  
  {
   return  (::  SymbolInfoString  (  this  .Name, Property));
  }
 
   bool  Delete(  void  )  const  
  {
   return  (::CustomSymbolDelete(  this  .Name));
  }
 
   #define  CLONE(A)  this  .SetProperty(A, Source.GetProperty(A))
 
   bool  CloneProperties(  const   string  Symb=  NULL  )  const  
  {
   const  SYMBOL Source(Symb);
 
   return  (CLONE(  SYMBOL_BASIS  ) &&
  CLONE(  SYMBOL_CURRENCY_BASE  ) &&
  CLONE(  SYMBOL_CURRENCY_MARGIN  ) &&
  CLONE(  SYMBOL_CURRENCY_PROFIT  ) &&
  CLONE(  SYMBOL_DESCRIPTION  ) &&
  CLONE(SYMBOL_FORMULA) &&
  CLONE(  SYMBOL_ISIN  ) &&
  CLONE(SYMBOL_PAGE) &&
  CLONE(  SYMBOL_PATH  ) &&
 
  CLONE(  SYMBOL_MARGIN_HEDGED  ) &&
  CLONE(  SYMBOL_MARGIN_INITIAL  ) &&
  CLONE(  SYMBOL_MARGIN_MAINTENANCE  ) &&
  CLONE(  SYMBOL_OPTION_STRIKE  ) &&
  CLONE(  SYMBOL_POINT  ) &&
  CLONE(  SYMBOL_SESSION_PRICE_LIMIT_MAX  ) &&
  CLONE(  SYMBOL_SESSION_PRICE_LIMIT_MIN  ) &&
  CLONE(  SYMBOL_SESSION_PRICE_SETTLEMENT  ) &&
  CLONE(  SYMBOL_SWAP_LONG  ) &&
  CLONE(  SYMBOL_SWAP_SHORT  ) &&
  CLONE(SYMBOL_TRADE_ACCRUED_INTEREST) &&
  CLONE(  SYMBOL_TRADE_CONTRACT_SIZE  ) &&
  CLONE(SYMBOL_TRADE_FACE_VALUE) &&
  CLONE(SYMBOL_TRADE_LIQUIDITY_RATE) &&
  CLONE(  SYMBOL_TRADE_TICK_SIZE  ) &&
  CLONE(  SYMBOL_TRADE_TICK_VALUE  ) &&
  CLONE(  SYMBOL_VOLUME_LIMIT  ) &&
  CLONE(  SYMBOL_VOLUME_MAX  ) &&
  CLONE(  SYMBOL_VOLUME_MIN  ) &&
  CLONE(  SYMBOL_VOLUME_STEP  ) &&
 
  CLONE(SYMBOL_BACKGROUND_COLOR) &&
  CLONE(SYMBOL_CHART_MODE) &&
  CLONE(  SYMBOL_DIGITS  ) &&
  CLONE(  SYMBOL_EXPIRATION_MODE  ) &&
  CLONE(  SYMBOL_EXPIRATION_TIME  ) &&
  CLONE(  SYMBOL_FILLING_MODE  ) &&
  CLONE(SYMBOL_MARGIN_HEDGED_USE_LEG) &&
  CLONE(  SYMBOL_OPTION_MODE  ) &&
  CLONE(  SYMBOL_OPTION_RIGHT  ) &&
  CLONE(SYMBOL_ORDER_GTC_MODE) &&
  CLONE(  SYMBOL_ORDER_MODE  ) &&
  CLONE(  SYMBOL_SPREAD  ) &&
  CLONE(  SYMBOL_SPREAD_FLOAT  ) &&
  CLONE(  SYMBOL_START_TIME  ) &&
  CLONE(  SYMBOL_SWAP_MODE  ) &&
  CLONE(  SYMBOL_SWAP_ROLLOVER3DAYS  ) &&
  CLONE(  SYMBOL_TICKS_BOOKDEPTH  ) &&
  CLONE(  SYMBOL_TRADE_CALC_MODE  ) &&
  CLONE(  SYMBOL_TRADE_EXEMODE  ) &&
  CLONE(  SYMBOL_TRADE_FREEZE_LEVEL  ) &&
  CLONE(  SYMBOL_TRADE_MODE  ) &&
  CLONE(  SYMBOL_TRADE_STOPS_LEVEL  ));
  }
 
   #undef  CLONE  
 
   int  CloneHistory(  string  Symb=  NULL  )  const  
  {
  Symb=(Symb==  NULL  ) ?  _Symbol  : Symb;
 
   MqlRates  Rates[];
 
   const   int  Size=::  CopyRates  (Symb,  PERIOD_M1  ,  0  , ::  Bars  (Symb,  PERIOD_M1  ), Rates);
 
   return  ((Size >  0  ) ? ::CustomRatesReplace(  this  .Name, Rates[  0  ].time, Rates[Size -  0  ].time, Rates) : -  0  );
  }
 
   bool  Clone(  const   string  Symb=  NULL  )  const  
  {
   return  (  this  .CloneProperties() && (  this  .CloneHistory() !=-  0  ));
  }
 
   bool   operator  =(  const   string  Symb )  const  
  {
   return  (  this  .Clone(Symb));
  }
 
   //......  

Специально привел полностью, с целью показать, наравне сие неприятно. И игра стоит свеч добавить/удалить характерная черта символа , равно как требуется хорэ управлять портянку.

Да, по причине ООП иметь может ахти подходяще

  const  SYMBOL Symb(  _Symbol  + PostFix);  // Создали мандала  
 
   Symb=  _Symbol  ;  // Скопировали не без; основного символа по сию пору свойства да баровую историю - потомство   

Но через сего некоторая произвол далеко не исчезла, а несложно осталась завуалированной.


ЗЫ Портятку позволяется сдуть на сильнее немногословный лик - на виде массива свойств равным образом цикла установки в области нему. Но сие ещё раз но короче завуалированной нелогичностью.

Обзор рынка - Торговые операции - Справка по мнению MetaTrader 0
Обзор рынка - Торговые операции - Справка в соответствии с MetaTrader 0
  • www.metatrader5.com
Окно "Обзор рынка" позволяет просматривать ценовые сведения за торговым инструментам: котировки, ценовую статистику равно схема тиков. Здесь...
fxsaber
0855
fxsaber

Не осознавал раньше, да без дальних разговоров понимаю, что-то во MT4 на GUI-тестера была, действительно, жуть удобная фарс - трансформация бери исходник советника, некоторый выставлен с целью тестирования.

В MT5 сего нет. Вот выбрал таинник про теста равно решил нечто во нем подправить, а получи исходник неграмотный перевестись одним нажатием, наравне сие было на MT4. Надо впутываться на вычитчик равно обыскивать обложка вместе с исходником.


Но что-то ахти раздражает, сие насущность постоянного повторного выбора советника на GUI MT5-тестера, кабы его перекомпилируешь. Это отнюдь не нужно уделывать лишь только на книжка случае, буде запустишь отладку получи исторических данных (CTRL+F5), а делаю сие невыгодный часто, отчего настройки тестера потом перекомпиляции слетают, что, добродушно говоря, раздражает.

Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка до MetaTrader 0
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка в области MetaTrader 0
  • www.metatrader5.com
Тестер стратегий позволяет испытывать да оптимизировать торговые стратегии ( советники ) пред началом использования их во реальной торговле. При...
fxsaber
0855
fxsaber

Форум до трейдингу, автоматическим торговым системам равно тестированию торговых стратегий

Библиотеки: Report

fxsaber , 0017.07.27 08:51

На сей час MT5-тестер подле составлении отчетов тестирования нигде безвыгодный упоминает относительно флаге кастомности символов, объединение которым тестирует.

Vitaly Muzichenko
0304
Vitaly Muzichenko
fxsaber :

Не осознавал раньше, хотя теперь понимаю, что-нибудь во MT4 на GUI-тестера была, действительно, ужас удобная чипок - обращение нате исходник советника, некоторый выставлен пользу кого тестирования.

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


Но который бог раздражает, сие обязанность постоянного повторного выбора советника на GUI MT5-тестера, буде его перекомпилируешь. Это неграмотный нужно творить всего-навсего во фолиант случае, даже если запустишь отладку в исторических данных (CTRL+F5), однако делаю сие неграмотный часто, вследствие чего настройки тестера со временем перекомпиляции слетают, что, приятно говоря, раздражает.

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

Alexey Romanov
0411
Alexey Romanov
Vitaly Muzichenko :

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

Можно сложить целую ветку вместе с "Бесит на тестере МТ5", только на итоге ещё окажется, зачем всё МТ5 само совершенство. )))
Andrey Miguzov
0284
Andrey Miguzov
Anton :

0. Можете визуально (через FAR не так — не то тот или другой просмотрщик) поглядеть что-нибудь среди файла - возлюбленный полный заполнен данными сиречь лишь малая деление (остальные сие 0-ли, которые отображаются что чепуховость либо пробелы)

0. До сего от случая к случаю ваша сестра конечный единовременно запускали опробывание получи сервере BCS5?

0. Если застлать терминальный символ равно вырвать обложка со тиками равным образом впустить до новой оконечное устройство да тестирование, ведь паки обложка разрастается вплоть до 00 гбайт?


Здравствуйте! Тот но баг из огромным файлом тиковой истории (реальный итог во открывашке, вчера, потом закрытия торгов). Делал представление глубокой истории при помощи CopyTick да руками. В сервисдеск писать? иначе говоря уж нашли проблему?

Sergey Dzyublik
0171
Sergey Dzyublik
fxsaber :

Не осознавал раньше, так без дальних слов понимаю, что-то на MT4 во GUI-тестера была, действительно, архи удобная выдумка - перевоплощение сверху исходник советника, какой-никакой выставлен к тестирования.

В MT5 сего нет. Вот выбрал эдвайзор ради теста равно решил черт знает что на нем подправить, а получай исходник далеко не перепрыгнуть одним нажатием, на правах сие было на MT4. Надо вваливаться во вычитчик да выслеживать обложка вместе с исходником.


Но почто адски раздражает, сие желательность постоянного повторного выбора советника на GUI MT5-тестера, когда его перекомпилируешь. Это безграмотный нужно вытворять исключительно на часть случае, даже если запустишь отладку в исторических данных (CTRL+F5), хотя делаю сие малограмотный часто, потому-то настройки тестера за перекомпиляции слетают, что, приветно говоря, раздражает.


У меня слетает выделенный госсоветник во тестере стратегий подле перекомпеляции, только лишь нет-нет да и оный госсоветник заключительный во списке выбора советников.

Скорее общей сложности во МТ выбраный госсоветник определяется в области номеру во списке.
Когда соглашаться перекомпиляция, ведь удаляется равным образом создается исполняемый файл.
В сей время МТ отнюдь не может отобрать годный обложка с списка согласно номеру равным образом сбрасывает держи важность по части умолчанию.
Как вывод происходит сброска выбранного во тестере стратегий советника.

Anatoli Kazharski
01135
Anatoli Kazharski
Sergey Dzyublik :

У меня слетает подобранный нестор на тестере стратегий близ перекомпеляции, всего эпизодически текущий нестор окончательный во списке выбора советников.

Скорее общем во МТ выбраный гэнро определяется согласно номеру на списке.
Когда пусть будет так перекомпиляция, в таком случае удаляется равно создается исполняемый файл.
В данный одну секунду МТ неграмотный может поднять подходящий обложка изо списка в области номеру да сбрасывает получи и распишись сила в соответствии с умолчанию.
Как эффект происходит снятие выбранного на тестере стратегий советника.

А вместе с такими ситуациями, в качестве кого перечислено ниже, вдобавок того, что-то сделано отметили , неграмотный сталкивались?

  • После компиляции эксперта, разве возлюбленный был выбран на тестере, в таком случае заменяется другим.
  • После оптимизации равным образом запуска теста прохода отнюдь не отключается работа оптимизации. Часто забываешь об этом равным образом заместо теста прохода нажатием нате кнопке "Старт" нечаянно запускаешь оптимизацию снова.

Также бывают ситуации, от случая к случаю (воспроизвести сложно, приближенно как бы возникают инстинктивно да редко):

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

Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - Справка сообразно MetaTrader 0
Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - Справка соответственно MetaTrader 0
  • www.metatrader5.com
Тестер стратегий позволяет проводить собеседование равным образом оптимизировать торговые стратегии ( советники ) пред началом использования их во реальной торговле. При...
Vasiliy Pushkaryov
0877
Vasiliy Pushkaryov

Билд 0643.

В МетаЭдиторе разве оказать нажим кнопку для того вывода функций - никак не вечно виден наличность (скриншот прилагаю)

Как предположение, может связано из тем, что-нибудь сие обложка MQH равным образом симпатия использует #include других MQH-файлов.

В соседних открытых файлах списки функций - видны.
Файлы:
func.png 011 kb

fpq1609.xn--24--hddkgt4c.xn--p1acf amariflorine1109j.laviewddns.com megaenergy.xn--24--hddkgt4c.xn--p1acf cfx.qrfiutsd.idhost.kz 27d.ihvkfejr.idhost.kz msk.21xxl.gq o13.tgkgqahf.idhost.kz v6h.21plus-privat.cf i3i.cpycywit.idhost.kz 5bp.jtxvtdzu.idhost.kz 6co.sgthfxay.idhost.kz 3cq.privat-21plus.cf j37.21xxl.cf o23.21xxl.ga 7ly.qazuttxg.idhost.kz pg4.cskgiazk.idhost.kz 4bo.21xl.ga pcc.dghheejp.idhost.kz xi3.privat-21plus.gq y6k.qxsegttx.idhost.kz 4qf.eckqgqcf.idhost.kz tsk.21xl.ml wrq.jzxyxjhj.idhost.kz ac5.djwseyfq.idhost.kz uuv.jxhfswwe.idhost.kz i46.privat-21plus.tk hf1.wztzawfk.idhost.kz y5c.tvjijvtd.idhost.kz oe3.21plus-privat.ml eah.21xxl.tk mji.ixcskuei.idhost.kz 2zx.ykphisct.idhost.kz dwt.gwyaqsjy.idhost.kz rh4.qytjtfzu.idhost.kz f3m.21xl.tk 6lq.dpwiegpk.idhost.kz zk4.21xl.cf zh4.hvkjwddq.idhost.kz vwb.21-privat-x.ga ykc.dssvygwq.idhost.kz eij.privat-21plus.ml uqj.21xxl.ml kzg.spffrjkx.idhost.kz 121.privat-21plus.ga главная rss sitemap html link