
এই কৌশলটি আরএসআই সূচক ব্যবহার করে মূল্যের গতিশীলতা পরিমাপ করে এবং আরএসআই পরিবর্তনের স্ট্যান্ডার্ড ডিফারেনশিয়াল গণনা করে প্রবেশের সময় নির্ধারণ করে। যখন আরএসআই গতিশীলতা স্ট্যান্ডার্ড ডিফারেনশিয়াল থ্রেশহোল্ডের চেয়ে বেশি এবং পূর্ববর্তী মুহুর্তের গতিশীলতার চেয়ে কম হয় তখন পজিশনটি খালি করে। এই কৌশলটি স্টপ স্টপ এবং স্টপ লস পয়েন্টের সংখ্যা সেট করে ঝুঁকি নিয়ন্ত্রণের জন্য সীমিত মূল্যের পজিশন ব্যবহার করে। প্রতিটি মূল্য পরিবর্তনের সময় কৌশলটি কার্যকর করা হয় যাতে সমস্ত সম্ভাব্য মূল্যের ওঠানামা ধরা যায়।
এই কৌশলটি আরএসআই গতিশীলতা এবং স্ট্যান্ডার্ড ডিফারেনশিয়াল প্রান্তিককরণ ব্যবহার করে, উচ্চ-ফ্রিকোয়েন্সি পরিবেশে বিপরীত ট্রেডিংয়ের জন্য। ব্যর্থতা ফ্যাক্টর এবং সীমাবদ্ধ মূল্য প্লেইন পজিশনের প্রবর্তনের মাধ্যমে, কৌশলটি ঝুঁকি নিয়ন্ত্রণের সাথে সাথে মূল্যের ওঠানামা দ্বারা উত্পন্ন ট্রেডিং সুযোগগুলিকে ক্যাপচার করতে সক্ষম। তবে, কৌশলটির স্থায়িত্ব এবং লাভজনকতা বাড়ানোর জন্য আরও সূচক, অনুকূলিতকরণ প্যারামিটার সেটিং, পজিশন ম্যানেজমেন্ট এবং প্রবণতা ফিল্টার প্রবর্তনের মতো কৌশলটির বাস্তব প্রয়োগে আরও অপ্টিমাইজেশন প্রয়োজন।
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("MCOTs Intuition Strategy", overlay=true, default_qty_type=strategy.fixed, default_qty_value=1, initial_capital=50000, calc_on_every_tick=true)
// Input for RSI period
rsiPeriod = input(14, title="RSI Period")
// Input for standard deviation multiplier
stdDevMultiplier = input(1.0, title="Standard Deviation Multiplier")
// Input for exhaustion detection
exhaustionMultiplier = input(1.5, title="Exhaustion Multiplier")
// Input for profit target and stop loss in ticks
profitTargetTicks = input(8, title="Profit Target (ticks)")
stopLossTicks = input(32, title="Stop Loss (ticks)")
// Calculate RSI
rsiValue = ta.rsi(close, rsiPeriod)
// Calculate standard deviation of RSI changes
rsiStdDev = ta.stdev(ta.change(rsiValue), rsiPeriod)
// Calculate momentum
momentum = ta.change(rsiValue)
// Conditions for entering a long position
longCondition = momentum > rsiStdDev * stdDevMultiplier and momentum < momentum[1] * exhaustionMultiplier
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit Long", "Long", limit=close + profitTargetTicks * syminfo.mintick)
strategy.exit("Stop Loss Long", "Long", stop=close - stopLossTicks * syminfo.mintick)
// Conditions for entering a short position
shortCondition = momentum < -rsiStdDev * stdDevMultiplier and momentum > momentum[1] * exhaustionMultiplier
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit Short", "Short", limit=close - profitTargetTicks * syminfo.mintick)
strategy.exit("Stop Loss Short", "Short", stop=close + stopLossTicks * syminfo.mintick)
// Plotting RSI value for reference
plot(rsiValue, title="RSI", color=color.blue)