Мультивалютное тестирование

 
Кто нибудь знает, каким образом можно провести мультивалютное тестирование? Сразу оговорюсь, что речь идет не о тестировании портфеля МТС.
Нужно, скажем, при прогоне на EURUSD открывать позиции на GBPUSD и других валютах и управлять ими так же, как и ордерами на родном тестируемом инструменте.
Иными словами - в одном эксперте получать данные с разных инструментов и полноценно открывать/закрывать ордера на всех инструментах. Пока такое можно сделать только при работе в Online, но удобно было бы провести предварительное тестирование и оптимизацию для экономии времени.
Может есть какой-нибудь софт, которому по зубам провести такое тестирование?
Начал изучать Wealth-Lab для решения этой задачи, но там такое тоже нереализуемо :(

P.S. Планируют ли разработчики сделать соответствующий функционал в MT4/MT5?
 

Добрый день!

На форуме об этом кое где проскальзывало, но ни разу выхода не видел.

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

 
Это будет выходом только в том случае, если эксперт анализирует все инструменты по одному и тому же алгоритму, а если, например, стратегия является портфельной, то нужно открывать позиции зачастую по разным инструментам в разные стороны, причем необязательно одновременно. Необходимо знать текущую прибыль/убыток по общей позиции из нескольких ордеров на разных парах.

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

Чисто технически всё возможно и сейчас - открыть ордер другой пары не проблема -

OrderSend( string symbol
, получить профит любого ордера тоже не проблема -
OrderProfit( )
,
OrderSwap( )
,
OrderCommission( )
. Пишите MQL код, в этом мастерство. А базовый набор функций в терминале давно есть. Тестера мультивалютного нет, с моделированием всех тиков по всем парам, это да.

 
А у Вас отсылается ордер на неродном инструменте при тестировании?
В реальной работе - безусловно все отсылвается и все функции пашут.

Но на тестере ордер по неродному символу не открывается.
 


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

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

И в тестере MT4 этого не будет, как сказали разработчики.

 
Я о другом. Предположим, что мы получаем сигнал, и нам надо одновременно продать евру и купить фунт, а на следующем баре уже купить йену, продать франк и т.д. - то есть заниматься хеджевой торговлей. При этом позиции мы закроем только тогда, когда суммарная прибыль с учетом свопов по такой хеджевой сделке превысит определенный порог, либо наступит другой сигнал уже на закрытие хеджа. Если пар две, то еще можно выкрутиться - сделать реверсный сигнал с выходом только по сигналу закрытия, благо обрабатывать данные от чужого инструмента можно (хотя свопы все равно придется ручками начислять). Но если инструментов 4, 8 и более, то так работать невозможно.
Есть же люди, работающие с портфелями, хеджированием, корзиной валют с сильной корреляцией - как они тестируют свои стратегии?
Неужели EXCEL?
Я сейчас сам в него перешел из-за невозможности проведения моделирования. Если там будет слишком гемморойно протестировать, то придется думать о создании модуля к MT4, благодаря которому можно будет как-нибудь проэмулировать торговлю на неродных инструментах.
 
Valmars:


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

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

И в тестере MT4 этого не будет, как сказали разработчики.

Тестируем только по OHLC без всякого моделирования. Если открываться только на новом баре ,то текущие цены - это цены открытия баров, они известны.
Таким образом, открыть ордер по другому инструменту можно - по цене открытия бара. Тестирование получится достаточно грубое, но все же гораздо лучше, чем ничего. Неужели нет никакого софта для задачи?
 

Думаю, что KimIV может вам помочь. Вот его пост 'MTC по боришпольцу' KimIV 25.03.2007 12:00 Дальше Вы наверное уже сами разберётесь.

 

"А открыть ордер по другому инструменту в тестере нельзя в силу того, что неизвестно по какой цене его открывать, так как цена других символов не моделируется".

Неужели вот такого примера не достаточно iOpen("USDCHF",1,0) для определения текущей цены другой пары. Точнее все-равно не поймать, по той простой причине, что выполнение програмы происходит с приходом нового тика в той паре, на которой висит советник. Да это не точно, но +- пару пипсов можно перекрыть увеличенным значением проскальзывания на эти же пару пипсов.

 
solandr:

Думаю, что KimIV может вам помочь. Вот его пост 'MTC по боришпольцу' KimIV 25.03.2007 12:00 Дальше Вы наверное уже сами разберётесь.

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