
এই কৌশলটি একটি ট্রেডিং সিস্টেম যা প্রবণতা ট্র্যাকিংয়ের উপর ভিত্তি করে এবং একটি র্যান্ডম সূচক (স্টোক্যাস্টিক) । এটি র্যান্ডম সিস্টেমের সাথে বাজারের প্রবণতা নির্ধারণের সাথে সাথে ওভারসোল্ড অঞ্চলের ক্রস সিগন্যাল ক্যাপচার করার জন্য র্যান্ডম সূচক ব্যবহার করে এবং ঝুঁকি নিয়ন্ত্রণের জন্য একটি গতিশীল স্টপ-ড্রপ স্তর সেট করে। এই পদ্ধতিটি ট্রেডিং সিগন্যালের নির্ভরযোগ্যতা নিশ্চিত করে এবং কার্যকরভাবে প্রতিটি লেনদেনের জন্য ঝুঁকি-লাভের অনুপাত পরিচালনা করে।
এই কৌশলটি মূলত নিম্নলিখিত মূল উপাদানগুলির উপর নির্ভর করেঃ
ক্রয় শর্ত একই সময়ে পূরণ করা আবশ্যক:
বিক্রির শর্ত বিপরীতঃ
এটি একটি সম্পূর্ণ কৌশলগত ব্যবস্থা যা প্রবণতা ট্র্যাকিং এবং গতিশীল ট্রেডিংয়ের সমন্বয় করে। সমান্তরাল সিস্টেম এবং র্যান্ডম সূচকগুলির সমন্বিত ব্যবহারের মাধ্যমে, ট্রেডিংয়ের দিকটি মূল প্রবণতাগুলির সাথে সামঞ্জস্যপূর্ণ তা নিশ্চিত করার পাশাপাশি উপযুক্ত মূল্য অঞ্চলে ট্রেডিং করার অনুমতি দেয়। একই সাথে, কৌশলটি ঝুঁকি নিয়ন্ত্রণের জন্য একটি উন্নত ঝুঁকি ব্যবস্থাপনা ব্যবস্থা অন্তর্ভুক্ত করে, গতিশীল স্টপ লস এবং স্থির ঝুঁকি-লাভের অনুপাত ব্যবহার করে। যদিও কিছু অন্তর্নিহিত সীমাবদ্ধতা রয়েছে, তবে প্রস্তাবিত দিকের অপ্টিমাইজেশনের মাধ্যমে কৌশলটির সামগ্রিক কর্মক্ষমতা আরও উন্নত করা যেতে পারে। বাস্তবিক প্রয়োগে, ব্যবসায়ীরা সুপারিশ করে যে নির্দিষ্ট বাজারের বৈশিষ্ট্য এবং তাদের নিজস্ব ঝুঁকি পছন্দ অনুসারে প্যারামিটারগুলি যথাযথভাবে সামঞ্জস্য করা উচিত।
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-11 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © quadawosanya
//@version=5
//indicator("My script")
//@version=5
strategy("EMA-Stochastic Strategy", overlay=true)
// EMA settings
ema50 = ta.ema(close, 50)
ema150 = ta.ema(close, 150)
// Stochastic settings
kLength = 14
dLength = 3
smoothK = 3
stochK = ta.sma(ta.stoch(close, high, low, kLength), smoothK)
stochD = ta.sma(stochK, dLength)
// Parameters for Stop Loss and Take Profit
var float stopLossLevel = na
var float takeProfitLevel = na
// Buy condition
buySignal = (close > ema50 and close > ema150) and (ema50 > ema150) and (stochK < 30 and ta.crossover(stochK, stochD))
// Sell condition
sellSignal = (close < ema50 and close < ema150) and (ema50 < ema150) and (stochK > 70 and ta.crossunder(stochK, stochD))
// Previous low for Stop Loss for Buy
lowBeforeBuy = ta.lowest(low, 5)
// Previous high for Stop Loss for Sell
highBeforeSell = ta.highest(high, 5)
// Entry and exit logic
if (buySignal)
stopLossLevel := lowBeforeBuy
risk = close - stopLossLevel
takeProfitLevel := close + 2 * risk
strategy.entry("Buy", strategy.long)
strategy.exit("Take Profit/Stop Loss", "Buy", stop=stopLossLevel, limit=takeProfitLevel)
if (sellSignal)
stopLossLevel := highBeforeSell
risk = stopLossLevel - close
takeProfitLevel := close - 2 * risk
strategy.entry("Sell", strategy.short)
strategy.exit("Take Profit/Stop Loss", "Sell", stop=stopLossLevel, limit=takeProfitLevel)
// Plotting EMAs
plot(ema50, color=color.blue, title="50 EMA")
plot(ema150, color=color.red, title="150 EMA")
// Visualize 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")
// Visualize Stop Loss and Take Profit levels
plot(stopLossLevel, color=color.red, style=plot.style_line, linewidth=2, title="Stop Loss")
plot(takeProfitLevel, color=color.green, style=plot.style_line, linewidth=2, title="Take Profit")
plot(close)