একাধিক EMA ক্রসওভার ট্রেন্ড অনুসরণ করার কৌশল


সৃষ্টির তারিখ: 2024-01-04 16:22:07 অবশেষে সংশোধন করুন: 2024-01-04 16:22:07
অনুলিপি: 6 ক্লিকের সংখ্যা: 588
1
ফোকাস
1617
অনুসারী

একাধিক EMA ক্রসওভার ট্রেন্ড অনুসরণ করার কৌশল

ওভারভিউ

মাল্টিপল ইএমএ গড় লাইন ক্রস ট্রেন্ড ট্রেডিং কৌশলটি ট্রেন্ড ট্রেডিংয়ের জন্য বিভিন্ন প্যারামিটারের একাধিক ইএমএ গড় লাইন ব্যবহার করে, স্বল্প সময়ের ইএমএগুলিতে গোল্ডফোর্ক তৈরি করার জন্য অতিরিক্ত কাজ করে, মৃত ফোর্ক তৈরি করার জন্য খালি করে। এই কৌশলটি একই সাথে 7 টি ইএমএ গড় লাইন ব্যবহার করে, যার মধ্যে রয়েছে 12, 26, 50, 100, 200, 89, এবং 144 পিরিয়ড। এই ইএমএগুলির ক্রসগুলি তুলনা করে ট্রেন্ডের দিকনির্দেশনা নির্ধারণ করা হয়।

কৌশল নীতি

এই কৌশলটির মূল যুক্তিটি EMA গড়ের ক্রস-প্রিন্সিপল ভিত্তিক। EMA গড়ের মধ্যে, সংক্ষিপ্ত সময়ের EMA মূল্য পরিবর্তনের জন্য বেশি সংবেদনশীল, যা সাম্প্রতিক সময়ের মূল্যের প্রবণতা প্রতিফলিত করতে পারে; এবং দীর্ঘ সময়ের EMA মূল্য পরিবর্তনের জন্য কম সংবেদনশীল, যা দীর্ঘমেয়াদী প্রবণতা প্রতিফলিত করতে পারে। যখন একটি সংক্ষিপ্ত সময়ের EMA নীচে থেকে একটি দীর্ঘ সময়ের EMA পেরিয়ে যায়, তখন তথাকথিত অ্যালুমিনিয়াম ফর্ক তৈরি হয়, যা একটি স্বল্পমেয়াদী প্রবণতা বুলিশকে নির্দেশ করে এবং একটি অতিরিক্ত অর্ডার সেট করতে পারে। বিপরীতে, যখন একটি সংক্ষিপ্ত সময়ের EMA উপরে থেকে নীচে একটি দীর্ঘ সময়ের EMA পেরিয়ে যায়, তখন একটি স্ট্যান্ডার্ড ফর্ক তৈরি হয়, যা একটি স্বল্পমেয়াদী প্রবণতা বিয়ারিশকে নির্দেশ করে এবং একটি খালি অর্ডার সেট করতে পারে।

এই কৌশলটি 7 টি ইএমএ গড় লাইন ব্যবহার করে, যার মধ্যে রয়েছে 12&26, 12&50, 12&100, 12&200, 12&89 এবং 12&144। কৌশলটি একই সাথে 7 টি ইএমএর ক্রসগুলির সাথে তুলনা করে। উদাহরণস্বরূপ, যখন 12 ইএমএ 26 ইএমএতে একটি গোল্ডেন ফর্ক তৈরি করে, তখন একটি পল্টি খোলা হয়; যখন একটি মৃত ফর্ক ঘটে তখন পল্টিটি সমতল করা হয়। কৌশলটি অন্যান্য 6 টি ইএমএ গড় লাইনগুলির জন্য একই যুক্তি ব্যবহার করে।

সামর্থ্য বিশ্লেষণ

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

ঝুঁকি বিশ্লেষণ

এই কৌশলটির প্রধান ঝুঁকি হল যে একাধিক ইএমএ গড়রেখার সমন্বয় ব্যবহার করার সময় ক্রস সিগন্যাল খুব ঘন ঘন হতে পারে। উদাহরণস্বরূপ, 12 তম ইএমএ এবং 26 তম ইএমএর মধ্যে ক্রসগুলি 12 তম ইএমএ এবং 200 তম ইএমএর মধ্যে ক্রসগুলির চেয়ে বেশি ঘন ঘন হয়। যদি আপনি পজিশন খোলার এবং পজিশন খোলার ঘনত্ব নিয়ন্ত্রণ করতে না পারেন তবে লেনদেনের ব্যয় এবং স্লাইড পয়েন্টের ক্ষতি বাড়বে। এছাড়াও, ইএমএ গড়রেখার নিজেই দামের পরিবর্তনের জন্য পিছিয়ে রয়েছে, যার ফলে সংকেতটি অকালীন হতে পারে।

উপরোক্ত ঝুঁকি হ্রাস করার জন্য, ইএমএর চক্রের প্যারামিটারগুলি যথাযথভাবে অপ্টিমাইজ করা যেতে পারে, যাতে এর ক্রস ফ্রিকোয়েন্সি যথাযথ পরিসরে থাকে; অন্যথায়, এক দিনের মধ্যে পজিশন খোলার সংখ্যা যথাযথভাবে সীমাবদ্ধ করা বা ঝুঁকি নিয়ন্ত্রণের জন্য স্টপ লস সেট করা যেতে পারে।

অপ্টিমাইজেশান দিক

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

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("EMA Trades", overlay=true, pyramiding=4)

src = input(close, title="Source")

shortestLine = input(12, minval=1, title="Shortest Line")
shorterLine = input(26, minval=1, title="Shorter Line")
shortLine = input(50, minval=1, title="Short Line")
middleLine = input(100, minval=1, title="Middle Line")
longLine = input(200, minval=1, title="Long Line")
longerLine = input(89, minval=1, title="Longer Line")
longestLine = input(144, minval=1, title="Longest Line")

shortestLineOutput = ema(src, shortestLine)
shorterLineOutput = ema(src, shorterLine)
shortLineOutput = ema(src, shortLine)
middleLineOutput = ema(src, middleLine)
longLineOutput = ema(src, longLine)
longerLineOutput = ema(src, longerLine)
longestLineOutput = ema(src, longestLine)

//plot(shortestLineOutput, title="Shortest EMA", color=#ffffff)
//plot(shorterLineOutput, title="Shorter EMA", color=#e54fe6)
//plot(shortLineOutput, title="Short EMA", color=#4e6bc3)
//plot(middleLineOutput, title="Middle EMA", color=#1dd6d8)
//plot(longLineOutput, title="Long EMA", color=#d0de10)
//plot(longerLineOutput, title="Longer EMA", color=#ef6a1a)
//plot(longestLineOutput, title="Longest EMA", color=#ff0e0e)

longEnrtyCondition_1 = crossover(shortestLineOutput[1], shorterLineOutput[1]) and shortestLineOutput > shorterLineOutput
longEntryCondition_2 = crossover(shortestLineOutput[1], shortLineOutput[1]) and shortestLineOutput > shortLineOutput
longEnrtyCondition_3 = crossover(shortestLineOutput[1], middleLineOutput[1]) and shortestLineOutput > middleLineOutput
longEntryCondition_4 = crossover(shortestLineOutput[1], longLineOutput[1]) and shortestLineOutput > longLineOutput

shortEnrtyCondition_1 = crossunder(shortestLineOutput[1], shorterLineOutput[1]) and shortestLineOutput < shorterLineOutput
shortEntryCondition_2 = crossunder(shortestLineOutput[1], shortLineOutput[1]) and shortestLineOutput < shortLineOutput
shortEnrtyCondition_3 = crossunder(shortestLineOutput[1], middleLineOutput[1]) and shortestLineOutput < middleLineOutput
shortEntryCondition_4 = crossunder(shortestLineOutput[1], longLineOutput[1]) and shortestLineOutput < longLineOutput

if (longEnrtyCondition_1)
    strategy.entry("Buy1", strategy.long)
    strategy.exit("Sell1")

if (longEntryCondition_2)
    strategy.entry("Buy2", strategy.long)
    strategy.exit("Sell2")

if (longEnrtyCondition_3)
    strategy.entry("Buy3", strategy.long)
    strategy.exit("Sell3")

if (longEntryCondition_4)
    strategy.entry("Buy4", strategy.long)
    strategy.exit("Sell4")

if (shortEnrtyCondition_1)
    strategy.entry("Sell1", strategy.short)
    strategy.exit("Buy1")

if (shortEntryCondition_2)
    strategy.entry("Sell2", strategy.short)
    strategy.exit("Buy2")

if (shortEnrtyCondition_3)
    strategy.entry("Sell3", strategy.short)
    strategy.exit("Buy3")

if (shortEntryCondition_4)
    strategy.entry("Sell4", strategy.short)
    strategy.exit("Buy4")