ডাবল মুভিং এভারেজ ক্রসওভার কৌশল

লেখক:চাওঝাং, তারিখ: ২০২৩-১০-১৭ ১৩ঃ৫৪ঃ০৫
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটি বিভিন্ন সময়সীমার সাথে দুটি চলমান গড়ের মধ্যে পার্থক্যের উপর ভিত্তি করে ট্রেডিং সংকেত তৈরি করে। এটি একটি দ্রুত এসএমএ এবং একটি ধীর এসএমএ গণনা করে এবং যখন দ্রুত এসএমএ নীচে থেকে ধীর এসএমএর উপরে অতিক্রম করে তখন ক্রয় সংকেত তৈরি করে এবং যখন দ্রুত এসএমএ উপরে থেকে ধীর এসএমএর নীচে অতিক্রম করে তখন বিক্রয় সংকেত তৈরি করে।

এটি কিভাবে কাজ করে

এই কৌশলটির মূল যুক্তি হ'ল দুটি চলমান গড়, এসএমএ ((লেন 1) এবং এসএমএ ((লেন 2) গণনা করা এবং তাদের পার্থক্য। এখানে len1 দ্রুততম এমএ এবং len2 ধীরতম এমএ এর সময়কে উপস্থাপন করে। দ্রুততম এমএ দামের পরিবর্তনে দ্রুত প্রতিক্রিয়া জানায় যখন ধীরতম এমএ দীর্ঘমেয়াদী প্রবণতা আরও ভাল প্রতিফলিত করে।

যখন দ্রুততম এমএ নীচে থেকে ধীরতম এমএ এর উপরে অতিক্রম করে, এটি সংকেত দেয় যে স্বল্পমেয়াদী মূল্য দীর্ঘমেয়াদী প্রবণতার উপরে উঠতে শুরু করেছে, এবং এইভাবে একটি দীর্ঘ এন্ট্রি নেওয়া যেতে পারে। যখন দ্রুততম এমএ উপরে থেকে ধীরতম এমএ এর নীচে অতিক্রম করে, এটি সংকেত দেয় যে স্বল্পমেয়াদী মূল্য প্রবণতার নীচে পড়তে শুরু করেছে, এবং একটি শর্ট পজিশন প্রবেশ করা যেতে পারে।

মিথ্যা সংকেতগুলি ফিল্টার করার জন্য, কৌশলটি ট্রেডিং সিগন্যাল লাইন হিসাবে আউট 3 ব্যবহার করে, যা দ্রুততম এমএ এবং মূল্যের মাঝামাঝি পয়েন্টের মধ্যে মসৃণ পার্থক্য। শুধুমাত্র যখন আউট 3 ডিফ ক্রস করে তখনই ট্রেডগুলি ট্রিগার করা হবে।

বিশেষত, লং ভেরিয়েবলটি ধনাত্মক মান ধারণ করে যখন আউট 3 ডিআইএফ এর উপরে অতিক্রম করে, ক্রয় সংকেত দেয়। সংক্ষিপ্ত ভেরিয়েবলটি নেতিবাচক মান ধারণ করে যখন আউট 3 ডিআইএফ এর নীচে অতিক্রম করে, বিক্রয় সংকেত উত্পন্ন করে। দীর্ঘ সংকেত উপস্থিত হলে কৌশল.এন্ট্রি এন্ট্রি দীর্ঘ হয় এবং সংক্ষিপ্ত সংকেত উপস্থিত হলে কৌশল.বন্ধ দীর্ঘ বন্ধ হয়।

সুবিধা বিশ্লেষণ

এটি ট্রেন্ড অনুসরণ করার জন্য একটি খুব সহজ এবং স্বজ্ঞাত কৌশল। এটি ট্রেন্ড বিপরীত পয়েন্ট সনাক্ত করতে বিভিন্ন সময়ের দুটি এমএ এর ক্রসওভার ব্যবহার করে, যা একক এমএ সিস্টেমের চেয়ে বেশি নির্ভরযোগ্য হতে পারে। ট্রেডিং সিগন্যাল লাইনের ফিল্টারটি কিছুটা পরিমাণে অস্থির বাজারে মিথ্যা সংকেত এড়াতেও সহায়তা করে।

স্টপ লস এর তুলনায়, এটি ট্রেন্ডের বিপরীত সময়ে সময়মতো পজিশন বন্ধ করে ক্ষতি নিয়ন্ত্রণ করে।

এই কৌশলটির কয়েকটি পরামিতি রয়েছে এবং এটি বোঝা এবং সামঞ্জস্য করা সহজ, এটি একটি শিক্ষানবিস এর আলগো ট্রেডিং কৌশল হিসাবে উপযুক্ত।

ঝুঁকি এবং উন্নতি

এই কৌশলটির সবচেয়ে বড় ঝুঁকি হ'ল ভুলভাবে নির্বাচিত এমএ সময়কাল যা খারাপ সংকেত দেয়। যদি len1 খুব দীর্ঘ হয় তবে প্রাথমিক ট্রেন্ড মুভগুলি মিস করা হবে; যদি খুব ছোট হয় তবে whipsaws বৃদ্ধি পাবে। যদি len2 খুব দীর্ঘ হয় তবে অবস্থান সমন্বয় বিলম্বিত হবে; যদি খুব ছোট হয় তবে এটি বাজারের গোলমাল দ্বারা বিরক্ত হতে পারে।

প্যারামিটারগুলি সর্বোত্তম সমন্বয় খুঁজে পেতে বিভিন্ন len1 এবং len2 মান চেষ্টা করে অনুকূলিত করা যেতে পারে। অভিযোজনশীল এমএগুলিকে গতিশীলভাবে সময়ের পরিবর্তন করতেও পরীক্ষা করা যেতে পারে। মিথ্যা সংকেতগুলি আরও হ্রাস করতে ফিল্টারটিও উন্নত করা যেতে পারে।

ট্রেন্ড অনুসরণকারী কৌশলগুলি স্টপ লস বা পজিশনের আকারের মাধ্যমে একক ব্যবসায়ের ক্ষতি নিয়ন্ত্রণ করা উচিত।

সিদ্ধান্ত

ডুয়াল এমএ ক্রসওভার কৌশলটি প্রতিনিধি অনুসরণ করে একটি মূল প্রবণতা। এর সহজ ডুয়াল এমএ ক্রসওভার সিস্টেম স্থিতিশীল সংকেত সরবরাহ করে, যখন ফিল্টার গোলমাল এড়াতে সহায়তা করে। অনুকূলিত এমএ সময়কালের সাথে এটি ভাল পারফরম্যান্স অর্জন করতে পারে। কৌশলটি শিক্ষানবিশদের জন্য অ্যালগো ট্রেডিং কৌশল হিসাবে ভালভাবে কাজ করে।


/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//by afrazium
//@version=3
strategy(title="SMA Diff strat", shorttitle="SMAD STR", overlay=false, initial_capital=1, precision=8, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, calc_on_order_fills= false, calc_on_every_tick=false, pyramiding=0)
len1 = input(50, minval=1, title="Length1"), len2 = input(100, minval=1, title="Length2"), smo = input(1, minval=1, title="Smoothing")
src = input(ohlc4, title="Source")

mid = src
expr1 = sma(src, len1), expr2 = sma(src, len2)
dif = (expr1 - expr2), out1 = (mid - expr1), out2 = (mid - expr2), out3 = sma(out1, smo)

long = crossover(out3, dif) ? out3 : na, short = crossunder(out3, dif) ? out3 : na

plot(out3, color=black, linewidth=2), hline(0)
clr = out2 >= out1 ? lime : red, plot(dif, color=clr, linewidth=2)
plot(long, title = 'Crossover', color = green, style = circles, linewidth=4), plot(short, title = 'Crossunder', color = red, style = circles, linewidth=4)

strategy.entry("buy", strategy.long, when=crossover(out1, dif))
strategy.close("buy", when=crossunder(out1, dif))

//plot(out2, color=blue, linewidth=2)
//A = plot(mid/10, color=red, linewidth=1, transp=100), B = plot(mid/20, color=red, linewidth=1, transp=100)
//C = plot(-mid/10, color=green, linewidth=1, transp=100), D = plot(-mid/20, color=green, linewidth=1, transp=100)
//fill(A, B, color=red), fill(C, D, color=green)



আরো