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

img

সারসংক্ষেপ

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

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

কৌশলটি প্রথমে এমএসিডি সূচকের তিনটি লাইন গণনা করেঃ দ্রুত লাইন, ধীর লাইন এবং হিস্টোগ্রাম। দ্রুত লাইনটি স্বল্প সময়ের মধ্যে দ্রুততর চলমান গড় যখন ধীর লাইনটি দীর্ঘ সময়ের মধ্যে ধীরতর চলমান গড়। হিস্টোগ্রামটি দ্রুত এবং ধীর লাইনের মধ্যে পার্থক্য। যখন দ্রুত লাইনটি ধীর লাইনের উপরে অতিক্রম করে, এটি একটি সোনার ক্রস সংকেত যা একটি ক্রয় সংকেত নির্দেশ করে। যখন দ্রুত লাইনটি ধীর লাইনের নীচে অতিক্রম করে, এটি একটি মৃত্যু ক্রস সংকেত যা বিক্রয় সংকেত নির্দেশ করে।

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

কৌশলটির সুবিধা

  • সঠিকভাবে প্রবণতা দিক নির্ধারণ এবং প্রবণতা বিপরীত ক্যাপচার করার জন্য দ্বৈত চলমান গড় ক্রসওভার ব্যবহার করে
  • MACD প্রযুক্তিগত সূচক মিথ্যা সংকেত হ্রাস করে এবং সংকেতের গুণমান উন্নত করে
  • দীর্ঘ বা সংক্ষিপ্ত বা শুধুমাত্র দীর্ঘ / সংক্ষিপ্ত যেতে নমনীয়তা
  • সামঞ্জস্যযোগ্য পরামিতিগুলি বিভিন্ন বাজারের পরিবেশের জন্য উপযুক্ত

কৌশলটির ঝুঁকি

  • ডাবল চলমান গড় ক্রসওভারের বিলম্বিত প্রভাব রয়েছে, বিপরীতমুখী শুরুতে আংশিক মুনাফা মিস করতে পারে
  • মার্কেট কনসোলিডেশনের সময় মিথ্যা সংকেতের ঝুঁকিপূর্ণ MACD সূচক
  • অত্যধিক সংবেদনশীল বা inert এড়াতে পরামিতি সঠিক সমন্বয় প্রয়োজন

ঝুঁকি হ্রাসঃ

  • সংকেত ফিল্টার করার জন্য অন্যান্য সূচকগুলির সাথে একত্রিত করুন
  • কম ট্রেডিং ফ্রিকোয়েন্সিতে প্যারামিটারগুলি সুরক্ষিত করুন
  • কেবলমাত্র প্রবণতা স্পষ্ট হলে কৌশলটি গ্রহণ করুন

উন্নতির ক্ষেত্র

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

  1. সিগন্যাল নিশ্চিত করতে এবং মিথ্যা সিগন্যাল ফিল্টার করতে KDJ, Bollinger Bands ইত্যাদি অন্যান্য সূচক অন্তর্ভুক্ত করুন

  2. প্রবেশাধিকার প্রক্রিয়া উন্নত করুন, উদাহরণস্বরূপ অকাল বা দেরী প্রবেশ এড়ানোর জন্য ব্রেকআউট ফিল্টার যুক্ত করুন

  3. প্যারামিটার সেটিংস অপ্টিমাইজ করুন, বিভিন্ন সময়সীমা এবং বাজার ব্যবস্থার উপর ভিত্তি করে দ্রুত এবং ধীর লাইন সময়কাল সামঞ্জস্য করুন

  4. একক ট্রেড লস নিয়ন্ত্রণে স্টপ লস যোগ করুন

  5. ফরেক্স, ক্রিপ্টোকারেন্সি ইত্যাদির মতো অন্যান্য পণ্যগুলিতে প্রসারিত করুন

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

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


/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 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/
// © DeMindSET

//@version=4
strategy("MACD Trend Follow Strategy", overlay=false)
// Getting inputs
LSB = input(title="Long/Short", defval="Long only", options=["Long only", "Short only" , "Both"]) 
fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
src = input(title="Source", type=input.source, defval=close)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false)

// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00

// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal

plot(hist, title="Histogram", style=plot.style_columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )
plot(macd, title="MACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)
//
Bull= macd > signal
Bear= macd < signal
ConBull=macd>0
ConBear=macd<0
//
Green= Bull and ConBull
Red= Bear and ConBear
Yellow= Bull and ConBear
Blue= Bear and ConBull
//
bcolor = Green ? color.green : Red ? color.red : Yellow ? color.yellow : Blue ? color.blue : na
barcolor(color=bcolor)
// === INPUT BACKTEST RANGE ===
FromYear  = input(defval = 2019, title = "From Year", minval = 1920)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2009)
ToMonth   = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 31, title = "To Day", minval = 1, maxval = 31)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"

if LSB == "Long only" and Green
    strategy.entry("L",true)
if LSB == "Long only" and Red
    strategy.close("L",qty_percent=100,comment="TP Long")
if LSB == "Both" and Green
    strategy.entry("L",true)
if LSB == "Both" and Red
    strategy.entry("S",false)
if LSB == "Short only" and Red
    strategy.entry("S",false)
if LSB == "Short only" and Green
    strategy.close("S",qty_percent=100,comment="TP Short")


আরো