Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Хм, так это было бы хорошо?
На самом деле я заменил Time[1] на Time[0], потому что Time[1] пропускал еще 1 бар, поэтому Time[0] фактически представляет Open[0]. Если кто-то знает что-то лучше/мягче, чем это, пожалуйста, скажите!
Хм, так это будет хорошо?
На самом деле я заменил Time[1] на Time[0], потому что Time[1] пропускал еще 1 бар, так что Time[0] фактически представляет Open[0]. Если кто-то знает что-то лучше/мягче, чем это, пожалуйста, скажите!
RefreshRates(); OrderClose( OrderTicket(), OrderLots(),OrderClosePrice() ,Slippage,CLR_NONE);
и проверьте также, успешно ли закрытие ордера
и проверьте также, успешно ли закрытие ордера
Если не удалось, то при повторении функции start() она снова проверит if() перед orderclose() и, поскольку условия все еще будут истинными для продолжения, она попытается закрыть его снова. Я не могу попытаться закрыть его 2 раза в одном и том же цикле start(), нужно подождать еще один тик, нет?
Хм, так это было бы хорошо?
На самом деле я заменил Time[1] на Time[0], потому что Time[1] пропускал еще 1 бар, поэтому Time[0] фактически представляет Open[0]. Если кто-то знает что-то лучше/мягче, чем это, пожалуйста, скажите!
Если вы хотите закрыть как можно ближе к закрытию бара, тогда вам нужно определить, является ли текущий тик первым тиком нового бара ... ... тогда вы также должны убедиться, что ваше закрытие работает, потому что у вас будет только один шанс на бар.
Ну, если не удалось, то когда функция start() повторится, она снова проверит if() перед orderclose() и, поскольку условия все еще будут истинными, чтобы продолжить, она попытается закрыть его снова. Я не могу попытаться закрыть его 2 раза в том же цикле start(), нужно подождать еще один тик, нет?
Вы начали, что он должен закрыть последний тик бара.
Мы пытались понять, что невозможно узнать, когда наступит последний тиковый бар.
теперь не имеет значения, если закрытие не удалось, мы пробуем снова, снова, снова на следующих тиках.
Вы также пропустили другие изменения, которые я предлагал
какой смысл в обновлении после закрытия ордера?
и знаете ли вы, почему проскальзывание вместо TAKEPROFITPIPS?
это зависит от возврата ошибки, вы можете попробовать закрыть ее 2 раза в одном цикле
если tradecontext слишком занят, и у вас есть больше сделок внутри цикла, чтобы закрыть n большая вероятность, что они также не удастся.
Нет, ордер будет закрываться всегда, независимо от того, является ли тик тиком следующего бара или нет, для любого бара, следующего за баром, когда была открыта сделка, и в любое время в течение этого бара Time[0] всегда будет больше, чем OrderOpenTime().
Если вы хотите закрыть как можно ближе к закрытию бара, тогда вам нужно определить, является ли текущий тик первым тиком нового бара ... ... тогда вы также должны убедиться, что ваше закрытие работает, потому что у вас будет только один шанс на бар.
Разве start() не повторяется после каждого тика? Я ошибаюсь?
В общем, представьте себе это:
OrderOpenTime() = 12:12:01 (12 Ч 12 МИН 1 СЕК)
Ордер открывается, пакет функции Orderclose() находится после моего пакета OrderSend() в основном коде, поэтому сразу после открытия ордера мой пакет OrderClose() будет проверять, выполнились ли условия для закрытия ордера или нет. Допустим, выполнились, теперь пора закрыть ордер:
Time[0] - это цена открытия данного бара, по логике вещей она должна быть меньше, чем время открытия ордера, потому что ордер не может быть открыт до открытия того же бара.Это: 12:12:00
Итак, во что бы то ни стало:
вернет значение true, так что ордер будет закрыт. Если он не сможет закрыть его по какой-либо причине, например, из-за проскальзывания или так далее, не проблема, start() повторится.
И при следующем повторении Time[0] будет на 100% больше времени открытия ордера, потому что это логично, так что если первое закрытие не сработает, другое OrderClose() будет происходить каждый раз после этого, когда start() будет повторяться, и так как я думаю, что start() повторяется каждый тик, то я не думаю, что есть лучший способ закрыть ордер быстрее, надеюсь, я объяснил это ясно :)
Вы начали, что он должен закрыть последний тик бара
Мы пытались понять, что невозможно узнать, когда наступит последний тиковый бар.
теперь не имеет значения, если закрытие не удалось, мы пробуем снова, снова, снова на следующих тиках.
Вы также пропустили другие изменения, которые я предлагал
какой смысл в обновлении после закрытия ордера?
и знаете ли вы, почему проскальзывание вместо TAKEPROFITPIPS?
это зависит от возврата ошибки, вы можете попробовать закрыть ее 2 раза в одном цикле
если tradecontext слишком занят и у вас есть больше сделок внутри цикла, чтобы закрыть n велика вероятность, что они также потерпят неудачу.
Разве start() не повторяется после каждого тика? Я ошибаюсь?
Да, start() вызывается для каждого тика, если только он все еще не выполняется....
В любом случае, представьте следующее:
OrderOpenTime() = 12:12:01 (12 Ч 12 МИН 1 СЕК).
Ордер открывается, пакет функции Orderclose() находится после моего пакета OrderSend() в основном коде, поэтому сразу после открытия ордера мой пакет OrderClose() будет проверять, выполнились ли условия для закрытия ордера или нет. Допустим, выполнились, теперь пришло время закрыть ордер:
Time[0] - это цена открытия данного бара, по логике вещей она должна быть меньше, чем время открытия ордера, потому что ордер не может быть открыт до открытия того же бара. Это: 12:12:00.
Значит, по всем правилам:
возвращает значение true, поэтому срабатывает закрытие ордера. Если он не может закрыть его по какой-либо причине, например, проскальзывание или т.п., не проблема, start() повторяется.
И при следующем повторении Time[0] будет 100% больше времени открытия ордера, потому что это логично, так что если первое закрытие не сработает, другое OrderClose() будет происходить каждый раз после этого, когда start() будет повторяться, и так как я думаю, что start() повторяется каждый тик, то я не думаю, что есть лучший способ закрыть ордер быстрее, надеюсь, я объяснил это ясно :)
Довольно редко цена закрытия бара не повторяется на следующем баре, не обязательно цена открытия...