Не вижу где тут благодарности ставят. В мобильной версии, походу, не предусмотренно. Приду с работы наставлю ))).
Про флажки читал поверхностно и не понял, как ими пользоваться.
Где про них можно почитать по-подробнее и простыми словами? "Есть сигнал - нет сигнала" - очень интересная мысль, логику ожидания сигнала можно написать вокруг одной переменной.
Только на одной переменной врядли. Да и от вида сигнала многое зависит, сигнал может поступать в виде ценовых данных, или кода направления торговли (например 0 - покупка, 1 - продажа, EMPTY_VALUE - ждать), или ещё и параллельно с нескольких источников.
По алгоритму торговой системы сигналы обрабатываются и принимается решение, открывать позицию или нет, допустимо ли по повторному сигналу торговать опять, если уже есть открытые позиции, сколько позиций допускается, с каким расстоянием по цене, можно ли в разных направлениях торговать одновременно и т.д.
Нет универсальных решений, на все случаи. Нужно сначала обдумать систему, а код - это вторично.
Только на одной переменной врядли. Да и от вида сигнала многое зависит, сигнал может поступать в виде ценовых данных, или кода направления торговли (например 0 - покупка, 1 - продажа, EMPTY_VALUE - ждать), или ещё и параллельно с нескольких источников.
По алгоритму торговой системы сигналы обрабатываются и принимается решение, открывать позицию или нет, допустимо ли по повторному сигналу торговать опять, если уже есть открытые позиции, сколько позиций допускается, с каким расстоянием по цене, можно ли в разных направлениях торговать одновременно и т.д.
Нет универсальных решений, на все случаи. Нужно сначала обдумать систему, а код - это вторично.
На словах все просто было, а как начал пробовать, появились трудности. Точнее одна. Как на следующем тике пропустить проверку уже полученного сигнала? Чую, что тот самый флаг надо использовать, а как не пойму. Хотя бы простейший пример куска кода.
if (Signal_1 == buy)
{
if (TimeSeconds(TimeCurrent()) >= TimeWaiting)
{
if (Signal_2 == buy)
{
OpenBuy();
}
}
}
В такой, например, конструкции, как использовать флаг? Или сама конструкция не верна?
На словах все просто было, а как начал пробовать, появились трудности. Точнее одна. Как на следующем тике пропустить проверку уже полученного сигнала? Чую, что тот самый флаг надо использовать, а как не пойму. Хотя бы простейший пример куска кода.
В такой, например, конструкции, как использовать флаг? Или сама конструкция не верна?
Зачем усложнять?
Вот вы обработали первый сигнал? И что с ним дальше?
По куску кода, показанному выше, этот сигнал игнорируется торговой функцией, торгуется только по второму сигналу.
А что мешает открыть позицию и пока цена ближе какого-то количества пунктов от неё - не вызывать торговую функцию? Или просто пока есть открытая позиция по символу, не торговать, это как ваша ТС задумана уже.
А сигналы пусть их приходят, как пришли, так и уйдут.
Вот вы обработали первый сигнал? И что с ним дальше?
По куску кода, показанному выше, этот сигнал игнорируется торговой функцией, торгуется только по второму сигналу.
А что мешает открыть позицию и пока цена ближе какого-то количества пунктов от неё - не вызывать торговую функцию? Или просто пока есть открытая позиция по символу, не торговать, это как ваша ТС задумана уже.
А сигналы пусть их приходят, как пришли, так и уйдут.
В том-то и дело, что ТС расчитана на открытие позиции после подтверждающего второго сигнала, полученного только в течении трех баров. Если за три свечи второй сигнал не случился, то заново ждем первый.
Я сей час на работе накатал в блокноте от руки примерный код, только с телефона долго его набирать, но попробую.
Только проверка второго сигнала получается на следующем тике.
Если можно проще, с удовольствием выслушу.
Зачем две переменные под сигналы? Одной недостаточно? Ретурн в онтик - слишком радикально, как по-моему, особенно если ещё их больше одного, а уж в конце функции его вообще не надо ставить, тип войд этого не требует.
Ведь в этой функции ещё много чего обрабатывать можно в промежутках между торговыми опперациями.
Ну и причина обработки второго сигнала, раз уж их два, только на следующем тике, тоже в ретурне.
Зачем две переменные под сигналы? Одной недостаточно? Ретурн в онтик - слишком радикально, как по-моему, особенно если ещё и больше одного. Ведь в этой функции ещё много чего обрабатывать можно в промежутках между торговыми опперациями.
Ну и причина обработки второго сигнала, раз уж их два, только на следующем тике, тоже в ретурне.
А так вроде принцип использования флага усвоен.
Два индикатора - два сигнала. В Онтик-это для примера, торговля у меня в отдельной функции, хотя возвратов, может действительно много))). А если после первого сигнала его убрать, то второй проверится в том же тике?
Про обработку между тиками слышал, но у меня еще не настолько, нагружен советник)))
За похвалу спасибо! Думал флаги - это темный лес.
Я теперь не пойму куда в этой конструкции провеку сигнала на sell воткнуть. Заместо какого-нибудь ретурна просится, а какого запутался)))
kstar1: Два индикатора - два сигнала. В Онтик-это для примера, торговля у меня в отдельной функции, хотя возвратов, может действительно много))). А если после первого сигнала его убрать, то второй проверится в том же тике?
Про обработку между тиками слышал, но у меня еще не настолько, нагружен советник)))
За похвалу спасибо! Думал флаги - это темный лес.
Я теперь не пойму куда в этой конструкции провеку сигнала на sell воткнуть. Заместо какого-нибудь ретурна просится, а какого запутался)))
А такой вариант не проще будет, когда проверяются оба индикатора сразу, сначала второй, а если есть от него сигнал - то и первый, но рассчитанный на Х баров в прошлом. На выходе - один сигнал, флагов не надо.
Логически это равнозначно получению сигнала от первого индикатора и ожиданию Х баров сигнала от второго индикатора в реальном времени, при условии что индикаторы не перерисовывают.
А дальше уже обрабатывать сигнал по типу - покупка или продажа.
Подумайте ещё над тем, что состояние флагов очень легко потерять, при первом же глюке советника или перезагрузке терминала. Можно, конечно, каждые 5 секунд писать в файл всю критичную информацию, но стоит ли оно того...
Я лично предпочитаю пользоваться тем, что труднее всего потерять и что всегда доступно - текущими ценами, историей котировок, списком открытых позиций и списком истории торгов. Этого вполне достаточно.
А такой вариант не проще будет, когда проверяются оба индикатора сразу, сначала второй, а если есть от него сигнал - то и первый, но рассчитанный на Х баров в прошлом. На выходе - один сигнал, флагов не надо.
Логически это равнозначно получению сигнала от первого индикатора и ожиданию Х баров сигнала от второго индикатора в реальном времени, при условии что индикаторы не перерисовывают.
А дальше уже обрабатывать сигнал по типу - покупка или продажа.
Я так сначала и делал. При подключении советник хватает прошлый сигнал, который может быть уже не актуаленым, а для моего скальпинга это не допустимо. И первым сигналом могут быть оба индикатора, но подтверждающим только один из них. Над этой логикой мне то же еще голову поломать, ввиду последних изменений.
Спасибо Вам огромное evillive!
Только на одной переменной врядли. Да и от вида сигнала многое зависит, сигнал может поступать в виде ценовых данных, или кода направления торговли (например 0 - покупка, 1 - продажа, EMPTY_VALUE - ждать), или ещё и параллельно с нескольких источников.
По алгоритму торговой системы сигналы обрабатываются и принимается решение, открывать позицию или нет, допустимо ли по повторному сигналу торговать опять, если уже есть открытые позиции, сколько позиций допускается, с каким расстоянием по цене, можно ли в разных направлениях торговать одновременно и т.д.
Нет универсальных решений, на все случаи. Нужно сначала обдумать систему, а код - это вторично.
Только на одной переменной врядли. Да и от вида сигнала многое зависит, сигнал может поступать в виде ценовых данных, или кода направления торговли (например 0 - покупка, 1 - продажа, EMPTY_VALUE - ждать), или ещё и параллельно с нескольких источников.
По алгоритму торговой системы сигналы обрабатываются и принимается решение, открывать позицию или нет, допустимо ли по повторному сигналу торговать опять, если уже есть открытые позиции, сколько позиций допускается, с каким расстоянием по цене, можно ли в разных направлениях торговать одновременно и т.д.
Нет универсальных решений, на все случаи. Нужно сначала обдумать систему, а код - это вторично.
На словах все просто было, а как начал пробовать, появились трудности. Точнее одна. Как на следующем тике пропустить проверку уже полученного сигнала? Чую, что тот самый флаг надо использовать, а как не пойму. Хотя бы простейший пример куска кода.
В такой, например, конструкции, как использовать флаг? Или сама конструкция не верна?
На словах все просто было, а как начал пробовать, появились трудности. Точнее одна. Как на следующем тике пропустить проверку уже полученного сигнала? Чую, что тот самый флаг надо использовать, а как не пойму. Хотя бы простейший пример куска кода.
В такой, например, конструкции, как использовать флаг? Или сама конструкция не верна?
Зачем усложнять?
Вот вы обработали первый сигнал? И что с ним дальше?
По куску кода, показанному выше, этот сигнал игнорируется торговой функцией, торгуется только по второму сигналу.
А что мешает открыть позицию и пока цена ближе какого-то количества пунктов от неё - не вызывать торговую функцию? Или просто пока есть открытая позиция по символу, не торговать, это как ваша ТС задумана уже.
А сигналы пусть их приходят, как пришли, так и уйдут.
Зачем усложнять?
Вот вы обработали первый сигнал? И что с ним дальше?
По куску кода, показанному выше, этот сигнал игнорируется торговой функцией, торгуется только по второму сигналу.
А что мешает открыть позицию и пока цена ближе какого-то количества пунктов от неё - не вызывать торговую функцию? Или просто пока есть открытая позиция по символу, не торговать, это как ваша ТС задумана уже.
А сигналы пусть их приходят, как пришли, так и уйдут.
Зачем две переменные под сигналы? Одной недостаточно? Ретурн в онтик - слишком радикально, как по-моему, особенно если ещё их больше одного, а уж в конце функции его вообще не надо ставить, тип войд этого не требует.
Ведь в этой функции ещё много чего обрабатывать можно в промежутках между торговыми опперациями.
Ну и причина обработки второго сигнала, раз уж их два, только на следующем тике, тоже в ретурне.
А так вроде принцип использования флага усвоен.
Зачем две переменные под сигналы? Одной недостаточно? Ретурн в онтик - слишком радикально, как по-моему, особенно если ещё и больше одного. Ведь в этой функции ещё много чего обрабатывать можно в промежутках между торговыми опперациями.
Ну и причина обработки второго сигнала, раз уж их два, только на следующем тике, тоже в ретурне.
А так вроде принцип использования флага усвоен.
Два индикатора - два сигнала. В Онтик-это для примера, торговля у меня в отдельной функции, хотя возвратов, может действительно много))). А если после первого сигнала его убрать, то второй проверится в том же тике?
А такой вариант не проще будет, когда проверяются оба индикатора сразу, сначала второй, а если есть от него сигнал - то и первый, но рассчитанный на Х баров в прошлом. На выходе - один сигнал, флагов не надо.
Логически это равнозначно получению сигнала от первого индикатора и ожиданию Х баров сигнала от второго индикатора в реальном времени, при условии что индикаторы не перерисовывают.
А дальше уже обрабатывать сигнал по типу - покупка или продажа.
Подумайте ещё над тем, что состояние флагов очень легко потерять, при первом же глюке советника или перезагрузке терминала. Можно, конечно, каждые 5 секунд писать в файл всю критичную информацию, но стоит ли оно того...
Я лично предпочитаю пользоваться тем, что труднее всего потерять и что всегда доступно - текущими ценами, историей котировок, списком открытых позиций и списком истории торгов. Этого вполне достаточно.
А такой вариант не проще будет, когда проверяются оба индикатора сразу, сначала второй, а если есть от него сигнал - то и первый, но рассчитанный на Х баров в прошлом. На выходе - один сигнал, флагов не надо.
Логически это равнозначно получению сигнала от первого индикатора и ожиданию Х баров сигнала от второго индикатора в реальном времени, при условии что индикаторы не перерисовывают.
А дальше уже обрабатывать сигнал по типу - покупка или продажа.