گولڈن کراس اپ ٹرینڈ ٹریکنگ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-01-03 11:46:44
ٹیگز:

img

جائزہ

یہ حکمت عملی چلتی اوسط کے سنہری کراس اصول کی بنیاد پر تیار کی گئی ہے۔ خاص طور پر ، یہ مختلف ادوار کے دو آسان چلتے ہوئے اوسط ، یعنی 50 پیریڈ لائن اور 200 پیریڈ لائن کا استعمال کرتی ہے۔ جب 50 پیریڈ لائن نیچے سے 200 پیریڈ لائن کو توڑتی ہے تو ، خرید کا اشارہ پیدا ہوتا ہے۔ جب 50 پیریڈ لائن اوپر سے 200 پیریڈ لائن کو توڑتی ہے تو ، فروخت کا اشارہ پیدا ہوتا ہے۔

حکمت عملی منطق

یہ حکمت عملی پائن اسکرپٹ زبان میں لکھی گئی ہے، جس کا بنیادی منطق مندرجہ ذیل ہے:

  1. دو ایس ایم اے کا حساب لگائیں: 50 مدت ایس ایم اے اور 200 مدت ایس ایم اے
  2. گولڈن کراس کا تعین کریں: جب 50 پیریڈ ایس ایم اے 200 پیریڈ ایس ایم اے سے تجاوز کرتا ہے تو ، طویل ہوجائیں
  3. ڈیڈ کراس کا تعین کریں: جب 50 پیریڈ ایس ایم اے 200 پیریڈ ایس ایم اے سے کم ہو جائے تو بند پوزیشن

یہاں ایس ایم اے اشارے کا استعمال کرنے کی اہمیت یہ ہے کہ یہ مارکیٹ کے شور کو مؤثر طریقے سے فلٹر کرسکتا ہے اور طویل مدتی رجحانات کو پکڑ سکتا ہے۔ جب تیز رفتار ایس ایم اے لائن سست رفتار ایس ایم اے لائن سے اوپر سے عبور کرتی ہے تو ، اس سے یہ ظاہر ہوتا ہے کہ قلیل مدتی اپ ٹرینڈ رفتار طویل مدتی ڈاؤن ٹرینڈ کو شکست دیتی ہے ، جس سے خرید کا اشارہ ہوتا ہے۔

فوائد

اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:

  1. سادہ اور سمجھنے میں آسان اصول، لاگو کرنے میں آسان.
  2. معقول پیرامیٹرز کی ترتیبات، اپنی مرضی کے مطابق دو SMA ادوار، مختلف مارکیٹوں کے مطابق.
  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, "#.##"))
  

مزید