
Chiến lược này sử dụng tín hiệu chéo của chỉ số ngẫu nhiên (Stochastic Oscillator) để xác định các cơ hội mua và bán tiềm năng. Chiến lược sẽ tạo ra tín hiệu mua khi đường %K của chỉ số ngẫu nhiên đi qua đường %D từ dưới và giá trị%K thấp hơn 20. Chiến lược sẽ tạo ra tín hiệu bán khi đường%K đi qua đường%D từ trên và giá trị%K cao hơn 80.
Các chỉ số ngẫu nhiên bao gồm% K đường và% D đường.% K đường đo giá đóng cửa so với giá cao nhất và giá thấp nhất trong thời gian qua.% D đường là đường trung bình di chuyển của% K đường, được sử dụng để làm mịn% K đường và tạo ra một tín hiệu đáng tin cậy hơn. Khi% K đường đi qua% D đường, cho thấy động lượng giá đang thay đổi, điều này có thể được giải thích là tín hiệu mua hoặc bán tiềm năng. Chiến lược này sử dụng giao điểm của các chỉ số ngẫu nhiên để xác định xu hướng đảo ngược hoặc thay đổi động lực. Chiến lược tạo ra tín hiệu mua khi đường %K đi qua đường %D từ dưới và giá trị%K thấp hơn 20 (cho thấy tài sản đang bán tháo). Ngược lại, khi đường%K đi qua đường %D từ trên và giá trị%K cao hơn 80 (cho thấy tài sản đang mua tháo), chiến lược tạo ra tín hiệu bán. Phương pháp này cố gắng nắm bắt sự thay đổi xu hướng trước khi giá đảo ngược.
Chiến lược giao dịch động lượng ngẫu nhiên sử dụng ngẫu nhiên các chỉ số để xác định các cơ hội mua và bán tiềm năng, đồng thời xem xét tình trạng mua / bán quá mức của tài sản. Mặc dù chiến lược đơn giản và dễ hiểu, có thể xác định xu hướng đảo ngược, nhưng nó cũng có thể tạo ra tín hiệu sai và thiếu xác nhận xu hướng.
/*backtest
start: 2024-03-28 00:00:00
end: 2024-04-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Stochastic Crossover Buy/Sell", shorttitle="Stochastic Crossover", overlay=true)
// Stochastic Oscillator Parameters
length = input(14, title="Stochastic Length")
smoothK = input(3, title="Stochastic %K Smoothing")
smoothD = input(3, title="Stochastic %D Smoothing")
// Calculate %K and %D
stoch = stoch(close, high, low, length)
k = sma(stoch, smoothK)
d = sma(k, smoothD)
// Plot Stochastic Lines
plot(k, color=color.blue, linewidth=2, title="%K")
plot(d, color=color.red, linewidth=2, title="%D")
// Stochastic Crossover Buy/Sell Signals
buySignal = crossover(k, d) and k < 20 // Buy when %K crosses above %D and %K is below 20
sellSignal = crossunder(k, d) and k > 80 // Sell when %K crosses below %D and %K is above 80
// Plot Buy/Sell Arrows
plotshape(series=buySignal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(series=sellSignal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")
// Entry and Exit Points
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.close("Buy", when=sellSignal)
strategy.entry("Sell", strategy.short, when=sellSignal)
strategy.close("Sell", when=buySignal)