![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
С советником еще не разбирался, но поскольку сам использую подобный код для подсчета эквити
то в качестве второго варианта предлагаю при инициализации переменную приравнивать балансу
тогда отпадет необходимость лишний проверять состояние депо перед запуском советника,
потому что перед запуском советника его эквити равен балансу!
Вячеслав.
Пока с помощью тестера можно эмпирически оценить риск только по одиночным парам.
Аналитическую оценку риска для данной тактики на данный момент вывести не удалось.
Очень хорошая стратегия,
...
другой вопрос в том что снятие производится через год - два
Т.е. если снятие производить не очень торопишься, а размер депозита немерянный, то нет особой разницы в какую сторону открываться - рано или поздно плюс будет.
Чтоб такого не получилось , хорошо бы добавить несложнай теханализ, а чтоб особо не заморачиваться выбрать период - день.
Спасибо за ответ, уважаемый г-н Решетов. Я уже тоже сам понял, что эти строки для подстраховки, что-то типа {try…catch} в других языках. Тем более, в тесте действительно ни разу не вошел в функцию Closeby
Вроде что-то у меня сотворилось для теста. Хотя до сих пор не исключены ошибки, но решил кое-что показать, что понемногу получаю. Вообще собирался это делать на финлисте (мне там уютнее), ну раз Юрий на этом форуме, то видимо начну здесь.
В принципе, то что Вы увидите это помощь в понимании как генерятся сигналы советника.
Пока я занес алгоритм советника версии 1.1. Юрий все новые и новые версии выдает, а я копаюсь как улитка. Все вроде досконально соответствует коду версии 1.1, только для sellprofit стоит значение >0.001, а не 0.01.
Тест я провожу по своему плану, так что не обессудьте. А это значит, что депо я задаю пока как 1000$ и поэтому кол-во используемых пар у меня ограниченно. Пока смотрю только в одной группе EUR. Тест ограничиваю сутками. Программа у меня сделана гибко, и конечно могу поставить продолжительность и 2 и 10 дней. Но пока мне это не важно, а важно общее понимание алгоритма. Тем более, что считается все равно долго. Тестовые сутки – полчаса обсчета, это из-за таблицы view (см. ниже). Это очень долго, но вывожу фактически все присвоения переменных в таблицу и прочее. Даже завидую тесту MQL – как у них все быстро мотает. Конечно, у них сделано все вообще профессиональнее, ну зато увидишь у них далеко не все. А у меня по крупинке – но картина как на ладони.
Некоторые пояснения. Котировки у меня приготовлены специально – это значит, что в них update дыры и др. и т.п.. Такая обработка занимает время, пока я не хочу подгружать свежие данные и диапазон исторических котировок у меня от 01/01/05 по 16/09/06. Так что тест в этих пределах и мне пока достаточно. Да, котировки forexclub, минутные и взяты с forextester.
Я предоставляю 3 таблицы, в которых можно увидеть все развитие ситуации:
1) _history - типа «Истории счета» в mql, но только открытые и закрытые ордера у меня находятся вместе, признак разделения поле [flag]. Ну там все понятно. Поле id_operation: если «1» -то это BUY/
2) _resources – здесь показан суммарные баланс, средства и профит по открытым ордерам в данный момент времени, по всем задействованным вал. парам. Тут тоже должно быть все понятно, кроме поля [ID] – это мой внутренний идентификатор даты. Я могу объяснить более подробно, если будут вопросы, но вобщем какой дате это соответствует можно увидеть в третьей таблице _view, где все подробно, а в _resources выводится итог каждой минуты.
3) _view - все очень подробно, для каждой валютной пары своя история развития сделки. Поле [Actual_price] – это Close минутной котировки. Bid, Ask я получаю +- спред (спред правда взял из Альпари, но т.к. у меня все в таблицах, могу подправить, но смысла особого не вижу, все равно все примерно). Ну а данные читать очень просто – возьмите первую версию советника и номер строки будет указателем, где и в каком месте было присвоение в переменную (например, поле [money_54] соответствует 54 строке советника, где money перерасчитывается. Если «0», то значит в этом месте и расчета не было, т.к. не было соответствующих условий) . Посмотрите поле comment, там операции документируются и соответствуют истории в таблице _history. Да, одна возможная непонятка. Поле Itog_profit это общий профит на данный момент по открытым ордерам по данной валютной паре. Поле sellprofit или buyprofit могут отличаться, т.к. в нем записываются данные только последнего открытого ордера sell или buy. Ну так в цикле <for> для списка открытых ордеров. Остальное должно быть ясным, если только не найдете мои ошибки.
Пока сам только начал смотреть. Сначала тест порадовал. Четыре раза тыкал в первый попавшийся день (я на график даже не смотрю пока) с 2 валютными парами EURUSD+ EURCHF, ставил обсчет суток и выходил в шоколаде – от 15 до 150 п. Ордера не все закрывались на конец обсчета, но общий профит был положительный. Но потом попал в день, когда итог дня закончился -80. Еще раз повторяю, что тест я прерываю и это не верно. Видимо, если тест продолжить, то будет другой результат. Но пока я смотрю так.
Этот вариант теста сродни пипсовке, а Юрий верно говорит, что его советник совсем другое, и депо маленьким не должно быть, т.к. при маленьком депо нарушается технологический процесс работы советника, ну там усреднения не проходят как надо, т.к. не хватает средств и борьба за «живучесть» из-за этого может закончиться и не положительно.
Еще раз скажу, что редкая инженерная мысль вызывало у меня такое восхищение, как советник Юрия. Очень интересный и оригинальный. Но смотрите сами – он как прекрасен, так и опасен, по крайней мере 1 версия.
С уважением, Fed
Да, еще раз: Депо 1000 $, Bl=1000, BeginPrice – текущая на datetime расчета. Цель теста – понять как генерятся сигналы.
Первый тест – 15/03/05 10:00 по 16/03/05 10:00
День этот был «новостной», но т.к. смотрим генерации сигналов (кому интересно) – то это пока все равно.
Сначала для 2 пар EURUSD и EURCHF
Теперь 2 пары EURUSD и EURCHF, депо 1000, bl 1000, c 15/03/05 00:00 по 16/03/05 00:00. Т.е. чуть изменено время, BeginPrice=текущей.
Ну пока перестаю завешивать mql своими творениями. Может это не интересно, может уже на этом этапе кто-нибудь найдет у меня ошибку. А так могу показать изменения расчетов в зависимости от Bl и от BeginPrice <> текущей
С уважением, Fed
Очень хорошая стратегия,
...
другой вопрос в том что снятие производится через год - два
Т.е. если снятие производить не очень торопишься, а размер депозита немерянный, то нет особой разницы в какую сторону открываться - рано или поздно плюс будет.
Чтоб такого не получилось , хорошо бы добавить несложнай теханализ, а чтоб особо не заморачиваться выбрать период - день.
Спасибо за ответ, уважаемый г-н Решетов. Я уже тоже сам понял, что эти строки для подстраховки, что-то типа {try…catch} в других языках. Тем более, в тесте действительно ни разу не вошел в функцию Closeby
Здравствуйте!
Вот те бабушка и юрьев день! Шучу.
Как сказал Mathemat "по поверхностному анализу" ну очень красиво! Ни одного отрицательного значения. Поставлю тестировать в онлайн. Но вот чего не понял (может не правильно понял): Я не выключаю камп, не закрываю терминал. Будет ли выводится алерт в таких условиях, или советник будет торговать сам, как ему и положено? И что произойдет , если будет кратковременнгое отключение от инета, а потом восстановление связи? Без каких либо выключений с моей стороны?
Для меня вопрос очень важный по причине отсутствия меня возле компа как минимум 18 часов в день (Сон работа и т.п) и если в это время произойдет отключение, или я не смогу ввести новые данные. ..... ну не совсем хорошо.
Еще, если правиьно понял: Если включаешь камп или терминал, то просто нужно ввести текущие значения и все пойдет своим чередом, т.е переподключить советника?
Еще, если алерт выведен, но мы ничего не предпринимаем, советник продолжает торговать по старым настройкам или ждет ввода новых?
Если можно, очень прошу, эти моменты поподробнее!!!!
Спасибо за очередной повод поломать немного голову! (в хорошем смысле).
С уважением!!!!
Можно вообще обойтись без всяких аллертов и перейти на полуручник, особенно если нет возможности следить за советниками. Для этого вполне подойдет Swaper_1.1. Сам принцип в том, чтобы начать новую игру (т.е. новый магик и beginPrice для всех советников), когда уровень эквити превысит предыдущий.
Т.е. когда есть возможность, смотрим на эквити. Если оно превысило прежний уровень, то: