
এই কৌশলটি ডাবল মুভিং এভারেজের ক্রসকে ট্রেডিং সিগন্যাল হিসাবে ব্যবহার করে এবং এটিআর স্টপকে ট্রেডিং ট্রেডিংয়ের জন্য ব্যবহার করে। এর মূল ধারণাটি হ’ল স্বল্পমেয়াদী মুভিং এভারেজে দীর্ঘমেয়াদী মুভিং এভারেজ অতিক্রম করার সময় অতিরিক্ত এবং নীচে অতিক্রম করার সময় ফাঁকা করা, এবং এটিআর ব্যবহার করে স্টপ পয়েন্টগুলি সেট করার জন্য, dynamically trailing stops.
এই কৌশলটি মূলত দুটি সেট চলমান গড়ের মাধ্যমে প্রবণতার দিক নির্ধারণ করে। দ্রুত চলমান গড়ের দৈর্ঘ্য 25 দিন এবং ধীর চলমান গড়ের দৈর্ঘ্য 100 দিন। যখন দ্রুত চলমান গড়ের উপরে ধীর চলমান গড় অতিক্রম করা হয় তখন একটি কেনার সংকেত উত্পন্ন হয়; যখন দ্রুত চলমান গড়ের নীচে ধীর চলমান গড় অতিক্রম করা হয় তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।
কিছু ভুয়া সংকেত ফিল্টার করার জন্য, কৌশলটি একটি ক্রস কাউন্টার ক্রসকাউন্ট যুক্ত করে। এটি কেবলমাত্র যখন দ্রুত চলমান গড়ের ক্রসগুলি maxNoCross এর চেয়ে কম হয় (ডিফল্ট 25 দিন) তখনই একটি সংকেত ট্রিগার করে।
এছাড়াও, কৌশলটি একটি নিশ্চিতকরণ ব্যবস্থা যোগ করেছে, যা প্রাথমিক সংকেত প্রেরণের পরে, যদি দাম দুটি চলমান গড়ের মধ্যে আবার প্রবেশ করে তবে সংকেতটি নিশ্চিত করা হবে।
প্রবেশের পরে, কৌশলটি এটিআর সূচকটি ব্যবহার করে স্টপ-ড্রপ দূরত্ব সেট করে। এটিআর একটি নির্দিষ্ট সময়কালের মধ্যে দামের ওঠানামা পরিমাপ করে, এখানে এটিআর এর 14 গুণের সাথে স্টপ-ড্রপ দূরত্ব সেট করা হয়। স্টপ-ড্রপ লাইনটি দামের গতির সাথে ফ্লোটিং ট্র্যাকিং করে।
এই কৌশলটির কিছু সুবিধা রয়েছেঃ
ডাবল মুভিং এভারেজ এবং ক্রস ফিল্টারিংয়ের সাথে, আপনি কার্যকরভাবে জাল সংকেতগুলি ফিল্টার করতে পারেন এবং একটি শক্তিশালী প্রবণতা ধরতে পারেন।
ভুয়া ব্রেকিং এড়ানোর জন্য নিশ্চিতকরণ ব্যবস্থা বাড়ানো হয়েছে।
এটিআর-এর সাহায্যে, আপনি আপনার মুনাফা সর্বোচ্চ পর্যায়ে আটকে রাখতে পারেন এবং অতিরিক্ত প্রত্যাহার এড়াতে পারেন।
এটি সহজেই অপ্টিমাইজ করা যায়, কারণ এর পরামিতি কম এবং এটি বাস্তবায়ন করা সহজ।
ডিজিটাল মুদ্রা এবং ঐতিহ্যবাহী মৌলিক বাজার সহ বিভিন্ন বাজারে প্রয়োগ করা যেতে পারে।
বিভিন্ন সূচকের সমন্বয়ে কৌশল তৈরি করা, যা কৌশলকে আরও শক্তিশালী করে তোলে।
এই কৌশলটি নিম্নলিখিত ঝুঁকির সাথে জড়িতঃ
ঝড়ের সময়, চলমান গড়গুলি প্রায়শই ক্রস হয়, যা একাধিক ক্ষতির কারণ হতে পারে।
এটিআর প্যারামিটার সেটিং ভুল হলে স্টপ লস খুব হালকা বা খুব টাইট হতে পারে।
একটি বড় ফাঁক বা ফাঁক সরাসরি ক্ষতির কারণ হতে পারে।
হঠাৎ কোনো বড় ঘটনা বা ঘটনার ফলে দামের তীব্র ওঠানামা হতে পারে।
চলমান গড়ের অযৌক্তিক প্যারামিটারগুলি প্রবণতা হারাতে বা খুব বেশি মিথ্যা সংকেত তৈরি করতে পারে।
সাম্প্রতিক দামের অস্থিরতার পরিসরের পরিবর্তনের ফলে এটিআর স্টপড্রোমের দূরত্ব অনুকূলিত হতে পারে।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে আরও উন্নত করা যেতে পারেঃ
চলমান গড় প্যারামিটারগুলিকে অপ্টিমাইজ করুন এবং আরও উপযুক্ত সমন্বয় খুঁজে বের করুন। বিভিন্ন পিরিয়ড প্যারামিটার এবং ওজনের চলমান গড় পরীক্ষা করা যেতে পারে।
বিভিন্ন ATR চক্রের পরামিতি পরীক্ষা করুন এবং একটি ভাল স্টপ ক্ষতি দূরত্ব খুঁজে বের করুন।
সংকেতের গুণগত মান উন্নত করার জন্য অতিরিক্ত ফিল্টারিং শর্ত যুক্ত করা হয়েছে, যেমন লেনদেনের ভলিউম, কম্পন সূচক ইত্যাদি।
ট্রেন্ডিং সূচকগুলির সাথে মিলিত হয়ে, আপনি যখন কোনও অস্থিরতার মধ্যে পড়েন, তখন এড়াতে পারেন।
মেশিন লার্নিং অ্যালগরিদম যোগ করা হয়েছে যাতে প্যারামিটার প্যাকেজগুলি স্বয়ংক্রিয়ভাবে অনুকূলিতকরণ করা যায়।
বড় আকারের চার্ট থেকে আরও নিশ্চিতকরণ খুঁজুন এবং সংক্ষিপ্ত লাইন শব্দ দ্বারা বিভ্রান্ত হবেন না।
মুনাফা কমানোর নিয়ম নির্ধারণ করুন এবং ধীরে ধীরে মুনাফা লক করুন।
এই কৌশলটি একাধিক প্রযুক্তিগত সূচক যেমন ডাবল মুভিং এভারেজ ক্রস, ট্রেন্ড ফিল্টারিং, নিশ্চিতকরণ প্রক্রিয়া এবং এটিআর গতিশীল স্টপ লস ব্যবহার করে। প্যারামিটার অপ্টিমাইজেশন এবং ঝুঁকি নিয়ন্ত্রণের ক্ষেত্রে উন্নতির জায়গা রয়েছে, তবে এর ট্রেডিং ধারণাটি সহজ এবং সহজেই প্রতিলিপি করা যায়। এটি একটি আরও শক্তিশালী ট্রেন্ড ট্র্যাকিং কৌশল।
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("QuantCat Intraday Strategy (15M)", overlay=true)
//MA's for basic signals, can experiment with these values
fastEMA = sma(close, 25)
slowEMA = sma(close, 100)
//Parameters for validation of position
lookback_value = 25
maxNoCross=10 //value used for maximum number of crosses on a certain MA to mitigate noise and maximise value from trending markets
//Amount of crosses on MA to filter out noise
ema25_crossover = (cross(close, fastEMA)) == true ? 1 : 0
ema25_crossover_sum = sum(ema25_crossover, lookback_value) ///potentially change lookback value to alter results
crossCount = (ema25_crossover_sum <= maxNoCross)
//Entries long
agrLong = ((crossover(fastEMA, slowEMA)) and (crossCount == true)) ? true : false
consLong = ((close < fastEMA) and (close > slowEMA) and (fastEMA > slowEMA) and (crossCount == true)) ? true : false
//Entries short
agrShort = ((crossunder(fastEMA, slowEMA)) and (crossCount == true)) ? true : false
consShort = ((close > fastEMA) and (close < slowEMA) and (fastEMA < slowEMA) and (crossCount == true)) ? true : false
//ATR
atrLkb = input(14, minval=1, title='ATR Stop Period')
atrRes = input("15", title='ATR Resolution')
atr = request.security(syminfo.tickerid, atrRes, atr(atrLkb))
//Strategy
longCondition = ((agrLong or consLong) == true)
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = ((agrShort or consShort) == true)
if (shortCondition)
strategy.entry("Short", strategy.short)
//Stop multiplier
stopMult = 4
//horizontal stoplosses
longStop = na
longStop := shortCondition ? na : longCondition and strategy.position_size <=0 ? close - (atr * stopMult) : longStop[1]
shortStop = na
shortStop := longCondition ? na : shortCondition and strategy.position_size >=0 ? close + (atr * stopMult) : shortStop[1]
//Strategy exit functions
strategy.exit("Long ATR Stop", "Long", stop=longStop)
strategy.exit("Short ATR Stop", "Short", stop=shortStop)
//Plots
redgreen = (fastEMA > slowEMA) ? green : red
p1 = plot(fastEMA, title="Fast EMA", color=redgreen, linewidth=2)
p2 = plot(slowEMA, title="Slow EMA", color=redgreen, linewidth=2)
fill(p1, p2, color=redgreen)
s1 = plot(longStop, style=linebr, color=red, linewidth=2, title='Long ATR Stop')
s2 = plot(shortStop, style=linebr, color=red, linewidth=2, title='Short ATR Stop')
fill(p2, s1, color=red, transp=95)
fill(p2, s2, color=red, transp=95)