Как построить график последнего открытия или закрытия текущей свечи в виде круга, проверив свечу [1] на наличие сигнала - PullRequest
0 голосов
/ 28 мая 2020

Я работал над алгоритмом для pinescript, и я застрял с некоторыми логическими c, относящимися к гипотетическому вводу позиции.

Прежде всего, bullPlot и BearPlot либо истина или ложь , где на графике нарисованы сигналы длинный и короткий . Что касается моей стратегии, после того, как вы построили длинный / короткий сигнал, вы ждете, пока цена не достигнет go после закрытия длинной / короткой позиции в зависимости от красной / зеленой свечи

Как я могу создать оператор, который проверяет, есть ли сигнал на предыдущей свече, если это правда, построить круг на основе последнего закрытия. Это просто помогает с ручной торговлей в алгоритме.

пример диаграммы / al go

пример точки ввода

1 Ответ

1 голос
/ 28 мая 2020

Вы можете создать серию, которая будет содержать ваш результат триггера на каждом баре.
Затем вы можете просто сослаться на значение триггера на предыдущем баре, используя конструкцию [1], и построить close[1] на текущем баре.

Если вы не хотите, чтобы значение в серии отображалось, вы можете построить график для значения na, например:

signal_on_previous_candle ? previousClose : na

?: - это тернарный оператор , который является сокращенным оператором if-then-else.
Приведенный выше код также может быть записан как

if signal_on_previous_candle
    previousClose
else
    na

Я думаю, это то, что вы ищете

//@version=4
study("bullPlot", overlay=true)

var bool signal_on_candle = false
signal_trigger_time = timestamp(year(timenow), month(timenow), dayofmonth(timenow), 11, 30, 0)

signal_triggered = time == signal_trigger_time

if signal_triggered
    signal_on_candle := true
else
    signal_on_candle := false

signal_on_previous_candle = signal_on_candle[1]

previousClose = close[1]

plot(signal_on_previous_candle ? previousClose : na, title="Dot",style=plot.style_circles, color=color.yellow, linewidth=5)

Этот код может быть короче, но он приведен в иллюстративных целях.

...