গোল্ডেন ক্রস দীর্ঘ প্রবণতা অনুসরণ কৌশল


সৃষ্টির তারিখ: 2024-01-03 11:46:44 অবশেষে সংশোধন করুন: 2024-01-03 11:46:44
অনুলিপি: 1 ক্লিকের সংখ্যা: 567
1
ফোকাস
1621
অনুসারী

গোল্ডেন ক্রস দীর্ঘ প্রবণতা অনুসরণ কৌশল

ওভারভিউ

এই কৌশলটি চলমান গড়ের গোল্ডেন ক্রস নীতির উপর ভিত্তি করে ডিজাইন করা হয়েছে। বিশেষত, এটি দুটি ভিন্ন পিরিয়ডের সহজ চলমান গড় ব্যবহার করে, 50 পিরিয়ড লাইন এবং 200 পিরিয়ড লাইন। 50 পিরিয়ড লাইনটি নীচের থেকে 200 পিরিয়ড লাইনটি ভেঙে গেলে একটি কেনার সংকেত উত্পন্ন করে; যখন 50 পিরিয়ড লাইনটি উপরে থেকে 200 পিরিয়ড লাইনটি পড়ে যায়, তখন একটি বিক্রয় সংকেত উত্পন্ন করে।

কৌশল নীতি

এই কৌশলটি পাইন স্ক্রিপ্ট ভাষা ব্যবহার করে লেখা হয়েছে, যার মূল যুক্তি হলঃ

  1. দুটি এসএমএ গণনা করুনঃ 50 চক্র এসএমএ এবং 200 চক্র এসএমএ
  2. গোল্ডেন ক্রস বিচার করুনঃ 50 চক্রের এসএমএ-তে 200 চক্রের এসএমএ পরা হলে অতিরিক্ত করুন
  3. মৃত্যু ক্রস বিচার করুনঃ যখন 50 চক্রের এসএমএর নিচে 200 চক্রের এসএমএ অতিক্রম করে তখন প্লেইন করুন

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

কৌশলগত সুবিধা

এই কৌশলটির বেশ কিছু সুবিধা রয়েছেঃ

  1. এই নীতিগুলি সহজ, সহজ এবং বাস্তবায়িত করা সহজ।
  2. PARAMETERS যুক্তিসঙ্গতভাবে সেট করা হয়েছে, বিভিন্ন বাজারের জন্য দুটি এসএমএ চক্র কাস্টমাইজ করা যায়।
  3. পাইন ভাষায় লেখা একটি স্থিতিশীল সংস্করণ, যা দক্ষতার সাথে কাজ করে।
  4. ভিজ্যুয়াল সেটিং তথ্যবহুল এবং ব্যবহার করা সহজ।

ঝুঁকি ও সমাধান

এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ

  1. মিথ্যা ব্রেকআপের সম্ভাবনা রয়েছে, যা কৌশলটিকে ভুল সংকেত দেয়। দুটি এসএমএ প্যারামিটার যথাযথভাবে সামঞ্জস্য করা যেতে পারে, যা মিথ্যা ব্রেকআপের সম্ভাবনা হ্রাস করে।

  2. এটি স্বল্পমেয়াদী বাজারকে সাড়া দিতে পারে না, শুধুমাত্র দীর্ঘমেয়াদী বিনিয়োগকারীদের জন্য উপযুক্ত। দ্রুত এসএমএর চক্রটি যথাযথভাবে সংক্ষিপ্ত করা যেতে পারে।

  3. প্রত্যাহার বড় হতে পারে। আপনি স্টপ লস সেট করতে পারেন, অথবা আপনার অবস্থান পরিচালনা করতে পারেন।

অনুকূলিতকরণ

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

  1. অন্যান্য সূচক ফিল্টার যুক্ত করুন, একাধিক ক্রয়/বিক্রয় শর্তের সমন্বয় করুন, মিথ্যা সংকেতের সম্ভাবনা হ্রাস করুন।

  2. একটি স্টপ-অফ ব্যবস্থা বাড়ানো। যখন দাম একটি নির্দিষ্ট স্তরের নিচে নেমে আসে, তখন স্টপ-অফ বাধ্যতামূলক করা হয়।

  3. পজিশন ম্যানেজমেন্ট অপ্টিমাইজ করুন। যেমন ট্রেন্ডের সাথে পজিশন বাড়ানো, স্টপ লস ট্র্যাকিং ইত্যাদি। রিটার্ন নিয়ন্ত্রণ করুন এবং উচ্চতর রিটার্নের সন্ধান করুন।

  4. প্যারামিটার অপ্টিমাইজেশান করা। বিভিন্ন প্যারামিটারের আয়-ঝুঁকি অনুপাতের প্রভাব মূল্যায়ন করা।

সারসংক্ষেপ

এই কৌশলটি সামগ্রিকভাবে একটি আদর্শ প্রবণতা ট্র্যাকিং কৌশল। এটি এসএমএর সুবিধা ব্যবহার করে, সহজ এবং দক্ষতার সাথে দীর্ঘ লাইন প্রবণতা ক্যাপচার করে। আপনার নিজস্ব শৈলী এবং প্যারামিটার অনুসারে স্থানটি কাস্টমাইজ করা যেতে পারে।

কৌশল সোর্স কোড
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-02 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// @version=4
//
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// www.tradingview.com/u/TradeFab/
// www.tradefab.com
// ___  __        __   __  __       __
//  |  |__)  /\  |  \ |__ |__  /\  |__)
//  |  |  \ /~~\ |__/ |__ |   /~~\ |__)
//
// DISCLAIMER: Futures, stocks and options trading involves substantial risk of loss 
// and is not suitable for every investor. You are responsible for all the risks and 
// financial resources you use and for the chosen trading system.
// Past performance is not indicative for future results. In making an investment decision,
// traders must rely on their own examination of the entity making the trading decisions!
//
// TradeFab's Golden Cross Strategy.
// The strategy goes long when the faster SMA 50 (the simple moving average of the last 50 bars) crosses
// above the SMA 200. Orders are closed when the SMA 50 crosses below SMA 200. The strategy does not short.
//
VERSION = "1.2"
// 1.2 FB 2020-02-09 converted to Pine version 4
// 1.1 FB 2017-01-15 added short trading
// 1.0 FB 2017-01-13 basic version using SMAs
//
strategy(
   title        = "TFs Golden Cross " + VERSION, 
   shorttitle   = "TFs Golden Cross " + VERSION, 
   overlay      = true
   )


///////////////////////////////////////////////////////////
// === INPUTS ===
///////////////////////////////////////////////////////////
inFastSmaPeriod     = input(title="Fast SMA Period", type=input.integer, defval=50, minval=1)
inSlowSmaPeriod     = input(title="Slow SMA Period", type=input.integer, defval=200, minval=1)

// backtest period
testStartYear       = input(title="Backtest Start Year",    type=input.integer, defval=2019, minval=2000)
testStartMonth      = input(title="Backtest Start Month",   type=input.integer, defval=1, minval=1, maxval=12)
testStartDay        = input(title="Backtest Start Day",     type=input.integer, defval=1, minval=1, maxval=31)
testStopYear        = input(title="Backtest Stop Year",     type=input.integer, defval=2099, minval=2000)
testStopMonth       = input(title="Backtest Stop Month",    type=input.integer, defval=12, minval=1, maxval=12)
testStopDay         = input(title="Backtest Stop Day",      type=input.integer, defval=31, minval=1, maxval=31)


///////////////////////////////////////////////////////////
// === LOGIC ===
///////////////////////////////////////////////////////////
smaFast = sma(close, inFastSmaPeriod)
smaSlow = sma(close, inSlowSmaPeriod)

bullishCross = crossover (smaFast, smaSlow)
bearishCross = crossunder(smaFast, smaSlow)

// detect valid backtest period
isTestPeriod() => true


///////////////////////////////////////////////////////////
// === POSITION EXECUTION ===
///////////////////////////////////////////////////////////
strategy.entry("long",  strategy.long,  when=bullishCross)
strategy.entry("short", strategy.short, when=bearishCross)


///////////////////////////////////////////////////////////
// === PLOTTING ===
///////////////////////////////////////////////////////////
// background color
nopColor = color.new(color.gray, 50)
bgcolor(not isTestPeriod() ? nopColor : na)

bartrendcolor = 
   close > smaFast and 
   close > smaSlow and 
   change(smaSlow) > 0 
       ? color.green 
       : close < smaFast and 
         close < smaSlow and 
         change(smaSlow) < 0 
             ? color.red 
             : color.blue
barcolor(bartrendcolor)
plot(smaFast, color=change(smaFast) > 0 ? color.green : color.red, linewidth=2)
plot(smaSlow, color=change(smaSlow) > 0 ? color.green : color.red, linewidth=2)

// label
posColor = color.new(color.green, 75)
negColor = color.new(color.red, 75)
dftColor = color.new(color.blue, 75)
posProfit= (strategy.position_size != 0) ? (close * 100 / strategy.position_avg_price - 100) : 0.0
posDir   = (strategy.position_size  > 0) ? "long" : strategy.position_size < 0 ? "short" : "flat"
posCol   = (posProfit > 0) ? posColor : (posProfit < 0) ? negColor : dftColor

var label lb = na
label.delete(lb)
lb := label.new(bar_index, max(high, highest(5)[1]),
   color=posCol,
   text="Pos: "+ posDir +
      "\nPnL: "+tostring(posProfit, "#.##")+"%" +
      "\nClose: "+tostring(close, "#.##"))