এই কৌশলটির মূল ধারণা হ'ল চলমান গড়ের সোনার ক্রস এবং মৃত ক্রসকে ট্রেডিং সংকেত হিসাবে ব্যবহার করা, প্রবেশ এবং স্টপ তৈরির জন্য দ্বৈত চলমান গড়ের দামের ব্রেকআউটের সাথে একত্রিত করা। এটি একটি ক্রয় সংকেত তৈরি করে যখন স্বল্প সময়ের চলমান গড় দীর্ঘ সময়ের চলমান গড়ের উপরে অতিক্রম করে; একটি বিক্রয় সংকেত উত্পন্ন হয় যখন স্বল্প সময়ের চলমান গড় দীর্ঘ সময়ের চলমান গড়ের নীচে অতিক্রম করে। সুতরাং কৌশলটি ট্রেন্ড অনুসরণ এবং গড় বিপরীত বৈশিষ্ট্য উভয়ই রয়েছে।
এর কার্যকারিতার বিস্তারিত নীতি নিম্নরূপঃ
সংক্ষিপ্ত সময়ের সহজ চলমান গড় (এসএমএ) এবং দীর্ঘ সময়ের সহজ চলমান গড় গণনা করুন।
দামটি চলমান গড়ের উপরে বা নীচে কিনা তা তুলনা করুন। চলমান গড়ের উপরে দামটি দীর্ঘ অবস্থান নির্দেশ করে, যখন নীচের দামটি শর্ট পজিশন দেখায়।
সংক্ষিপ্ত এসএমএ দীর্ঘ এসএমএর উপরে ক্রস করলে লং যান; সংক্ষিপ্ত এসএমএ দীর্ঘ এসএমএর নীচে ক্রস করলে সংক্ষিপ্ত যান।
লং এবং শর্ট পজিশনের মধ্যে স্যুইচ করুন।
এই কৌশলটির প্রধান সুবিধাগুলো হল:
ডাবল মুভিং মিডিয়ার কৌশলটি ট্রেন্ড অনুসরণ এবং গড় বিপরীতমুখী উভয়ই একত্রিত করে, যা বাজারের প্রবণতা অনুসরণ এবং বিপরীতমুখী সুযোগগুলি ক্যাপচার করার সুবিধা গ্রহণ করে।
চলমান গড়ের গোল্ডেন ক্রস এবং ডেড ক্রস কিছু ধারাবাহিকতা আছে, যা মিথ্যা ব্রেকআউট ফিল্টার করতে সাহায্য করে।
চলমান গড় তত্ত্বের উপর ভিত্তি করে, ট্রেন্ডিং এবং রেঞ্জ-বন্ডেড মার্কেটের সময় মুনাফা লক করা লাভজনক।
এই কৌশলটির প্রধান ঝুঁকিগুলি হলঃ
দ্বৈত চলমান গড় কৌশলটি পরামিতিগুলির প্রতি সংবেদনশীল। অনুপযুক্ত পরামিতি সেটিংগুলি ওভারট্রেডিং বা মিস সুযোগের ফলে হতে পারে।
ব্যর্থ ব্রেকআউট ক্ষতির কারণ হতে পারে। ঝুঁকি নিয়ন্ত্রণের জন্য কার্যকর স্টপগুলি বাস্তবায়ন করা উচিত।
প্রবণতা বিপরীত হওয়ার নিশ্চয়তা নেই। মূল প্রবণতা অব্যাহত থাকতে পারে যার ফলে ক্ষতি হতে পারে।
মূল অপ্টিমাইজেশান দিকঃ
সেরা প্যারামিটার সমন্বয় খুঁজে পেতে চলমান গড় পরামিতি পরীক্ষা এবং অপ্টিমাইজ করুন।
ট্রেন্ডিং বাজার এবং রেঞ্জিং বাজারগুলির মধ্যে পার্থক্য করার জন্য একটি প্রবণতা নির্ধারণের সূচক যুক্ত করুন।
ঝুঁকি নিয়ন্ত্রণের জন্য কার্যকর স্টপ লস বাস্তবায়ন করুন, যেমন ট্রেলিং স্টপ লস, স্টপ অর্ডার লস ইত্যাদি।
কৌশলটির দৃঢ়তা বাড়ানোর জন্য অন্যান্য সূচকগুলির সাথে একত্রিত করুন।
উপসংহারে, একটি দ্বৈত চলমান গড় বিপরীত ট্র্যাকিং কৌশল হিসাবে, এটি প্রবণতা ট্র্যাকিং এবং বিপরীত ট্রেডিং উভয় বিবেচনা করে। যথাযথ পরামিতি অপ্টিমাইজেশান এবং ঝুঁকি নিয়ন্ত্রণের সাথে, এটি ভাল ফলাফল অর্জন করতে পারে। তবে, যে কোনও কৌশল দিকনির্দেশমূলক ভুল, স্টপ লস ব্যর্থতা ইত্যাদির মতো ঝুঁকিগুলির মুখোমুখি হয়। পরিবর্তিত বাজারের সাথে খাপ খাইয়ে নেওয়ার জন্য ক্রমাগত পরীক্ষা এবং অপ্টিমাইজেশনের প্রয়োজন।
/*backtest start: 2023-11-29 00:00:00 end: 2023-12-06 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © HPotter // Simple SMA strategy // // WARNING: // - For purpose educate only // - This script to change bars colors //@version=4 strategy(title="Simple SMA Strategy Backtest", shorttitle="SMA Backtest", precision=6, overlay=true) Resolution = input(title="Resolution", type=input.resolution, defval="D") Source = input(title="Source", type=input.source, defval=close) xSeries = security(syminfo.tickerid, Resolution, Source) Length = input(title="Length", type=input.integer, defval=14, minval=2) TriggerPrice = input(title="Trigger Price", type=input.source, defval=close) BarColors = input(title="Painting bars", type=input.bool, defval=true) ShowLine = input(title="Show Line", type=input.bool, defval=true) UseAlerts = input(title="Use Alerts", type=input.bool, defval=false) reverse = input(title="Trade Reverse", type=input.bool, defval=false) pos = 0 xSMA = sma(xSeries, Length) pos := iff(TriggerPrice > xSMA, 1, iff(TriggerPrice < xSMA, -1, nz(pos[1], 0))) nRes = ShowLine ? xSMA : na alertcondition(UseAlerts == true and pos != pos[1] and pos == 1, title='Signal Buy', message='Strategy to change to BUY') alertcondition(UseAlerts == true and pos != pos[1] and pos == -1, title='Signal Sell', message='Strategy to change to SELL') alertcondition(UseAlerts == true and pos != pos[1] and pos == 0, title='FLAT', message='Strategy get out from position') possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() nColor = BarColors ? possig == -1 ? color.red : possig == 1 ? color.green : color.blue : na barcolor(nColor) plot(nRes, title='SMA', color=#00ffaa, linewidth=2, style=plot.style_line)