
তিনটি ইএমএ ট্রেন্ড ট্র্যাকিং কৌশলটি বিভিন্ন চক্রের ইএমএ গড় লাইন গণনা করে, দামের প্রবণতার দিকনির্দেশনা নির্ধারণ করে এবং প্রবণতা অনুসরণ করে। এই কৌশলটি সহজেই বাস্তবায়ন করা যায় এবং প্রবণতা স্পষ্ট জাতের মধ্যে উল্লেখযোগ্যভাবে কার্যকর হয়।
এই কৌশলটি তিনটি ভিন্ন সময়ের জন্য EMA গড়ফল গণনা করে, যথা 10 টি, 20 টি এবং 30 টি সময়ের EMA ৷ কোডের মধ্যে, তিনটি গড়ফল গণনা করা হয় ইমা ফাংশন দ্বারা ৷
কৌশলটি মূলত তিনটি সমান্তরাল রেখার দিক নির্ধারণ করে। যদি তিনটি সমান্তরাল রেখা একই সাথে বৃদ্ধি পায়, তবে এটি একটি মাল্টি-সিগন্যাল উত্পন্ন করে; যদি তিনটি সমান্তরাল রেখা একই সাথে হ্রাস পায়, তবে এটি একটি শূন্য সংকেত উত্পন্ন করে।
ইমা 1, ইমা 2 এবং ইমা 3 যদি একই সাথে শেষের একটি K লাইনে উঠে যায়, তবে enter_long সত্য হবে এবং ইমা 1 এবং ইমা 2 এবং ইমা 3 যদি একই সাথে শেষের একটি K লাইনে নেমে যায়, তবে enter_short সত্য হবে এবং একটি খালি সংকেত তৈরি করবে।
ওভার এবং ডাউন সিগন্যালের উপর ভিত্তি করে, কৌশলটি সংশ্লিষ্ট ওভার এবং ডাউন পজিশন স্থাপন করে। সমতল পজিশনের লজিকটি প্রবেশের সংকেতের বিপরীতে, যদি ema1, ema2 এবং ema3 এর বর্তমান কে লাইন একই সাথে বৃদ্ধি না হয় তবে exit_long সত্য হয় এবং বহুপজিশন হিসাবে সমতল হয়। যদি ema1, ema2 এবং ema3 এর বর্তমান কে লাইন একই সাথে হ্রাস না হয় তবে exit_short সত্য হয় এবং খালি পজিশন হিসাবে সমতল হয়।
এইভাবে, তিনটি ইএমএ গড়ের দিকনির্দেশের সামঞ্জস্যের বিচার করে, দামের সামগ্রিক প্রবণতা নির্ধারণ করা যায় এবং প্রবণতা ট্র্যাকিং করা যায়।
তিনটি ইএমএ গড় লাইন ব্যবহার করে, প্রবণতা দিকটি আরও সঠিকভাবে নির্ধারণ করা যেতে পারে। তিনটি গড় লাইন ট্রেন্ডটি আরও নির্ভরযোগ্যভাবে নির্ধারণ করতে পারে এবং একটি একক গড় লাইনের তুলনায় ভুল সংকেতের সম্ভাবনা কম থাকে।
ইএমএ দামের পরিবর্তনের জন্য আরও সংবেদনশীল এবং সময়মতো প্রবণতা পরিবর্তনকে প্রতিফলিত করতে পারে। এসএমএ এবং অন্যান্য গড়ের তুলনায়, ইএমএ প্রবণতা দিকনির্দেশের জন্য আরও উপযুক্ত।
বিভিন্ন পিরিয়ডের ইএমএ একত্রিতভাবে ব্যবহার করে, স্বল্প ও মধ্য-দীর্ঘমেয়াদী প্রবণতা উভয়ই বিবেচনা করা যেতে পারে। 10 পিরিয়ডের ইএমএ স্বল্পমেয়াদী প্রবণতা, 20 পিরিয়ড এবং 30 পিরিয়ডের ইএমএ মধ্য-দীর্ঘমেয়াদী প্রবণতা বিচার করে।
কৌশল বাস্তবায়ন সহজ, সহজেই বোঝা যায়, শিক্ষানবিসদের জন্য উপযুক্ত। এবং প্যারামিটার অপ্টিমাইজেশনের জন্য প্রচুর জায়গা রয়েছে, বিভিন্ন জাতের জন্য প্যারামিটারগুলি সামঞ্জস্য করতে পারে।
এই কৌশলটি শুধুমাত্র EMA-এর উপর ভিত্তি করে কাজ করে, এটি কম সম্পদ ব্যবহার করে এবং এটি প্রচুর পরিমাণে এবং বিতরণের জন্য উপযুক্ত।
তিনটি ইএমএ সমান্তরাল দিকের সামঞ্জস্য একটি প্রবণতা নির্ধারণের জন্য প্রয়োজনীয় তবে পর্যাপ্ত নয়। ইএমএ সমান্তরাল দিকের মিথ্যা ব্রেকডাউন হলে, একটি ভুল সংকেত তৈরি হবে।
প্রবণতা পাল্টানোর সময়, EMA গড় লাইন ক্রস-ল্যাগ করে, সময়মত প্রবণতা পাল্টানোর স্থানকে প্রতিফলিত করতে পারে না, যা ক্ষতির কারণ হতে পারে।
ইএমএ দামের পরিবর্তনের প্রতি সংবেদনশীল, এবং যখন মাল্টি-হেড এবং খালি হেডগুলি ঘন ঘন রূপান্তরিত হয়, তখন তারা ঘন ঘন পজিশন খালি করে লেনদেনের খরচ বাড়ায়।
এই কৌশলটি খুব ভাল কাজ করে না, যেহেতু EMA গড়ের প্রবণতাটি সঠিকভাবে নির্ধারণ করতে পারে না।
ভুল সংকেতের সম্ভাবনা কমাতে তিনটি ইএমএ গড় লাইন সময়কালের ব্যবধান যথাযথভাবে প্রসারিত করা যেতে পারে। বা অন্য সূচকগুলি ফিল্টার করে মিথ্যা বিরতি যোগ করা যেতে পারে।
প্রবণতা নিশ্চিতকরণ, প্রবণতা বিপরীত চিহ্নিতকরণ এবং ক্ষতি হ্রাস করার জন্য কোয়ান্টাম ইনডেক্সের সাথে একত্রিত করা যেতে পারে। স্টপ লস পয়েন্টগুলিও যথাযথভাবে শিথিল করা যেতে পারে।
ইএমএ প্যারামিটারগুলি যথাযথভাবে বাড়ানো যেতে পারে, পজিশন খোলার ফ্রিকোয়েন্সি হ্রাস করা যায়। অথবা অন্যান্য গড় রেখার সূচকগুলি প্রতিস্থাপন করা যেতে পারে।
বাজারে ঝড়ের চিহ্নিতকরণের পর, আপনি আপনার কৌশল স্থগিত করতে পারেন, যাতে আপনার লেনদেন বাতিল না হয়।
চক্র অপ্টিমাইজেশানঃ তিনটি ইএমএর চক্রের পরামিতিগুলি বিভিন্ন জাতের বৈশিষ্ট্য অনুসারে সামঞ্জস্য করুন।
ফিল্টার শর্তঃ এমএ, বিওএলএল ইত্যাদির মতো সূচকগুলি যুক্ত করুন, ইএমএ ভুয়া ব্রেকডাউন এড়াতে।
ট্রেলিং স্টপঃ ট্রেলিং স্টপটি ট্রেলিং স্টপের ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে ধাপে।
তহবিল ব্যবস্থাপনাঃ পজিশন ব্যবস্থাপনাকে অপ্টিমাইজ করা, একক ক্ষতির সামগ্রিক প্রভাব হ্রাস করা।
বাজার পরিস্থিতি বিচারঃ বাজারের অস্থিরতার মাত্রা নির্ধারণের জন্য ওঠানামা, নিয়ন্ত্রণ কৌশল অংশগ্রহণ।
প্যারামিটার স্বনির্ধারণঃ EMA চক্রের প্যারামিটারগুলিকে বাজার পরিবর্তনের উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে অপ্টিমাইজ করা যায়, যা কৌশলগত স্থিতিশীলতা বাড়ায়।
তিনটি ইএমএ প্রবণতা ট্র্যাকিং কৌশলটি ইএমএ গড়ের দিকনির্দেশের মাধ্যমে মূল্যের প্রবণতা নির্ধারণ করে, স্বয়ংক্রিয়ভাবে ট্রেডিংয়ের প্রবণতা অনুসরণ করে। এই কৌশলটি সহজ এবং কার্যকর, প্যারামিটারগুলি সামঞ্জস্য করার জন্য যথেষ্ট জায়গা রয়েছে এবং জাতের বৈশিষ্ট্যগুলির জন্য অনুকূলিতকরণ করা যেতে পারে। তবে কিছু ঝুঁকিও রয়েছে, ইএমএ ভুয়া ব্রেকথ্রু এবং বাজারের ঝড়ের প্রভাব প্রতিরোধে সতর্কতা অবলম্বন করা দরকার। ক্রমাগত অপ্টিমাইজেশনের মাধ্যমে, এই কৌশলটি একটি স্থিতিশীল এবং নির্ভরযোগ্য প্রবণতা ট্র্যাকিং কৌশল হতে পারে।
/*backtest
start: 2023-10-10 00:00:00
end: 2023-11-09 00:00:00
period: 1d
basePeriod: 1h
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/
// © QuantCT
//@version=4
strategy("PMA Strategy Idea",
shorttitle="PMA",
overlay=true,
pyramiding=0,
default_qty_type=strategy.percent_of_equity,
default_qty_value=100,
initial_capital=1000,
commission_type=strategy.commission.percent,
commission_value=0.075)
// ____ Inputs
ema1_period = input(title="EMA1 Period", defval=10)
ema2_period = input(title="EMA2 Period", defval=20)
ema3_period = input(title="EMA3 Period", defval=30)
long_only = input(title="Long Only", defval=false)
slp = input(title="Stop-loss (%)", minval=1.0, maxval=25.0, defval=5.0)
use_sl = input(title="Use Stop-Loss", defval=false)
// ____ Logic
ema1 = ema(hlc3, ema1_period)
ema2 = ema(hlc3, ema2_period)
ema3 = ema(hlc3, ema3_period)
enter_long = (rising(ema1, 1) and rising(ema2, 1) and rising(ema3, 1))
exit_long = not enter_long
enter_short = (falling(ema1, 1) and falling(ema2, 1) and falling(ema3, 1))
exit_short = not enter_short
strategy.entry("Long", strategy.long, when=enter_long)
strategy.close("Long", when=exit_long)
if (not long_only)
strategy.entry("Short", strategy.short, when=enter_short)
strategy.close("Short", when=exit_short)
// ____ SL
sl_long = strategy.position_avg_price * (1- (slp/100))
sl_short = strategy.position_avg_price * (1 + (slp/100))
if (use_sl)
strategy.exit(id="SL", from_entry="Long", stop=sl_long)
strategy.exit(id="SL", from_entry="Short", stop=sl_short)
// ____ Plots
colors =
enter_long ? #27D600 :
enter_short ? #E30202 :
color.orange
ema1_plot = plot(ema1, color=colors)
ema2_plot = plot(ema2, color=colors)
ema3_plot = plot(ema3, color=colors)
fill(ema1_plot, ema3_plot, color=colors, transp=50)