Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Кстати, я запустил ваш советник в тестере стратегий и в итоге получил 11 ГБ лог-файл с ошибками... например...
23:08:49 2007.05.06 22:00 MMA_Breakout_strategy_volumeaIk_withouteMMjoreMF_u-rcodedmbywWhooDoo22 EURUSD,M30: OrderModify error 1
23:08:49 2007.05.06 22:00 MMA_Breakout_strategy_volumeaIk_withouteMMjoreMF_u-rcodedmbywWhooDoo22 EURUSD,M30: close #6 buy 0.01 EURUSD at 1.36028 sl: 1.31028 at price 1.35960
23:08:49 2007.05.06 22:01 MMA_Breakout_strategy_volumeaIk_withouteMMjoreMF_u-rcodedmbywWhooDoo22 EURUSD,M30: unknown ticket 6 for OrderModify function
Я считаю, что существует несколько способов выбора заказов, Все методы выбора заказов должны использовать функцию OrderSelect(). С учетом сказанного, я не понимаю, почему это может привести к сбою, поскольку советник четко выполняет функцию OrderClose() для всех ордеров без ошибок в тестере стратегий.
Ваш orderClose явно не работает. Если бы вы проверили свои коды возврата, вы бы это знали. Ваш orderSelect не работает, но вы не проверяете.
Если I не является номером билета, то ваш orderSelect не работает, как и все остальное.
если I - номер билета, то следующий номер билета НЕ i+1 (кроме как в тестере).
Саймон,
Если у меня есть Live-аккаунт...
RE: Я настоятельно не рекомендую вам запускать первый том на реальном балансе счета! Конечно, выбор за вами, но от вашего имени, я настоятельно не рекомендую вам запускать его на реальном счете, пока не завершится его эволюция от тома I к II. Том I все еще находится в стадии разработки, и его не следует запускать, пока он не будет полностью закодирован. Я не уверен, что произойдет, потому что сам не тестировал его на реальном счете. Я понимаю, что он не завершен, и решил удовлетворить его основные требования, прежде чем начинать тестирование на LIVE-счете.
Кстати...
RE: Я полагаю, что понимаю, что происходит в этой ошибке... Эта ошибка отражает ошибку в блоке кода "EMERGENCY SL". Я никогда не концентрировал свои силы на этом, поскольку он не так сложен в кодировании. Я закодировал его частично и не довел до конца. Блоку кода "EMERGENCY SL" не хватает важной адаптации. Я уверен, что если бы вы полностью удалили оба блока кода SELL и BUY "EMERGENCY SL", вы бы не получили 11-гигабайтный список ошибок. Причина, по которой он состоит из 11 гигов, заключается в том, что я считаю, что это одна и та же ошибка, повторяющаяся снова и снова на протяжении всей тестируемой истории.
Спасибо.
Уильям,
Я скажу, что у меня нет такого большого опыта обсуждения кода с вами, как у Саймона, но я хочу продолжить с вашим постом (спасибо за ваш пост! Он приветствуется).
Что вы хотите увидеть в I/II томе?
Я строго провожу тесты и добавляю необходимый код для тестирования, чтобы гарантировать его торговую ценность. Затем я доработаю то, что осталось от проблем с кодом, чтобы гарантировать безопасную торговлю на LIVE/DEMO.
Спасибо.
Если у меня есть реальный счет, на котором я торговал раньше, и на нем нет открытых ордеров... если я запущу ваш советник на нем на EURUSD M30, что произойдет? Будет ли он совершать сделки?
Саймон,
Если у меня есть реальный счет...
RE: Я настоятельно не рекомендую вам запускать том I на балансе реального счета! Конечно, выбор за вами, но от вашего имени, я настоятельно не рекомендую вам запускать его на реальном счете, пока не завершится его эволюция от тома I к II. Том I все еще находится в стадии разработки, и его не следует запускать, пока он не будет полностью закодирован. Я не уверен, что произойдет, потому что сам не тестировал его на реальном счете. Я понимаю, что он не завершен, и решил удовлетворить основные требования, прежде чем начинать тестирование на LIVE-счете.
Я хотел сказать, что если есть история счета, то эти строки в вашем коде предотвратят любые сделки...
В других местах, где ордер размещается с помощью OrderSend(), есть существующий открытый ордер... ...так что если есть какие-либо старые ордера в истории, ваш советник не будет размещать никаких сделок никогда... ...если бы вы протестировали свой код на демо или в реальном времени, вы бы, вероятно, обнаружили это.
Саймон,
Точка зрения, которую я пытался...
RE: Понятно. Считаете ли вы возможным использовать функцию OrderSelect() для поиска уникальной переменной билета, тогда ниже будет лежать блок кода, содержащий "if (OrdersHistoryTotal()==0){". Не будет ли это работать ПОСЛЕ того, как функция OrderSelect() выберет уникальную переменную билета "ticket", а функция OrdersHistoryTotal() будет искать торговую историю только уникальной переменной билета из-за функции OrderSelect() выше. Оператор "if" ищет ордера в истории только для конкретной переменной, уникальной переменной билета.
Спасибо.
Саймон,
Точка зрения, которую я пытался...
RE: Понятно. Как вы считаете, можно ли использовать функцию OrderSelect() для поиска уникальной переменной тикета, ниже будет лежать блок кода, содержащий "if OrdersHistoryTotal()==0{". Не будет ли это работать ПОСЛЕ того, как функция OrdersHistoryTotal() будет искать предыдущие сделки только для уникальной переменной билета? Оператор "if" ищет ордера в истории только для конкретной переменной - переменной уникального билета.
Спасибо.
"Возвращает количество закрытых ордеров в истории счета, загруженной в терминал. Размер списка истории зависит от текущих настроек вкладки "История счета" терминала."
Это не имеет никакого отношения к номерам тикетов или переменным тикетов, или магическим числам, или чему-либо еще ... это возвращает общее количество сделок в пуле истории ... единственным ограничивающим фактором является то, что вы выбрали для отображения на вкладке "История счета". Вся история, последние 3 месяца, последний месяц или пользовательский период.
Саймон,
Мне кажется, вы немного запутались...
RE: Том II должен начать процесс отправки ордера на основе условия. После отправки первого ордера (на основе условия) функция OrderClose() блокирует выполнение всех последующих сделок. Пожалуйста, попробуйте представить это как цикл. Запускаем шарик на основе условия, затем цикл запускается после закрытия первого ордера (ордера-шарика). Цикл продолжается, пересчитывая цифры и проверяя активные условия ДО тех пор, пока не будут выполнены будущие условия.
Спасибо