এটি ডাবল মুভিং এভারেজ ক্রসওভারের উপর ভিত্তি করে একটি ট্রেডিং কৌশল। এটি ক্রয় এবং বিক্রয় সংকেত তৈরি করে যখন দুটি বিভিন্ন দৈর্ঘ্যের মুভিং এভারেজ ক্রস হয়। বিশেষত, দ্রুত এমএ ধীর এমএ এর উপরে অতিক্রম করলে এটি দীর্ঘ হয় এবং দ্রুত এমএ ধীর এমএ এর নীচে অতিক্রম করলে এটি সংক্ষিপ্ত হয়।
এই কৌশলটির মূল যুক্তি দুটি চলমান গড়ের মধ্যে ক্রসওভার নীতিতে রয়েছে। একটি চলমান গড় একটি নির্দিষ্ট সময়ের মধ্যে গাণিতিক গড় মূল্য। এটি বাজার গোলমাল ফিল্টার করতে এবং আরও স্পষ্ট মূল্য প্রবণতা প্রকাশ করতে সহায়তা করে।
এই কৌশলতে, স্বল্পমেয়াদী এমএ স্বল্পমেয়াদী প্রবণতা ক্যাপচার করে এবং দীর্ঘমেয়াদী এমএ দীর্ঘমেয়াদী প্রবণতা ক্যাপচার করে। যেহেতু স্বল্পমেয়াদী এমএ সর্বশেষ মূল্য পরিবর্তনের প্রতিক্রিয়া জানাতে আরও সংবেদনশীল, দীর্ঘমেয়াদী এমএ অতিক্রম করা একটি প্রবণতা বিপরীতের লক্ষণ।
বিশেষত, কৌশলটি ব্যবহারকারীদের দ্বারা সংজ্ঞায়িত long_period এবং short_period এর উপর ta.sma ব্যবহার করে এমএ গণনা করে। এটি তারপরে দুটি এমএ এর মধ্যে সোনার ক্রসওভার এবং মৃত্যুর ক্রসওভার সনাক্ত করতে ta.crossover এবং ta.crossunder ব্যবহার করে। যখন সংক্ষিপ্ত এমএ দীর্ঘ এমএ এর উপরে অতিক্রম করে, দীর্ঘ যান। যখন সংক্ষিপ্ত এমএ নীচে অতিক্রম করে, সংক্ষিপ্ত যান।
এই কৌশলটির প্রধান সুবিধাগুলির মধ্যে রয়েছেঃ
এছাড়া বেশ কিছু ঝুঁকি রয়েছে:
ঝুঁকি হ্রাস করার জন্য, পরামিতিগুলি সামঞ্জস্য করা যেতে পারে, স্টপ লস এবং লাভ গ্রহণ অন্তর্ভুক্ত করা যেতে পারে, বা অন্যান্য প্রযুক্তিগত সূচক যোগ করা যেতে পারে।
আরও অপ্টিমাইজেশনের সুযোগ রয়েছেঃ
উপসংহারে, এটি অ্যালগরিদমিক ট্রেডিংয়ের জন্য একটি আদর্শ স্টার্টার কৌশল, যুক্তি এবং পরামিতিগুলির সরলতার জন্য ধন্যবাদ, যখন এখনও কার্যকরভাবে বাজারের বিপরীতমুখীতা ক্যাপচার করতে সক্ষম হয়। একই সময়ে, এটি বিভিন্ন ট্রেডিং প্রয়োজনের সাথে খাপ খাইয়ে নেওয়ার জন্য অপ্টিমাইজেশনের জন্য দুর্দান্ত সম্ভাবনা রয়েছে।
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Cross 2 Moving Average Strategy", shorttitle="2MA Cross", overlay=true) // User-defined input for moving averages long_period = input(20, title="Long Period") short_period = input(5, title="Short Period") type_ma = input.string("SMA", title = "MA type", options = ["SMA", "EMA"]) // Calculating moving averages long_ma = ta.sma(close, long_period) short_ma = ta.sma(close, short_period) // Plot moving averages plot(long_ma, title="Long Moving Average", color=color.red) plot(short_ma, title="Short Moving Average", color=color.green) // Strategy logic for crossing of moving averages longCondition = ta.crossover(short_ma, long_ma) shortCondition = ta.crossunder(short_ma, long_ma) // Entry orders if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Optional: Add stop loss and take profit stop_loss_perc = input(1, title="Stop Loss (%)") / 100 take_profit_perc = input(2, title="Take Profit (%)") / 100 strategy.exit("Exit Long", from_entry="Long", stop=close*(1-stop_loss_perc), limit=close*(1+take_profit_perc)) strategy.exit("Exit Short", from_entry="Short", stop=close*(1+stop_loss_perc), limit=close*(1-take_profit_perc))