ট্রেন্ড অনুসরণ করে ক্রয় এবং বিক্রয় কৌশল


সৃষ্টির তারিখ: 2023-10-17 12:59:59 অবশেষে সংশোধন করুন: 2023-10-17 12:59:59
অনুলিপি: 0 ক্লিকের সংখ্যা: 628
1
ফোকাস
1617
অনুসারী

ট্রেন্ড অনুসরণ করে ক্রয় এবং বিক্রয় কৌশল

ওভারভিউ

ট্রেন্ড ট্র্যাকিং বা ট্রেন্ড ট্রেডিং কৌশল হল একটি সহজ ট্রেন্ড ফলো ইনডেই ট্রেডিং কৌশল। এই কৌশলটির মূল ধারণা হল প্রবণতার দিকনির্দেশনা নির্ধারণ করা এবং প্রবণতার মধ্যে ঝড়ের সময় ক্রয় এবং বিক্রয় করা।

কৌশল নীতি

এই কৌশলটি ট্রেন্ডের দিকনির্দেশনা নির্ধারণের জন্য সরল চলমান গড় এসএমএ ব্যবহার করে। একটি উর্ধ্বমুখী ট্রেন্ডে, যখন K লাইনটি নিম্নতম হয় (অনুসরণ করে), কৌশলটি পূর্ববর্তী K লাইনের সর্বোচ্চ পয়েন্টটি অতিক্রম করার সময় অতিরিক্ত করে; একটি পতনশীল ট্রেন্ডে, যখন K লাইনটি উচ্চতম হয় (অনুসরণ করে) (অনুসরণ করে), কৌশলটি পূর্ববর্তী K লাইনের সর্বনিম্ন পয়েন্টটি অতিক্রম করার সময় খালি করে।

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

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

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

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

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

এই কৌশলটি নিম্নলিখিত ঝুঁকির সাথে জড়িতঃ

  • চলমান গড়ের ব্যাপকভাবে বিপর্যয় ঘটানোর ঝুঁকি রয়েছে। চলমান গড়ের সময়কাল যথাযথভাবে বাড়ানো যেতে পারে যাতে ঝুঁকি কমাতে পারে।
  • ঘন ঘন ট্রেডিংয়ের ফলে ওভারট্রেডিং হয়। আপনি %K চক্র বাড়িয়ে ট্রেডিং ফ্রিকোয়েন্সি কমিয়ে আনতে পারেন।
  • MACD এবং Signal প্যারামিটার সেট করার ভুল হলে ফিল্টারিং কার্যকর হবে না। প্যারামিটারগুলি নির্দিষ্ট জাতের উপর ভিত্তি করে অপ্টিমাইজ করা উচিত।
  • দ্বি-মুখী লেনদেনের সময় অতিরিক্ত খালি অবস্থানের ফলে প্রচুর ক্ষতি হয়। অবস্থানের আকার সীমাবদ্ধ করা উচিত।

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

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

  • চলমান গড়ের চক্রের অপ্টিমাইজেশন, প্রবণতা বিচার বজায় রাখার সময় যতটা সম্ভব ঝাঁকুনিগুলি ফিল্টার করুন
  • %K,%D প্যারামিটার অপ্টিমাইজ করুন, ক্যাপচার প্রবণতা বিপরীতকরণ বজায় রাখার সময় whipsaw হ্রাস করুন
  • MACD প্যারামিটারগুলিকে অপ্টিমাইজ করা হয়েছে যাতে তাদের ফিল্টারিং কার্যকারিতা আরও ভাল হয় এবং নয়েজ লেনদেন হ্রাস করে
  • পজিশনের নিয়ন্ত্রণ বাড়ানো, যেমন স্থির পরিমাণে পজিশন খোলা, ভাসমান অবস্থান ইত্যাদি
  • অতিরিক্ত ক্ষতিপূরণ কৌশল, যেমন চলমান ক্ষতি, সময় ক্ষতি, এটিআর ক্ষতি

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Higher High / Lower Low Strategy", overlay=true)

// Getting inputs
longOnly = input(true, title="Long or Short Only")
useMACD = input(true, title="Use MACD Filter")
useSignal = input(true, title="Use Signal Filter")
//Filter backtest month and year
startMonth = input(10, minval=1, maxval=12, title="Month")
startYear = input(2020, minval=2000, maxval=2100, title="Year")
//Filter funtion inputs
periodA = input(20, minval=1, title="Period SMA")
periodK = input(5, minval=1, title="Period %K")
fast_length = input(title="Period Fast", type=input.integer, defval=5)
slow_length = input(title="Period Slow", type=input.integer, defval=20)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 30)

//Calculations
smoothD = 3 //input(3, minval=1, title="Smooth %D")
smoothK = 2 //input(2, minval=1, title="Smooth %K")
ma50 = sma(close, periodA)
k = sma(stoch(close, high, low, periodK), smoothK) - 50
d = sma(k, smoothD)
macd = ema(close,fast_length) - ema(close,slow_length)
signal = ema(macd,signal_length)
hist = macd - signal

if (not na(k) and not na(d) and not na(macd) and not na(signal) and longOnly and month>=startMonth and year>=startYear)//	if(k > k[1] and k[2] >= k[1] and (ma50 > ma50[1]) and (not useK or k[1] <= -threshold_k) and (not useMACD or macd > macd[1]) and (not useSignal or signal > signal[1]) and (not useHHLL or close >= high[1]) and (not useD or d <= -threshold_d))
    if(high[2] >= high[1] and high > high[1] and (ma50 > ma50[1]) and (not useMACD or macd > macd[1]) and (not useSignal or signal > signal[1]))
		strategy.order("HH_LE", strategy.long, when=strategy.position_size == 0, comment="HH_LE")
    if (k < k[1])
		strategy.order("HH_SX", strategy.short, when=strategy.position_size != 0, comment="HH_SX")

if (not na(k) and not na(d) and not na(macd) and not na(signal) and not longOnly and month>=startMonth and year>=startYear)
    if(low[2] <= low[1] and low < low[1] and (ma50 < ma50[1]) and (not useMACD or macd < macd[1]) and (not useSignal or signal < signal[1]))
		strategy.order("HH_SE", strategy.short, when=strategy.position_size == 0, comment="HH_SE")
    if (k > k[1])
		strategy.order("HH_LX", strategy.long, when=strategy.position_size != 0, comment="HH_LX")

//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)