Торговля спредами в Meta Trader-е - страница 190

 

Спасибо leonid553!!!

Чем ближе подступаюсь к данной теме, тем логичнее кажется данный вид торговли (ЕСТЬ ЧЕТКИЕ ТЕНДЕНЦИИ). Все таки субъективной составляющей здесь меньше.

В целом на сколько целесообразна автоматизация торгового процесса (я имею ввиду торговля советником, необязательно, тем что постом выше)?

И какой ММ будет эффективным?

 

Я затрудняюсь сказать, насколько целесообразна и эффективна. Мне удобнее торговать спредами вручную, визуально оцениваю динамику движения. ММ надо тоже подбирать опытным путем.

Кроме того, далеко не на всех спредах подойдет такая краткосрочная торговля. (Про долгосрочную торговлю я даже не говорю, нет смысла держать советник на тф от н1 и выше! Проще несколько раз в день вручную заглядывать в терминал)

Надо скрупулезно подобрать те "тандемы", на которых советник будет давать прибыль. Вряд-ли, таких спредов будет много. Кстати, парные доливки (1-2, не более) - оч. эффективно работают при торговле спредами.

====================================================

Возвращаюсь к советнику. Суммарный результат двух прогонов: +382-18= +364 доллара!

Тест выше я делал на истории от 12 ноября и по сей день, т.к. глубже истории по F-контрактам бензина и мазута на данный момент в терминале не было. Прибыльный Результат - (честно говорю) - получил со второй попытки! В первый раз (задал параметры закрытия от "фонаря") зарядил слишком малый профит закрытия (+25). Второй раз прогнал с профитом закрытия +46 - и сразу получил суммарный профит!

Число сделок в обоих прогонах в идеале должно совпадать. В моем тесте бензин-мазут - число сделок отличается немного. Я здесь грешу на небольшие дыры в истории котировок по бензину или мазуту. И/или, - имеет место несовпадение баров при ночном неликвидном сырьевом рынке на малых тф.

----------------

В комментрарии на графике и в коде советника :

-ппокупка спреда (buy 1 инстр. - sell 2-й инстр.) условно названа "хедж 2"

-продажа спреда (sell 1 инстр. - buy 2-й инстр.) условно названа "хедж 1"

 

Всем привет! Сегодня с утра решил позаниматься советником, чтобы переделать отображение прибыли/убытка с пунктов на валюту депозита. Но, что-то, не пошла работа.

Чуть мозги не вывернул наизнанку для взаимодействия MODE_TICKVALUE, MODE_TICKSIZE, MODE_POINT и проч.

Ну и ладно. Дай думаю, позанимаюсь с тандемом (спредом) европейских индексов Дакс-Футси! Размерность у них одинаковая (0.5, 1 тик =5 пипсов) и для данной версии советника этот спред подходит!

Итак, FDAXZ1-FTSEZ1=0.02^0.07

Поскольку 1тик=5 пипсов, то (внимание!) - стопы в СВОЙСТВАХ советника CloseProfit и CloseLoss следует задавать строго кратными пяти !!!!!!!!! ( иначе Журнал может вернуть ошибку)

Я оставил те же стопы, что и в предыдущем тесте бензин-мазут, только 46 исправил на 45. Замечу, что это всего лишь +9 тиков, поэтому конечно CloseProfit следует увеличить хотя бы в два раза.

ПРОДОЛЖЕНИЕ СЛЕДУЕТ ...

 

============

Открываем график дакса FDAXZ1, M15 и подкачиваем историю (если на одном из инструментов не будет полностью заданной в тестере истории, то Журнал вернёт "деление на нуль" - Zero dividy). Впрочем, историю я оставил прежней - с 12 ноября.

Прогоняем советник на даксе:

==============

Теперь, заряжаем в тестер футси FTSEZ1, M15, и меняем местами в СВОЙСТВАХ советника названия инструментов!

И опять прогоняем на этом же участке истории. Вот таким оказался результат " синхронного" прогона Футси:

=======================

По графикам баланса видно, что хоть и число сделок не совпадает (а должно!), но тест - достаточно корректный - т.к. линии эквити идут симметрично (встречно), как и должно быть в идеале!

Т.е. - Тест "удался"! Суммарно с 14 ноября по сей день мы получили прибыль 40+63=103 - более +100 долларов при соотношении позиций FDAXZ1-FTSEZ1=0.02^0.07 ! Понятно, что (повторюсь), в этом тесте задан слишком малый CloseProfit - его нужно увеличить, по меньшей мере в два раза.

Отчеты тестера - в закачке.

ПРОДОЛЖЕНИЕ СЛЕДУЕТ ...

Файлы:
 

=================

Чтобы сделать тест FDAX-FTSE более корректным и приближенным к существующим реалиям, увеличим параметр CloseProfit до +100! Лосс, при этом, задаем суммарно CloseLoss =300 (навскидку взял!).

Прогон по Даксу с 12 ноября по сей день дает вот такой результат:

Синхронный прогон по футси FTSEZ1 дает нам вот такой результат:

=============

И опять мы получаем профитный итоговый результат! Причем прибыль каждого инструмента примерно равна, а суммарно 68+54=+122 доллара с 14 ноября по сей день! Графики балансов, как и положено симметричны, что говорит о удовлетворительной корректности тестов!

Впрочем, должен предупредить, что тестер не учитывает спред аск-бид при открытии/закрытии позиций фьючерсных инструментов. А между тем, потери здесь составят, как миниму, по 1 тику на каждой сделке! Тем не менее, считаю результат тестов удовлетворительным, т.к. параметры (дельта и стопы) взяты здесь, по сути, с потолка.

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

И если "не зажлобИт", - то выложат эти параметры сюда, в ветку! Отчеты тестерных прогонов - в закачке.

Файлы:
 

Так нельзя тестить. Вернее можно, но под такой способ надо дорабатывать советник специально под тестинг.

Цифирки это хорошо, но нет им веры, ибо рассинхрон.

 

Я не спорю. Этот советник сыроват и для более корректного теста-прогона нужно текущие результаты записывать в файл и одновременно рассчитывать суммарную линию эквити (баланса) с последующей её отрисовкой в экселле! - я вас правильно понял?

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

==================

p/s - рассинхрон оч. небольшой! - это видно по хорошей симметрии графиков балансов. Для отправной, начальной версии и для начальных экспериментов - эта версия, думаю, вполне подойдет.

 
leonid553:

Этот советник сыроват и для более корректного теста-прогона нужно текущие результаты записывать в файл и одновременно рассчитывать суммарную линию эквити (баланса) с последующей её отрисовкой в экселле! - я вас правильно понял?

Нет, неправильно. Рассинхронизации это не уберет.
 

===========

Некоторая защита от рассинхронизации в коде есть:

//проверяем наличие баров (синхронизируем работу) 
// - для инструментов, с разным началом/окончанием времени торговли
datetime Time_bar_Sl1 = iTime(Symbol_1,Period(), 0); 
datetime Time_bar_Sl2 = iTime(Symbol_2,Period(), 0);
//если текущий бар присутствует на обоих инструментах - работаем! 
if (Time_bar_Sl1 == Time_bar_Sl2) TRADE=true;   else TRADE=false;

TheXpert, что ещё можно предпринять в этом плане, чтобы увеличить достоверность результата?

 
leonid553:

Некоторая защита от рассинхронизации в коде есть:

Эта защита будет работать только онлайн. В тестере она ненужная, а может даже вредная.

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

Только такой способ (и то при определенных условиях) дает высокую вероятность достоверности результатов для тестера в 4ке.