ট্রিপল ইএমএ ইমপমেন্টাম কৌশল

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

সারসংক্ষেপ

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

কৌশলগত যুক্তি

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

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

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

এই কৌশলটির নিম্নলিখিত সুবিধা রয়েছে:

  1. ট্রিপল ইএমএগুলি কার্যকরভাবে মূল্যের ডেটা মসৃণ করতে পারে এবং প্রবণতার দিকনির্দেশনা সনাক্ত করতে পারে। দ্রুত ইএমএ মূল্য পরিবর্তনের প্রতি সংবেদনশীল, স্ট্যান্ডার্ড ইএমএ ধারাবাহিকভাবে ট্র্যাক করে এবং ধীর ইএমএ গোলমাল ফিল্টার করে। একসাথে ব্যবহৃত, তারা মিথ্যা ব্রেকআউটগুলি ফিল্টার করতে পারে এবং প্রবণতার দিক নির্ধারণ করতে পারে।

  2. ডাবল এক্সপোনেনশিয়াল মসৃণকরণের ব্যবহার বিলম্বকে হ্রাস করে এবং সংকেতগুলিকে আরও সংবেদনশীল করে তোলে।

  3. প্রধান ট্রেডিং সেশনের অন্তর্ভুক্তকরণটি ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন ঘন।

  4. ঝুঁকি ব্যবস্থাপনা পদ্ধতিতে অ্যাকাউন্টের মূলধনের ভিত্তিতে পজিশনের আকার সামঞ্জস্য করা হয়, যাতে একক লেনদেনে অত্যধিক ক্ষতি এড়ানো যায়।

  5. যুক্তিটি সহজ এবং পরিষ্কার, সহজেই বোঝা যায় এবং বাস্তবায়ন করা যায়, নতুনদের জন্য উপযুক্ত।

  6. কৌশলটি বিভিন্ন মুদ্রা জোড়া এবং সময়সীমার জন্য অপ্টিমাইজ করা এবং সামঞ্জস্য করা যেতে পারে, যার ব্যাপক প্রয়োগযোগ্যতা রয়েছে।

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

এই কৌশলটির কিছু সম্ভাব্য ঝুঁকিও রয়েছেঃ

  1. EMAs হঠাৎ ঘটনা দ্বারা সৃষ্ট স্বল্পমেয়াদী মিথ্যা ব্রেকআউটগুলি কার্যকরভাবে ফিল্টার করতে পারে না, যা ভুল সংকেত তৈরি করতে পারে। ফিল্টার এবং বিশ্লেষণের জন্য অন্যান্য সূচক যুক্ত করা যেতে পারে।

  2. স্থির শতাংশ পজিশন সাইজিং বাজারের অস্থিরতার সাথে গতিশীলভাবে সামঞ্জস্য করতে পারে না, যার ফলে অতিরিক্ত বা কম আকারের পজিশন হয়। অস্থিরতার উপর ভিত্তি করে গতিশীল পজিশন সাইজিং বিবেচনা করা যেতে পারে।

  3. শুধুমাত্র দুটি প্রধান সেশন বিবেচনা করা হয়, যা অন্যান্য সেশনে ট্রেডিং সুযোগ মিস করতে পারে। বিভিন্ন সেশনের প্রভাব পরীক্ষা করা যেতে পারে।

  4. স্টপ লস প্রক্রিয়া না থাকলে একতরফা ক্ষতি কার্যকরভাবে নিয়ন্ত্রণ করতে অক্ষমতা দেখা দেয়। চলমান বা সময়-ভিত্তিক স্টপ লস বাস্তবায়ন করা যেতে পারে।

  5. ইএমএ ক্রসওভারের কিছু বিলম্ব রয়েছে এবং সেরা প্রবেশের সময়টি মিস করতে পারে। ইএমএ সময়কাল হ্রাস করা বা শীর্ষস্থানীয় সূচকগুলি অন্তর্ভুক্ত করা সহায়ক হতে পারে।

  6. লেনদেনের খরচ কর্মক্ষমতা প্রভাবিত করতে পারে। স্টপ লস এবং লাভের মাত্রা যথাযথভাবে সামঞ্জস্য করা উচিত।

অপ্টিমাইজেশান নির্দেশাবলী

কৌশলটি নিম্নলিখিত দিকগুলিতে অপ্টিমাইজ করা যেতে পারেঃ

  1. সর্বোত্তম সমন্বয় খুঁজে পেতে বিভিন্ন EMA সময়ের পরামিতি পরীক্ষা করুন। গতিশীলভাবে সময়ের অনুকূল করার জন্য অভিযোজিত EMAs চালু করা যেতে পারে।

  2. সিগন্যালের গুণমান উন্নত করতে আরএসআই, বোলিংজার ব্যান্ডের মতো অন্যান্য ফিল্টারিং সূচক যুক্ত করুন।

  3. বাজারের অস্থিরতা এবং লাভজনকতার উপর ভিত্তি করে গতিশীল অবস্থানের আকার নির্ধারণ করা।

  4. হ্রাস সীমিত করতে চলমান বা সময় স্টপ ক্ষতি যোগ করুন। সূক্ষ্ম সুর স্টপ হ্রাস মাত্রা।

  5. সর্বোত্তম সময় খুঁজে পেতে বিভিন্ন ট্রেডিং সেশন পরীক্ষা করুন। অস্থিরতা পরিমাপ স্ক্রিনিং সাহায্য করতে পারেন।

  6. লাভের আকার এবং জয়ের হার ভারসাম্য বজায় রাখার জন্য লাভ এবং স্টপ লস স্তরগুলি অপ্টিমাইজ করুন। প্যারাবলিক এসএআর এর মতো বুদ্ধিমান স্টপগুলি প্রবর্তন করুন।

  7. লিনিয়ার ওয়েটেড ইএমএ এর মত ইএমএ গণনা পরিবর্তন করে দেখুন যাতে লেগ কম হয়।

  8. মেশিন লার্নিং ব্যবহার করে সর্বোত্তম প্যারামিটার খুঁজে বের করুন।

  9. লেনদেনের খরচ মডেল এবং সর্বোচ্চ নেট মুনাফার জন্য সিস্টেম সামঞ্জস্য।

উপরের অপ্টিমাইজেশানগুলির মাধ্যমে, সিস্টেমের লাভজনকতা উন্নত করা যেতে পারে, ড্রাউনডাউনগুলি নিয়ন্ত্রণ করা যায়, আরও শক্তিশালী এবং শক্তিশালী ট্রেডিং কৌশল অর্জনের জন্য প্রয়োগযোগ্যতা প্রসারিত করা যায়।

সংক্ষিপ্তসার

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


/*backtest
start: 2023-09-19 00:00:00
end: 2023-09-26 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// original author SoftKill21
//@version=4
//@capam 

strategy(title="Triple EMA Scalper low lag strat", shorttitle="3EMA scalper", overlay=true)
strategy.initial_capital = 50000
len1 = input(25, minval=1, title="Length")
len2 = input(50, minval=1, title="Length")
len3 = input(100, minval=1, title="Length")

src = input(close, title="Source")
tmp1 = ema(src, len1)
tmp2 = ema(src, len2)
tmp3 = ema(src, len3)
fastemaOut = 2*tmp1 - ema(tmp1, len1)
standardemaOut = 2*tmp2 - ema(tmp2, len2)
slowemaOut = 2*tmp3 - ema(tmp3, len3)
//fastemaOut = sma(src, len1)
//standardemaOut = sma(src, len2)
//slowemaOut = sma(src, len3)

plot(fastemaOut, color=color.black, title="First EMA")
plot(standardemaOut, color=color.yellow, title="Second EMA")
plot(slowemaOut, color=color.blue, title="Third EMA")


timeinrange(res, sess) => time(res, sess) != 0


londopen = timeinrange(timeframe.period, "0300-1100") 
nyopen = timeinrange(timeframe.period, "0800-1600") 

longCondition = crossover(fastemaOut,standardemaOut) and crossover(fastemaOut,slowemaOut) and londopen //or nyopen)
shortCondition = crossunder(fastemaOut,standardemaOut) and crossunder(fastemaOut,slowemaOut) and londopen// or nyopen)

longCondition2 = crossover(fastemaOut,standardemaOut) and crossover(fastemaOut,slowemaOut) and nyopen
shortCondition2 = crossunder(fastemaOut,standardemaOut) and crossunder(fastemaOut,slowemaOut) and nyopen
tp = input(50,title="TP")
sl = input(100, title="SL")

tradeLondon =  input(title="Trade london session?", type=input.bool, defval=true)
tradeNewyork = input(title="Trade new york session?", type=input.bool, defval=true)

//MONEY MANAGEMENT--------------------------------------------------------------
balance = strategy.netprofit + strategy.initial_capital //current balance
floating = strategy.openprofit          //floating profit/loss
risk = input(1,type=input.float,title="Risk % of equity ")/100           //risk % per trade
temp01 = balance * risk     //Risk in USD
temp02 = temp01/sl        //Risk in lots
temp03 = temp02*100000      //Convert to contracts
size = temp03 - temp03%1000 //Normalize to 1000s (Trade size)
if(size < 1000)
    size := 1000        

if(tradeLondon==true)
    strategy.entry("long",1,when=longCondition)
    strategy.exit("tp/sl","long",profit=tp,loss=sl)
    
    strategy.entry("short",0,when=shortCondition)
    strategy.exit("tp/sl","short",profit=tp,loss=sl)

if(tradeNewyork==true)
    strategy.entry("long",1,when=longCondition2)
    strategy.exit("tp/sl","long",profit=tp,loss=sl)
    
    strategy.entry("short",0,when=shortCondition2)
    strategy.exit("tp/sl","short",profit=tp,loss=sl)

// strategy.risk.max_intraday_filled_orders(2) 

আরো