بہترین سپر ٹرینڈ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-09-09 22:18:31
ٹیگز:

imgسپر ٹرینڈ حکمت عملی ایک سادہ اور موثر تجارتی حکمت عملی ہے جس کا استعمال اپ ٹرینڈ اور ڈاؤن ٹرینڈ مارکیٹوں دونوں سے فائدہ اٹھانے کے لئے کیا جاسکتا ہے۔ یہ حکمت عملی سپر ٹرینڈ اشارے پر مبنی ہے ، جو ایک رجحان کی پیروی کرنے والا اشارے ہے جو موجودہ رجحان اور ممکنہ الٹ پوائنٹس کی نشاندہی کرنے میں مدد کرتا ہے۔

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

یہ حکمت عملی اس وقت کام کرتی ہے جب قیمت سپر ٹرینڈ لائن سے اوپر ٹوٹ جاتی ہے اور جب قیمت سپر ٹرینڈ لائن سے نیچے ٹوٹ جاتی ہے تو طویل تجارت میں داخل ہوتی ہے اور جب قیمت سپر ٹرینڈ لائن سے نیچے ٹوٹ جاتی ہے تو مختصر تجارت میں داخل ہوتی ہے اور جب قیمت سپر ٹرینڈ لائن سے اوپر ٹوٹ جاتی ہے تو باہر نکل جاتی ہے۔

بیسٹ سپر ٹرینڈ حکمت عملی ایک آسان اور موثر حکمت عملی ہے جو تمام تجربے کی سطح کے تاجروں کے ذریعہ استعمال کی جاسکتی ہے۔ یہ حکمت عملی نسبتا low کم خطرہ بھی ہے ، کیونکہ یہ نقصانات کو محدود کرنے کے لئے اسٹاپ نقصانات کا استعمال کرتی ہے۔

یہاں بیسٹ سپر ٹرینڈ حکمت عملی استعمال کرنے کے کچھ فوائد ہیں:

سادہ اور سمجھنے میں آسان اپ ٹرینڈ اور ڈاؤن ٹرینڈ دونوں مارکیٹوں میں موثر کم خطرہ منافع بخش اگر آپ ایک آسان اور موثر تجارتی حکمت عملی تلاش کر رہے ہیں تو ، بیسٹ سپر ٹرینڈ حکمت عملی ایک بہترین آپشن ہے۔ حکمت عملی سیکھنا اور استعمال کرنا آسان ہے ، اور اس میں اپ ٹرینڈ اور ڈاؤن ٹرینڈ مارکیٹوں دونوں میں منافع پیدا کرنے کی صلاحیت ہے۔

یہاں بہترین سپر ٹرینڈ حکمت عملی استعمال کرنے کے لئے کچھ تجاویز ہیں:

اشارے کو رجحان میں تبدیلیوں کے لئے زیادہ حساس بنانے کے لئے ایک اعلی عنصر اور مدت کا استعمال کریں. نقصانات کو محدود کرنے کے لئے سٹاپ نقصانات کا استعمال کریں۔ خطرے کو منظم کرنے کے لئے چھوٹے سائز کے ساتھ تجارت کریں. اس حکمت عملی کو تاریخی اعداد و شمار پر بیک ٹیسٹ کریں تاکہ یہ دیکھیں کہ یہ کس طرح کام کرتا ہے۔ بیسٹ سپر ٹرینڈ حکمت عملی ٹریڈنگ کے ساتھ شروع کرنے کا ایک بہترین طریقہ ہے۔ یہ ایک آسان اور موثر حکمت عملی ہے جو تمام تجربے کی سطح کے تاجروں کے ذریعہ استعمال کی جاسکتی ہے۔ اگر آپ مارکیٹوں سے منافع حاصل کرنے کا طریقہ تلاش کر رہے ہیں تو ، بیسٹ سپر ٹرینڈ حکمت عملی ایک بہترین آپشن ہے۔


/*backtest
start: 2023-08-09 00:00:00
end: 2023-09-08 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
args: [["v_input_4",2]]
*/

//@version=4
//@author=Daveatt

// strategy(title="BEST Supertrend Strategy", shorttitle="Supertrend Strategy", overlay=true, 
//  pyramiding=0, default_qty_value=100, precision=7, currency=currency.USD,
//  commission_value=0.2,commission_type=strategy.commission.percent, initial_capital=1000000)


///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
/////////////////////////// Strategy Component /////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

orderType = input("Longs+Shorts",title="What type of Orders", options=["Longs+Shorts","LongsOnly","ShortsOnly"])
isLong   = (orderType != "ShortsOnly")
isShort  = (orderType != "LongsOnly")

// SMA
fastLength = input(7, title="Fast Length SMA")
slowLength = input(20, title="Slow Length SMA")

///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////// SUPERTREND /////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

Factor=input(3,title="[ST] Factor", minval=1,maxval = 100, type=input.float)
Pd=input(3, title="[ST] PD", minval=1,maxval = 100)
TF=input("daily", title="Supertrend timeframe", options=["daily","weekly","monthly","quartly","yearly"])

//////////////////////////
//* COLOR CONSTANTS *//
//////////////////////////

AQUA = #00FFFFFF
BLUE = #0000FFFF
RED  = #FF0000FF
LIME = #00FF00FF
GRAY = #808080FF
DARKRED   = #8B0000FF
DARKGREEN = #006400FF
GOLD = #FFD700
WHITE = color.white

// Plots
GREEN_LIGHT     = color.new(color.green, 40)
RED_LIGHT       = color.new(color.red, 40) 
BLUE_LIGHT      = color.new(color.aqua, 40)
PURPLE_LIGHT    = color.new(color.purple, 40) 


///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
/////////////////////// SUPERTREND DETECTION //////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

f_supertrend(Factor, Pd) =>

    Up=hl2-(Factor*atr(Pd))
    Dn=hl2+(Factor*atr(Pd))
    
    TrendUp = 0.0
    TrendUp := close[1]>TrendUp[1] ? max(Up,TrendUp[1]) : Up
    TrendDown = 0.0
    TrendDown := close[1]<TrendDown[1]? min(Dn,TrendDown[1]) : Dn
    Trend = 0.0
    Trend := close > TrendDown[1] ? 1: close< TrendUp[1]? -1: nz(Trend[1],1)
    Tsl = Trend==1? TrendUp: TrendDown

    Tsl

st_tsl = f_supertrend(Factor, Pd)

///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
////////////////////////// MULTI TIMEFRAMES CALCS /////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////


f_securitys(_ticker, _source)=>

    daily = security(_ticker, 'D', _source[1], lookahead=true)
    weekly = security(_ticker, 'W', _source[1], lookahead=true)
    montly = security(_ticker, 'M', _source[1], lookahead=true)
    quarterly = security(_ticker, '3M', _source[1], lookahead=true)
    yearly = security(_ticker, '12M', _source[1], lookahead=true)

    [daily, weekly, montly, quarterly, yearly]


[st_daily, st_weekly, st_monthly, st_quarterly, st_yearly] = f_securitys(syminfo.tickerid, st_tsl)

lapos_x = timenow + round(change(time)*50)
lapos_y = close

down_arrows_text = "▼" + " " + "▼" + " " + "▼" + " " + "▼" + " " + "▼" + " " + "▼" + " " + "▼" + "\n"

// Drawing function designed by RicardoSantos.
f_draw_infopanel(_x, _y, _color, _line, _text)=>
    _rep_text = ""
    for _l = 0 to _line
        _rep_text := _rep_text + "\n"
    _rep_text := _rep_text + _text

    var label _la = na
    label.delete(_la)
    _la := label.new(x=_x, y=_y, text=_rep_text, xloc=xloc.bar_time, yloc=yloc.price, 
     color=#C1CADE,  textcolor=_color, size=size.normal)

// Using the JustUncleL reverse order trick
f_draw_infopanel(lapos_x, lapos_y, color.olive,                 12, "╚═══════════════════════╝")
f_draw_infopanel(lapos_x, lapos_y, color.new(color.red, 20),    10,  "Yearly : " + tostring(round(st_yearly)))
f_draw_infopanel(lapos_x, lapos_y, color.new(color.purple, 20), 8,  "Quarterly : " + tostring(round(st_quarterly)))
f_draw_infopanel(lapos_x, lapos_y, color.new(color.green, 20),  6,  "Monthly : " + tostring(round(st_monthly)))
f_draw_infopanel(lapos_x, lapos_y, color.new(color.blue, 20),   4,  "Weekly : " +  tostring(round(st_weekly)))
f_draw_infopanel(lapos_x, lapos_y, color.new(color.green, 20),  2,  "Daily : " +  tostring(round(st_daily)))
f_draw_infopanel(lapos_x, lapos_y, color.olive,                 0,  "╔═════ Supertrend (" + tostring(Factor) + "," + tostring(Pd) + ") ═════╗")

IS_DAILY = TF == "daily"
IS_WEEKLY = TF == "weekly"
IS_MONTHLY = TF == "monthly"
IS_QUARTERLY = TF == "quarterly"
IS_YEARLY = TF == "yearly"

// select right supertrend
st_tsl_TF = iff(IS_DAILY, st_daily,
 iff(IS_WEEKLY, st_weekly,
 iff(IS_MONTHLY, st_monthly,
 iff(IS_QUARTERLY, st_quarterly,
 iff(IS_YEARLY, st_yearly, st_daily)))))



// hard exit
sma_fast = sma(close, fastLength)
sma_slow = sma(close, slowLength)
long_exit     = crossunder(sma_fast,sma_slow)
short_exit    = crossover(sma_fast,sma_slow)

// MA Cross
curr = 0 - barssince(long_exit) + barssince(short_exit)
cross_buy = curr < 0 ?  1 : 0
cross_sell = curr > 0 ? 1  : 0

bull = close >= st_tsl_TF and cross_buy
bear = close <= st_tsl_TF and cross_sell
entry_price = valuewhen(bull or bear, close, 0)

plot(sma_fast, "SMA fastLength", color=color.aqua, linewidth=2)
plot(sma_slow, "SMA slowLength", color=color.purple, linewidth=2)
plotshape(crossover(sma_fast,sma_slow), color=color.aqua, style=shape.circle, size=size.small)
plotshape(crossunder(sma_fast,sma_slow), color=color.purple, style=shape.circle, size=size.small)

// Plot the ST
linecolor = close >= st_tsl_TF ? color.green : color.red
plot(st_tsl_TF, color = linecolor , linewidth = 4,title = "SuperTrend", transp=0)

// Strategy entries/exits
if isLong
    strategy.entry("Long", 1, when=bull)
    strategy.close("Long", when=long_exit)

if isShort
    strategy.entry("Short", 0,  when=bear)
    strategy.close("Short", when=short_exit )

مزید