
ডাবল ইন্ডেক্স মুভিং এভারেজ ক্রস-টার্নিং-এক্সট্রেডিং স্ট্র্যাটেজি হল একটি পরিমাণগত ট্রেডিং কৌশল যা দুটি ভিন্ন পিরিয়ডের ইএমএ লাইন (৫-পিরিয়ড এবং ২১-পিরিয়ড) ক্রস সিগন্যালের উপর ভিত্তি করে তৈরি হয়। এই কৌশলটি স্বল্পমেয়াদী ইএমএ এবং দীর্ঘমেয়াদী ইএমএর মধ্যে গোল্ডফোর্ক এবং ডাইফোর্ক চিহ্নিত করে বাজারের প্রবণতার পরিবর্তন পয়েন্টগুলিকে ধরে ট্রেন্ড ট্র্যাকিং ট্রেডিং করতে সক্ষম হয়। যখন স্বল্পমেয়াদী ইএমএ ঊর্ধ্বমুখী হয়ে দীর্ঘমেয়াদী ইএমএ অতিক্রম করে তখন গোল্ডফোর্ক তৈরি হয় এবং একাধিক সংকেত ট্রিগার করা হয়; যখন স্বল্পমেয়াদী ইএমএ ঊর্ধ্বমুখী হয়ে দীর্ঘমেয়াদী ইএমএ অতিক্রম করে তখন ডাইফোর্ক তৈরি হয় এবং একটি ফাঁকা সংকেত ট্রিগার করা হয়। এই কৌশলটি ক্রস সিগন্যালের সময় বিপরও পজি পজিশন
এই কৌশলটির মূল নীতিটি বাজারের প্রবণতাগুলির পরিবর্তনের পয়েন্টগুলি সনাক্ত করার জন্য চলমান গড় ক্রস সংকেতের উপর ভিত্তি করে। এটি নিম্নরূপ বাস্তবায়িত হয়ঃ
কৌশলটি প্রবণতা ট্র্যাকিংয়ের ধারণাটি গ্রহণ করে, প্রবণতার দিকের পরিবর্তনগুলি নিশ্চিত করার জন্য একটি চলমান গড়কে ক্রস করে এবং প্রবণতা নিশ্চিত হওয়ার পরে প্রবণতা অনুসারে সংশ্লিষ্ট দিকের অবস্থান স্থাপন করে। ইএমএ সূচকগুলি দামের পরিবর্তনের প্রতি আরও সংবেদনশীল, সহজ চলমান গড়ের চেয়ে দ্রুত ট্রেন্ডের পরিবর্তনগুলি ধরতে পারে।
কোডের গভীর বিশ্লেষণের মাধ্যমে, এই কৌশলটির নিম্নলিখিত উল্লেখযোগ্য সুবিধাগুলি রয়েছেঃ
যদিও এই কৌশলটি যুক্তিসঙ্গতভাবে পরিকল্পিত, তবে এর মধ্যে কিছু সম্ভাব্য ঝুঁকি রয়েছেঃ
অস্থির বাজার ঝুঁকিঃ ইএমএ ক্রস সিগন্যাল ঘন ঘন হয় এবং ক্রমাগত স্টপ ক্ষতির জন্য মিথ্যা সংকেত তৈরি করতে পারে
পিছিয়ে পড়ার ঝুঁকিঃ যদিও ইএমএ দ্রুত সাড়া দেয়, পিছিয়ে পড়া সূচক হিসাবে এখনও কিছুটা বিলম্ব রয়েছে এবং প্রবণতা শেষ হওয়ার পরে সংকেত দেওয়া হতে পারে
তহবিল পরিচালনার ঝুঁকিঃ কৌশলটি 100% অ্যাকাউন্টের নেট মূল্য ব্যবহার করে ট্রেড করা হয়, উচ্চতর লিভারেজ রয়েছে, যা ক্রমাগত ক্ষতির ক্ষেত্রে অ্যাকাউন্টের নেট মূল্যের ব্যাপক হ্রাস হতে পারে
স্টপ লস মেকানিজমের অভাবঃ কোডটিতে স্পষ্টভাবে স্টপ লস সেটিং নেই, চরম বাজার পরিস্থিতিতে বড় ক্ষতির মুখোমুখি হতে পারে
মুনাফা সুরক্ষার অভাবঃ কোনও স্টপ বা মোবাইল স্টপ লস সেট করা নেই, যার ফলে মুনাফা প্রত্যাহার হতে পারে
কোডের গভীর বিশ্লেষণের উপর ভিত্তি করে, এই কৌশলটি নিম্নলিখিত দিকগুলিতে অপ্টিমাইজ করা যেতে পারেঃ
প্রবণতা ফিল্টার যুক্ত করুনঃ দুর্বল প্রবণতা বাজারের ট্রেডিং সংকেতগুলি ফিল্টার করার জন্য ADX সূচকটি প্রবর্তন করুন, কেবলমাত্র যখন ADX একটি নির্দিষ্ট থ্রেশহোল্ডের চেয়ে বড় হয় তখনই লেনদেন করুন (যেমন 20) । অস্থির বাজারে মিথ্যা সংকেত হ্রাস করুন। এইভাবে অপ্টিমাইজেশন কার্যকরভাবে বিজয়ী হার বাড়িয়ে তুলতে পারে, কারণ একটি চলন্ত গড় কৌশল শক্তিশালী প্রবণতা বাজারে আরও ভাল কাজ করে।
ডায়নামিক স্টপ বাস্তবায়ন করুনঃ এটিআর ভিত্তিক ডায়নামিক স্টপ যুক্ত করুন, যা বাজার অস্থিরতার সাথে স্বয়ংক্রিয়ভাবে স্টপ পজিশনগুলি সামঞ্জস্য করতে পারে, যা ঝুঁকি নিয়ন্ত্রণ করতে পারে এবং স্টপ খুব শক্ত হওয়ার কারণে তাড়াতাড়ি বেরিয়ে না যায়। এটি দীর্ঘমেয়াদী প্রবণতা অনুসরণ করার জন্য বিশেষভাবে মূল্যবান।
ইএমএ প্যারামিটার অপ্টিমাইজ করুনঃ বিভিন্ন ইএমএ চক্রের সমন্বয় যেমন 3 এবং 15, 8 এবং 34 ইত্যাদি প্যারামিটার অপ্টিমাইজেশনের মাধ্যমে পরীক্ষা করে এমন প্যারামিটারগুলি সন্ধান করুন যা নির্দিষ্ট বাজারের পরিস্থিতিতে আরও ভাল কাজ করে। বিভিন্ন বাজার এবং সময় ফ্রেমগুলির জন্য বিভিন্ন সর্বোত্তম প্যারামিটার প্রয়োজন হতে পারে।
আংশিক মুনাফা গ্রহণের ব্যবস্থাঃ যখন মুনাফা একটি নির্দিষ্ট স্তরে পৌঁছে যায় (যেমন 2x এটিআর), তখন মুনাফা লক করার জন্য কিছু পজিশন মুছে ফেলা যায় এবং অবশিষ্ট পজিশনগুলি ট্রেন্ড অনুসরণ করে থাকে। এটি বড় ট্রেন্ডের ক্ষমতা ধরে রাখার পাশাপাশি সামগ্রিক মুনাফার স্থায়িত্ব বাড়িয়ে তোলে।
ট্রেডিং টাইম ফিল্টার যুক্ত করুনঃ কিছু বাজার নির্দিষ্ট সময়ের মধ্যে অত্যধিক ওঠানামা বা অপর্যাপ্ত তরলতা রয়েছে, ট্রেডিং টাইম উইন্ডো সেট করা যেতে পারে, কেবলমাত্র বাজারের সবচেয়ে সক্রিয় এবং স্থিতিশীল সময়ে ট্রেড করা। এটি উচ্চ ওঠানামা বা নিম্ন দক্ষতার বাজার পরিবেশ এড়াতে সহায়তা করে।
পজিশন ম্যানেজমেন্ট কৌশল বাস্তবায়ন করুনঃ বর্তমান স্থির শতাংশ পজিশন ম্যানেজমেন্ট পদ্ধতির উন্নতি করুন, উচ্চতর অস্থিরতাযুক্ত বাজারের পরিবেশে পজিশন হ্রাস করার জন্য পজিশন সমন্বয় গ্রহণ করুন, বিপরীতে পজিশন বাড়ান, ঝুঁকির খোলার ধারাবাহিকতা বজায় রাখার জন্য।
দ্বিতীয় নিশ্চিতকরণ সংকেত যোগ করুনঃ RSI, র্যান্ডম সূচক বা MACD এর মতো অন্যান্য প্রযুক্তিগত সূচকগুলির সাথে দ্বিতীয় নিশ্চিতকরণ হিসাবে, কেবলমাত্র যখন একাধিক সূচক একই দিকে নির্দেশ করে তখনই লেনদেন করা হয়, সংকেতের গুণমান উন্নত করা হয়।
ডাবল ইন্ডেক্স মুভিং এভারেজ ক্রস-টার্নিং-এক্সিট কৌশল একটি সহজ এবং কার্যকর প্রবণতা ট্র্যাকিং ট্রেডিং সিস্টেম, যা 5 চক্র এবং 21 চক্রের ইএমএর ক্রস-সিগন্যালগুলি সনাক্ত করে বাজারের প্রবণতা পরিবর্তনের পয়েন্টগুলিকে ধরে। এই কৌশলটি স্পষ্টভাবে কাজ করে, স্বয়ংক্রিয়ভাবে কাজ করে এবং উদ্দেশ্যমূলকভাবে সংকেত উত্পন্ন করে, বিশেষত মাঝারি এবং দীর্ঘমেয়াদী প্রবণতা স্পষ্ট বাজারের পরিবেশে।
যদিও বাজারের অস্থিরতার মধ্যে মিথ্যা সংকেতের ঝুঁকি এবং কিছুটা পিছিয়ে থাকা সত্ত্বেও, প্রবণতার শক্তি ফিল্টারিং, প্যারামিটার নির্বাচন অপ্টিমাইজ করা, গতিশীল স্টপ লস এবং পজিশন ম্যানেজমেন্টের উন্নতি করা ইত্যাদির মাধ্যমে কৌশলগুলির স্থিতিশীলতা এবং লাভজনকতা উল্লেখযোগ্যভাবে বাড়ানো যেতে পারে। সম্পূর্ণ স্বয়ংক্রিয় প্রবণতা ট্র্যাকিং সিস্টেমের সন্ধানকারী ব্যবসায়ীদের জন্য এটি একটি আদর্শ প্রাথমিক কাঠামো, যা ব্যক্তিগত ঝুঁকি পছন্দ এবং ট্রেডিং শৈলীর উপর ভিত্তি করে আরও কাস্টমাইজ এবং অপ্টিমাইজ করা যেতে পারে।
বিশেষ করে, এই কৌশলটি বাজারের কাঠামোগত বিশ্লেষণ, মৌলিক বা মৌসুমী বিশ্লেষণের মতো পদ্ধতির সাথে একত্রিত করে, একটি আরও ব্যাপক ট্রেডিং সিস্টেম তৈরি করা যায় যা বিভিন্ন বাজারের পরিবেশে প্রতিযোগিতামূলক থাকে।
/*backtest
start: 2025-01-01 00:00:00
end: 2025-04-06 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=6
strategy("EMA Cross Strategy with EMA Turning Exit", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, pyramiding=0)
// 定义EMA参数
ema5 = ta.ema(close, 5)
ema21 = ta.ema(close, 21)
// 绘制EMA线
plot(ema5, color=color.blue, title="EMA 5", linewidth=1)
plot(ema21, color=color.red, title="EMA 21", linewidth=1)
// 定义金叉和死叉条件
goldCross = ta.crossover(ema5, ema21)
deadCross = ta.crossunder(ema5, ema21)
// 在图表上标记交叉信号
plotshape(goldCross, title="Golden Cross", style=shape.triangleup, location=location.belowbar, color=color.green, size=size.normal)
plotshape(deadCross, title="Death Cross", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.normal)
// 执行交易策略
// 开多单条件:金叉信号且无多头仓位
if (goldCross and strategy.position_size <= 0)
strategy.close("Short") // 平掉空头仓位(如果有)
strategy.entry("Long", strategy.long)
// 开空单条件:死叉信号且无空头仓位
if (deadCross and strategy.position_size >= 0)
strategy.close("Long") // 平掉多头仓位(如果有)
strategy.entry("Short", strategy.short)
// 显示策略参数和状态
var table t = table.new(position.top_right, 2, 3, bgcolor=color.white)
table.cell(t, 0, 0, "EMA Fast", text_color=color.blue)
table.cell(t, 1, 0, "5", text_color=color.blue)
table.cell(t, 0, 1, "EMA Slow", text_color=color.red)
table.cell(t, 1, 1, "21", text_color=color.red)
table.cell(t, 0, 2, "Net Profit", text_color=color.black)
table.cell(t, 1, 2, str.tostring(strategy.netprofit), text_color=color.black)