OPEN-SOURCE SCRIPT

BTC/USD Moving Average Crossover Strategy

//version=5
indicator("BTC/USD Moving Average Crossover Strategy", overlay=true)

// Input parameters for Moving Averages and RSI
lengthEMA1 = input.int(9, title="Short EMA")
lengthEMA2 = input.int(21, title="Long EMA")
rsiLength = input.int(14, title="RSI Length")
takeProfit = input.float(2.5, title="Take Profit %")
stopLoss = input.float(1.0, title="Stop Loss %")

// EMA Calculations
emaShort = ta.ema(close, lengthEMA1)
emaLong = ta.ema(close, lengthEMA2)

// RSI Calculation
rsi = ta.rsi(close, rsiLength)

// Entry Conditions
buySignal = ta.crossover(emaShort, emaLong) and rsi > 50
sellSignal = ta.crossunder(emaShort, emaLong) or rsi < 50

// Track position entry price
var float entryPrice = na

// Buy and sell logic
if (buySignal)
entryPrice := close

// Set stop-loss and take-profit levels
takeProfitLevel = entryPrice * (1 + takeProfit / 100)
stopLossLevel = entryPrice * (1 - stopLoss / 100)
exitCondition = close >= takeProfitLevel or close <= stopLossLevel or sellSignal

// Exit trade
if (exitCondition)
entryPrice := na // Reset entry price

// Plot Buy and Sell signals
plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")

// Plotting EMA lines for reference
plot(emaShort, title="9 EMA", color=color.blue)
plot(emaLong, title="21 EMA", color=color.orange)
Bands and Channels

開源腳本

在真正的TradingView精神中,這個腳本的作者以開源的方式發佈,這樣交易員可以理解和驗證它。請向作者致敬!您可以免費使用它,但在出版物中再次使用這段程式碼將受到網站規則的約束。 您可以收藏它以在圖表上使用。

想在圖表上使用此腳本?

免責聲明