Пожалуйста, помогите мне следующий код в pinescript - PullRequest
0 голосов
/ 21 февраля 2019

Как мне заставить работать следующий код?

// @ version = 3

strategy("My Strategy", overlay=true)

longCondition = crossover(ema(close, 13), vwap) and crossover(ADX, DIMinus) and crossover(MACD, MACDSignal)

if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)

shortCondition = crossunder(ema(close, 13), vwap) and crossover(ADX, DIPLUS) and crossover(MACDSignal, MACD)
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)

1 Ответ

0 голосов
/ 21 февраля 2019

Я не знаю, сколько из этих переменных, но приведенный ниже код является моим предложением, основанным на именах предоставленных переменных.Они похожи на выходные данные индикатора Направление движения и индикатора MACD.Используйте этот код в качестве примера для создания собственного кода.

//@version=3
strategy("My Strategy", overlay=true)
len = input(14, minval=1, title="DI Length")
lensig = input(14, title="ADX Smoothing", minval=1, maxval=50)

up = change(high)
down = -change(low)
DIPLUS = na(up) ? na : (up > down and up > 0 ? up : 0)
DIMinus = na(down) ? na : (down > up and down > 0 ? down : 0)
trur = rma(tr, len)
plus = fixnan(100 * rma(DIPLUS, len) / trur)
minus = fixnan(100 * rma(DIMinus, len) / trur)
sum = plus + minus
ADX = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), lensig)

[MACD, MACDSignal, histLine] = macd(close, 12, 26, 9)


longCondition = crossover(ema(close, 13), vwap) and crossover(ADX, DIMinus) and crossover(MACD, MACDSignal)

if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)

shortCondition = crossunder(ema(close, 13), vwap) and crossover(ADX, DIPLUS) and crossover(MACDSignal, MACD)
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)
...