Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2426

 
Подскажите, пожалуйста,

оптимизатор МТ5 очень любит рисовать дугу при высоком факторе восстановления: вначале идёт резкий рост, а потом 80% всего остального баланса - флетит. 

Этот косяк можно исправить, если оптимизировать по R-квадрат или что-то подобное. 


Как реализовать в коде, чтобы на первые строчки выставлялись сеты где максимально роооовный рост баланса?
 
Ivan Butko #:
Подскажите, пожалуйста,

оптимизатор МТ5 очень любит рисовать дугу при высоком факторе восстановления: вначале идёт резкий рост, а потом 80% всего остального баланса - флетит. 

Этот косяк можно исправить, если оптимизировать по R-квадрат или что-то подобное. 


Как реализовать в коде, чтобы на первые строчки выставлялись сеты где максимально роооовный рост баланса?

Используйте пользовательский критерий оптимизации.

 
AndreyTreid #:
Подскажите, как можно сделать дисконнект в тестере?

Можно попробовать весь код инициализации перенести в отдельную функцию, которая будет выполнятся в OnTick() каждый n баров.

Сам такого не делал, может и что не учитываю...

AndreyTreid #:
как вариант каждое открытие новой сделки сохранять в блокноте

Почему нельзя просто узнать какие открыты позиции из PositionGetInteger(), PositionGetDouble(), PositionGetString()?

 
Ivan Butko #:
Подскажите, пожалуйста,

оптимизатор МТ5 очень любит рисовать дугу при высоком факторе восстановления: вначале идёт резкий рост, а потом 80% всего остального баланса - флетит. 

Этот косяк можно исправить, если оптимизировать по R-квадрат или что-то подобное. 


Как реализовать в коде, чтобы на первые строчки выставлялись сеты где максимально роооовный рост баланса?
В OnTester () возвращать R-квадрат в качестве пользовательского критерия оптимизации.
 
Aleksey Vyazmikin #:

Можно попробовать весь код инициализации перенести в отдельную функцию, которая будет выполнятся в OnTick() каждый n баров.

Сам такого не делал, может и что не учитываю...

Почему нельзя просто узнать какие открыты позиции из PositionGetInteger(), PositionGetDouble(), PositionGetString()?

Не в той теме открыл, для MT5го хотел.

Можно, просто как это все тестануть, узнать какие переменные сохранены, какие нет и что вообще эксперт вызывает после реконнекта?

Например после реконнекта эксперт загружает OnInit или нет? можно в нем проверять открытые позиции и запоминать лот и если это все есть то делать сразу расчеты которые надо

 
AndreyTreid #:

Не в той теме открыл, для MT5го хотел.

Можно, просто как это все тестануть, узнать какие переменные сохранены, какие нет и что вообще эксперт вызывает после реконнекта?

Например после реконнекта эксперт загружает OnInit или нет? можно в нем проверять открытые позиции и запоминать лот и если это все есть то делать сразу расчеты которые надо

Вот тут глянуть "Загрузка и выгрузка экспертов".

 
AndreyTreid #:

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

Чтобы протестить естественно)

Можно поступить так. Сделайте в своём советнике две функции Save() и Load(). Первую вызывайте на каждом тике (или при наступлении значимых событий). Она должна сохранять всю необходимую информацию о текущем состоянии в файл. Формат хранения и состав сохраняемой информации выбираете сами. Вторая функция загружает информацию о состоянии из этого файла. В функции OnInit() советник должен вызывать Load() и затем находить открытые ранее позиции (если они есть), понимать по прочитанной из файла информации какие позиции оставить, а какие закрыть и как дальше продолжать работу. Файл лучше хранить в общей папке терминалов.

Для тестирования берёте любой интервал и разбиваете его на две части по какой-то дате внутри интервала. В параметры советника добавляете параметр "даты реконнекта". В OnTick() добавляете проверку, что если наступила дата реконнекта, то подождать несколько баров и потом принудительно вызвать OnInit(). Если дата реконнекта пустая, то дополнительного вызова OnInit() не будет происходить. Затем запускаете в тестере один раз с пустой датой реконнекта, а затем с какой-то конкретной. Если результаты совпадут или почти совпадут, то всё работает как надо.

 

кОЛЛЕГИ - вопрос организационный...  написал робота - вроде торгует по условиям... еще не до конца проверил...

Интересует - может кто знает - напишите каким образом можно организовать учет так называемых виртуальных сделок? т.е. робот запущен, но реал не торгует - но вместо открытия - закрытия сам пункты считает и например на экран выводит... там не надо формировать типа полного отчета о виртуальных торгах... достаточно текущий лосс или профит по символам (торгуется одновременно два символа спреда) - по сути из ветви темы: https://www.mql5.com/ru/forum/122468/page55

кто в курсе тот в курсе...

Так вот как оптимальным образом настроить вывод и запись например можно в отдельную даже переменную (-ые) текущий профит лосс... общий профит лосс.. типа этого... можно добавить третью переменную типа за день. Профит лосс.

1. текущая прибыль/убыток = ...

2. общая прибыль/убыток по закрытым позициям = ...

типа этого...

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

настройка робота еще не полностью проведена...

Это все пока на МТ 4

попробовал открыть демо... смотрю... может и нет там нужных символов для торгов на реале.....

Торговля спредами в Meta Trader-е - Используйте советника для торговли висюками
Торговля спредами в Meta Trader-е - Используйте советника для торговли висюками
  • 2010.01.27
  • HIPPYODESSA
  • www.mql5.com
индикатор то не показывает точно их общую уравновешенную стоимость а только за определенный период. Но при правильно подобранных лотах убытки не значительны по сравнению с прибылью. Это Вы имеете ввиду валютные пары а биржевые инструменты по идее не должны сильно отличатся демо от реала
 
Привет всем, так как вы все здесь эксперты, я только новичок, я хочу спросить, какую функцию я использую или даже можно ли код для lookback 5 свечей посмотреть, если условие выполнилось, то вывести стрелку? tks.
 
Roman Shiredchenko #:

кОЛЛЕГИ - вопрос организационный...  написал робота - вроде торгует по условиям... еще не до конца проверил...

Интересует - может кто знает - напишите каким образом можно организовать учет так называемых виртуальных сделок? т.е. робот запущен, но реал не торгует - но вместо открытия - закрытия сам пункты считает и например на экран выводит... там не надо формировать типа полного отчета о виртуальных торгах... достаточно текущий лосс или профит по символам (торгуется одновременно два символа спреда) - по сути из ветви темы: https://www.mql5.com/ru/forum/122468/page55

кто в курсе тот в курсе...

Так вот как оптимальным образом настроить вывод и запись например можно в отдельную даже переменную (-ые) текущий профит лосс... общий профит лосс.. типа этого... можно добавить третью переменную типа за день. Профит лосс.

1. текущая прибыль/убыток = ...

2. общая прибыль/убыток по закрытым позициям = ...

типа этого...

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

настройка робота еще не полностью проведена...

Это все пока на МТ 4

попробовал открыть демо... смотрю... может и нет там нужных символов для торгов на реале.....

вы хотите вместо реальных сделок, поводить сделки в "виртуальном окружении" ?

это у fxsaber есть такое: https://www.mql5.com/ru/code/22577

хотя для спредов и арбитражей лучше самому делать. 

Virtual
Virtual
  • www.mql5.com
Виртуальное торговое окружение