দ্বি-মুখী EMA ক্রস পরিমাণগত ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2024-01-24 17:31:41 অবশেষে সংশোধন করুন: 2024-01-24 17:31:41
অনুলিপি: 0 ক্লিকের সংখ্যা: 602
1
ফোকাস
1617
অনুসারী

দ্বি-মুখী EMA ক্রস পরিমাণগত ট্রেডিং কৌশল

ওভারভিউ

এই কৌশলটি বাজারের প্রধান প্রবণতার দিকনির্দেশের জন্য দ্বি-দিকের ইএমএ সূচক ব্যবহার করে এবং আরএসআই সূচককে প্রবেশের সময় হিসাবে বেছে নেয়। এটি প্রবণতা অনুসরণকারী ধরণের অ্যালগরিদম ট্রেডিং কৌশল।

কৌশল নীতি

  1. স্বল্পমেয়াদী, মধ্যমেয়াদী এবং দীর্ঘমেয়াদী তিনটি মাত্রার মূল বাজার প্রবণতার দিকনির্দেশনাগুলি সনাক্ত করতে বিভিন্ন পিরিয়ডের একাধিক গ্রুপের ইএমএর গড় গণনা করুন
  2. যখন একটি স্বল্পমেয়াদী ইএমএ একটি মাঝারি বা দীর্ঘমেয়াদী ইএমএ অতিক্রম করে, তখন এটি একটি মুদ্রাস্ফীতির প্রবণতা হিসাবে বিবেচিত হয়
  3. যখন স্বল্পমেয়াদী ইএমএ মধ্যমেয়াদী ইএমএ অতিক্রম করে, তখন এটি একটি নেতিবাচক প্রবণতা হিসাবে বিবেচিত হয়
  4. আরএসআই এর সাথে মিলিতভাবে, আরএসআই সূচকটি সঠিক সময়ে প্রবেশের জন্য ব্যবহার করা যেতে পারে। এটি একটি ওভারবয় ওভারসোল অঞ্চল নির্ধারণ করতে ব্যবহার করা যেতে পারে।
  5. মুদ্রাস্ফীতির প্রবণতায়, আরএসআই সূচকটি নিম্ন স্তরে অবস্থান করার সময় আরও বেশি অবস্থান করে; পতনের প্রবণতায়, আরএসআই সূচকটি উচ্চ স্তরে হস্তক্ষেপ করে

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

কৌশলগত শক্তি বিশ্লেষণ

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

  1. মাল্টিপল ইএমএ সমান্তরাল ক্যুইজ ব্যবহার করে, মাল্টিপল টাইম ডাইমেনশনালের অধীনে বাজারের প্রধান প্রবণতা দিকগুলি সনাক্ত করুন
  2. ইএমএ সূচকগুলি সহজেই গণনা করা যায়, কম গোলমাল হয় এবং মূল বাজার প্রবণতা সঠিকভাবে এবং নির্ভরযোগ্যভাবে নির্ধারণ করা যায়
  3. আরএসআই সূচকগুলি কার্যকরভাবে প্রবেশ এবং ক্ষতির পয়েন্টগুলি নির্ধারণ করতে পারে, কৌশলগত লাভের প্রত্যাহারের অনুপাতকে ব্যাপকভাবে অপ্টিমাইজ করতে পারে
  4. অ্যালগরিদমের কাঠামো পরিষ্কার, পরিবর্তনগুলি সহজে বোঝা যায়, প্রবণতা অনুসরণ করার জন্য আদর্শ
  5. কৌশলগত কার্যকারিতা বাড়ানোর জন্য অন্যান্য প্রযুক্তিগত সূচকগুলির সাথে নমনীয় সমন্বয়

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

এই কৌশলটির কিছু ঝুঁকিও রয়েছে, যা নিম্নলিখিত দিকগুলিতে প্রতিফলিত হয়ঃ

  1. প্রবণতা বিপরীত হলে, স্টপ লস পয়েন্টগুলি অত্যধিক আদর্শ হতে পারে যা ক্ষতি বাড়িয়ে তুলতে পারে
  2. প্রবণতা বিপরীত দিকটি সঠিকভাবে মূল্যায়ন করতে না পারা, সময়মতো স্টপ লস বেরিয়ে আসার সুযোগ হারাতে পারে
  3. ইএমএ এবং আরএসআই প্যারামিটারগুলি পুনরাবৃত্তি পরীক্ষার জন্য অপ্টিমাইজ করা দরকার, অন্যথায় এটি অস্থিরতা সৃষ্টি করতে পারে
  4. প্রতিটি প্রবেশের জন্য নিখুঁত সময় গ্যারান্টি দেওয়া যায় না এবং অপ্রয়োজনীয় পুনরাবৃত্তি হতে পারে
  5. হঠাৎ করে ঘটে যাওয়া ঘটনার ফলে বড় ধরনের উড়োজাহাজে ওড়ার ঘটনা এড়ানো কঠিন হয়ে পড়েছে

উপরের ঝুঁকির জন্য, নিম্নলিখিত দিকগুলি থেকে অপ্টিমাইজ করা যেতে পারেঃ

  1. একক ক্ষতির জন্য যুক্তিসঙ্গত স্টপপয়েন্ট সেট করুন
  2. ট্রেন্ড রিভার্সনের জন্য অন্যান্য সূচক যুক্ত করুন যাতে সময়মতো ক্ষতি বন্ধ করা যায়
  3. প্যারামিটার প্যাকেজকে অপ্টিমাইজ করুন যাতে এটি বিস্তৃত বাজারের অবস্থার জন্য উপযুক্ত হয়
  4. পুনরাবৃত্তিমূলক ক্রিয়াকলাপ হ্রাস করার জন্য প্রবেশ এবং স্টপ লজিক সংশোধন করা হয়েছে
  5. বাজার উঁচুতে ওঠার নেতিবাচক প্রভাব এড়াতে অস্বাভাবিক পরিস্থিতির বিচার বাড়ানো

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

এই কৌশলটির সুবিধাগুলি এবং ঝুঁকিগুলি থেকে, আমরা নিম্নলিখিত কয়েকটি অপ্টিমাইজযোগ্য দিকনির্দেশনা পেতে পারিঃ

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

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

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-01-23 00:00:00
end: 2024-01-23 00:00:00
period: 4h
basePeriod: 15m
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/
// © Investoz
// Indikatorn är byggd som ett utbildningsyfte och är därför ingen rekommendation för köp/sälj av aktier. Tanken är att skapa en visuell form i en graf
// som visar om det finns någon trend såväl positiv som negativ. En dialogruta med en varning talar om vilken trend som råder. I koden finns en möjlighet
// att ta position eller gå ur position om man vill skapa en startegi kring denna trendindikator. Rekommenderar dock starkt att inte enbart förlita sig på denna
// indikator som beslut för köp/sälj då resultaten blir negativa om man köper på psoitiv trend och säljer på negativ trend. Det måste kombineras med andra idéer
// och därför fungerar denna skript mer som ett komplement till sin egen strategi.
// Det är fritt fram för vem som helst att använda sig av denna indikator.  
//@version=4
//Skapar en strategiskript med 5 % av eget kapital som ett exempel. Detta går att ändra i skriptets inställningar, välj egenskaper och sedan ändra orderstorlek
//till ett annat värde av % på eget kapital.
strategy("© Investoz trendvarningar", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=5)
//Lägger till inmatningar till skriptindikatorn. Användaren kan se och redigera inmatningar i objektdialogen efter eget val.
ema1 = input(21, minval=1, maxval=500, title="Lila linje")
valema1=input(true, title="Visa lila linje")
ema2 = input(34, minval=1, maxval=500, title="Blå linje")
valema2=input(true, title="Visa blå linje")
ema3 = input(55, minval=1, maxval=500, title="Grön linje")
valema3=input(true, title="Visa grön linje")
ema4 = input(89, minval=1, maxval=500, title="Gul linje")
valema4=input(true, title="Visa gul linje")
ema5 = input(141, minval=1, maxval=500, title="Orange linje")
valema5=input(true, title="Visa orange linje")
ema6 = input(230, minval=1, maxval=500, title="Röd linje")
valema6=input(true, title="Visa röd linje")
ema7 = input(371, minval=1, maxval=500, title="Röd linje")
valema7=input(true, title="Visa röd linje")
//Inmatningar för antal staplar
startbar = input(1, minval=1, maxval=1, title="Första stapeln")
Endbar = bar_index
//Källa input, stängning. Användaren kan själv byta till vilken källa som önskas.
src = input(close, title="Source")
//Antal staplar sedan den längsta ema började och framåt. 
tid=Endbar + startbar - 371
//EMA loop
aema1 = ema(src, ema1)
bema2 = ema(src, ema2)
cema3 = ema(src, ema3)
dema4 = ema(src, ema4)
eema5 = ema(src, ema5)
fema6 = ema(src, ema6)
gema7 = ema(src, ema7)
//Skriver ut linjer i diagrammet om förhållandet är sant, annars falskt.
h=plot(valema1 ? aema1 : na, title="Lila linje", style=plot.style_line, linewidth=1, color=color.purple)
i=plot(valema2 ? bema2 : na, title="Blå linje", style=plot.style_line, linewidth=1, color=color.blue)
j=plot(valema3 ? cema3 : na, title="Grön linje", style=plot.style_line, linewidth=1, color=color.green)
k=plot(valema4 ? dema4 : na, title="Gul linje", style=plot.style_line, linewidth=1, color=color.yellow)
l=plot(valema5 ? eema5 : na, title="Orange linje", style=plot.style_line, linewidth=1, color=color.orange)
m=plot(valema6 ? fema6 : na, title="Röd linje", style=plot.style_line, linewidth=1, color=color.red)
n=plot(valema7 ? gema7 : na, title="Brun linje", style=plot.style_line, linewidth=1, color=color.maroon)
//Fyller bakgrunden mellan två linjer med en viss färg.
fill(h, i, color = color.purple,transp=34)
fill(i, j, color = color.blue,transp=34)
fill(j, k, color = color.green,transp=34)
fill(k, l, color = color.yellow,transp=34)
fill(l, m, color = color.orange,transp=34)
fill(m, n, color = color.red,transp=34)
//Skapa en algoritm för positiv trend
PositivTrend = crossover(aema1,gema7)?1:0
TrendPositiv = ema(close,1) > aema1 and aema1 > bema2?1:0
//Skapa en algoritm för negativ trend
NegativTrend = crossunder(aema1,gema7)?1:0
TrendNegativ = ema(close,1) < aema1 and aema1 < bema2?1:0
//Skapar en textruta med varningstext för positiv trend
varningtextpositiv = "Varning för positiv trend."+"\n" + "Leta efter att ta position!"
// if PositivTrend
//     varningpositiv=label.new(
//      bar_index, 
//      low,  
//      xloc=xloc.bar_index, 
//      yloc=yloc.price,
//      color=color.black, 
//      textcolor=color.green,
//      text=varningtextpositiv,
//      style=label.style_label_down,
//      textalign=text.align_left)
//Skapar en textruta med varningstext för negativ trend
varningtextnegativ = "Varning för negativ trend."+"\n" + "Leta efter utgången!"
// if NegativTrend
//     varningnegativ=label.new(
//      bar_index, 
//      low,  
//      xloc=xloc.bar_index, 
//      yloc=yloc.price,
//      color=color.black, 
//      textcolor=color.red,
//      text=varningtextnegativ,
//      style=label.style_label_up,
//      textalign=text.align_left)
//Köp om positiv trend
if (PositivTrend) 
    strategy.entry("Ta position", strategy.long, when = PositivTrend)
//Sälj om negativ trend
if (NegativTrend)
    strategy.close("Ta position", when = NegativTrend, comment="Gå ur position")
//Beräkning av positiv trend
vspositiv(positiv)=>valuewhen(Endbar==startbar,positiv,0)
vepositiv(positiv)=>valuewhen(Endbar==Endbar,positiv,0)
positivmean(TrendPositiv)=>
    csumpositiv = cum(TrendPositiv)
//Slut//   
    a = vepositiv(csumpositiv)
//Start//
    b = vspositiv(csumpositiv)
//Slut - Start// 
    (a - b)/(tid)
positivmeanpositiv = positivmean(TrendPositiv) 
//Beräkning av negativ trend
vsnegativ(negativ)=>valuewhen(Endbar==startbar,negativ,0)
venegativ(negativ)=>valuewhen(Endbar==Endbar,negativ,0)
negativmean(TrendNegativ)=>
    csumnegativ = cum(TrendNegativ)
//Slut//   
    a = venegativ(csumnegativ)
//Start//
    b = vsnegativ(csumnegativ)
//Slut - Start// 
    (a - b)/(tid)
negativmeannegativ = negativmean(TrendNegativ) 
//Inmatning av text som ska in i texruta som visar antal staplar i trend
logga = "© Investoz: Trend i tid"+ "\n"
streck = "--------------------------------------------------------"
totalastaplar = "\n" + "Dagar totalt: " + tostring(tid)+ " dagar "+"\n"+ streck + "\n"
totalpositiv = "Dagar totalt i positiv trend "+" 📈 : "  +tostring(positivmeanpositiv*tid, "##.##") +" dagar " + "\n"
totalnegativ = "\n" + "Dagar totalt i negativ trend" + " 📉 : "  +tostring(negativmeannegativ*tid, "##.##") +" dagar " 
//Textruta för antal staplar i trend
// if barstate.ishistory
//     barcountlbl=label.new(
//      bar_index, 
//      low,  
//      xloc=xloc.bar_index, 
//      yloc=yloc.price,
//      color=color.black, 
//      textcolor=color.yellow,
//      text=logga+streck+totalastaplar+totalpositiv+streck+totalnegativ,
//      style=label.style_label_lower_left,
//      textalign=text.align_left)
//     label.delete(barcountlbl[1])
//////////////////////////////////