ডুয়াল মুভিং এভারেজ ক্রসওভার একটি সহজ এবং কার্যকর স্কাল্পিং কৌশল যা স্বল্পমেয়াদী প্রবণতা আন্দোলনগুলি ক্যাপচার করার জন্য প্রবেশ এবং প্রস্থান সংকেত হিসাবে মূল্য এবং চলমান গড়ের মধ্যে ক্রসওভার সংকেত ব্যবহার করে।
কৌশলটি বিভিন্ন সময়ের দুটি চলমান গড় ব্যবহার করে - একটি স্বল্পমেয়াদী এমএ লাইন এবং একটি দীর্ঘমেয়াদী এমএ লাইন। এটি ক্রয় সংকেত উত্পন্ন করে যখন স্বল্পমেয়াদী এমএ নীচে থেকে দীর্ঘমেয়াদী এমএ এর উপরে অতিক্রম করে। বিক্রয় সংকেত উত্পন্ন হয় যখন স্বল্পমেয়াদী এমএ উপরে থেকে দীর্ঘতম এমএ এর নীচে অতিক্রম করে।
কৌশলটি প্রথমে
কিছু অবৈধ সংকেত ফিল্টার করার জন্য,
অবশেষে, যখন মূল্য বিপরীত দিকে এমএ লাইন অতিক্রম করে তখন বিদ্যমান অবস্থানগুলি বন্ধ হয়ে যায়।
এই ঝুঁকিগুলি হ্রাস করা যেতে পারে ভোক্তার অস্থিরতা, ট্রেইলিং স্টপ বা শতাংশ স্টপ ইত্যাদির উপর ভিত্তি করে গতিশীল এমএ সময়কাল ব্যবহার করে।
কৌশলটি বিভিন্ন উপায়ে উন্নত করা যেতে পারে:
অস্থিরতার উপর ভিত্তি করে MA পরামিতিগুলিকে গতিশীলভাবে অনুকূলিত করুন।
সিগন্যালের গুণমান উন্নত করার জন্য ভলিউম স্পাইকের মত অতিরিক্ত ফিল্টার যুক্ত করুন।
অকাল বন্ধ হ্রাস করতে ফ্লোটিং বা শতাংশ স্টপ ব্যবহার করুন।
মাল্টি-কন্ডিশন ভ্যালিডেশনের জন্য এমএসিডি, আরএসআই এর মতো অন্যান্য সূচকগুলির সাথে একত্রিত করুন।
ট্রেড প্রতি ক্ষতি নিয়ন্ত্রণের জন্য ডায়নামিক পজিশন সাইজিং এর মত স্বয়ংক্রিয় ঝুঁকি ব্যবস্থাপনা যোগ করুন।
আরো সঠিক সংকেত উৎপন্ন মডেলের জন্য মেশিন লার্নিং ব্যবহার করুন।
ডুয়াল এমএ ক্রসওভার কৌশলটি স্বল্পমেয়াদী ব্যবসায়ের জন্য একটি কার্যকর সিস্টেম। সূক্ষ্ম মিটিং পরামিতি, ঝুঁকি পরিচালনা এবং অন্যান্য সরঞ্জামগুলির সাথে একত্রিত হওয়া এর লাভজনকতা আরও বাড়িয়ে তুলতে পারে। সামগ্রিকভাবে এটি ছোট ইনট্রাডে মুভগুলির জন্য স্কাল্পিংয়ের জন্য সহজ এবং বাস্তবায়ন করা সহজ।
/*backtest start: 2023-09-29 00:00:00 end: 2023-10-29 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("MovingAvg Cross", overlay=true) length = input(50) confirmBars = input(2) price = close ma = sma(price, length) bcond = price > ma bcount = 0 bcount := bcond ? nz(bcount[1]) + 1 : 0 clc=close[0]>close[1] clc0=close[0]>open[0] clc1=close[1]>open[1] if clc and clc0 and clc1 and (bcount == confirmBars) strategy.entry("buy", strategy.long) scond = price < ma scount = 0 scount := scond ? nz(scount[1]) + 1 : 0 csc=close[0]<close[1] csc0=close[0]<open[0] csc1=close[1]<open[1] if csc and csc0 and csc1 and (scount == confirmBars) strategy.entry("sell", strategy.short) strategy.close("buy", when=scond) strategy.close("sell",when=bcond) plot(ma, color=color.red) //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)