بریک ڈے ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-10-09 16:56:21
ٹیگز:

جائزہ

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

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

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

  1. صرف اس وقت لندن اوپن (8AM) میں داخل ہوں جب قیمت فاسٹ ایم اے کو توڑ دے۔ اگر قریب یا اعلی تیز ایم اے سے اوپر ٹوٹ جاتا ہے تو طویل ہوجائیں ، اگر قریب یا کم تیز ایم اے سے نیچے ٹوٹ جاتا ہے تو مختصر ہوجائیں۔

  2. پچھلے بار کے قریب ہونے کی ضرورت ہے کہ وہ طویل عرصے تک سست ایم اے سے اوپر ، مختصر مدت کے لئے سست ایم اے سے نیچے ، غیر رجحان سازی کی حرکتوں کو فلٹر کرنے کے لئے۔

  3. 50-100 پوائنٹس کا بہت چھوٹا سٹاپ نقصان استعمال کریں۔

  4. کوئی منافع نہیں لے، لندن بندش پر غیر مشروط طور پر باہر نکلتا ہے (15:00).

فوائد کا تجزیہ

یہ ایک بہت ہی سادہ بریکآؤٹ حکمت عملی ہے، لیکن لندن سیشن کے رجحان کی خصوصیات کا مناسب استعمال کرتے ہوئے، اس کے مندرجہ ذیل فوائد ہیں:

  1. صرف واضح رجحانات میں داخل ہوتا ہے، متضاد مارکیٹ کے خطرات سے بچنے کے.

  2. صرف لندن کے اعلی اتار چڑھاؤ کے دوران تجارت.

  3. چھوٹا سٹاپ نقصان کچھ واپسی کا مقابلہ کر سکتا ہے.

  4. غیر مشروط باہر نکلنے سے راتوں رات خطرات سے بچتا ہے۔

خطرے کا تجزیہ

اس حکمت عملی میں کچھ خطرات بھی ہیں:

  1. طویل عرصے تک مستحکم رہ سکتا ہے جب لندن میں کوئی واضح رجحان نہیں ہے.

  2. سٹاپ نقصان کا خطرہ ہے کہ واپسی پر روک دیا جائے.

  3. ابتدائی اخراج کے خطرات جب مضبوط رجحانات کو طویل عرصے تک برقرار رکھنے کی ضرورت ہوتی ہے.

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

اصلاح کی ہدایات

اسٹریٹیجی کو کئی شعبوں میں بہتر بنایا جاسکتا ہے:

  1. دیگر فلٹرز جیسے آر ایس آئی، بولنگر بینڈ شامل کریں تاکہ مارکیٹوں میں ہلچل سے بچنے کے لئے.

  2. مختلف پیرامیٹرز کی جانچ کرکے حرکت پذیر اوسط کے مجموعوں کو بہتر بنائیں۔

  3. بہترین رینج تلاش کرنے کے لئے مختلف سٹاپ نقصان کے سائز کی جانچ کریں.

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

  5. دیگر کرنسی کے جوڑوں اور وقت کے فریموں کی جانچ کریں۔

  6. اکاؤنٹ کے سائز کی بنیاد پر پوزیشن سائز جیسے خطرے کے انتظام کو شامل کریں.

خلاصہ

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


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

//@version=4

// strategy(title="2 ma breakout",shorttitle="2 ma breakout", initial_capital=10000,overlay=true, commission_type = strategy.commission.cash_per_contract, commission_value = 0.00008 )
timeinrange(res, sess) => time(res, sess) != 0

//Change false to false = You have to turn on, won't show up by default
//****Always use lowercase letters

doNYOpen = input(defval=false, type = input.bool, title="NY Open On")
doNYSession = input(defval=false, type = input.bool, title="NY Session On")
doNYClose = input(defval=false, type = input.bool, title="NY Close On")

doAussieOpen = input(defval=false, type = input.bool, title="Aussie Open On")
doAussieSession = input(defval=false, type = input.bool, title="Aussie Session On")
doAussieClose = input(defval=false, type = input.bool, title="Aussie Close On")

doAsiaOpen = input(defval=false, type = input.bool, title="Asia Open On")
doAsiaSession = input(defval=false, type = input.bool, title="Asia Session On")
doAsiaClose = input(defval=false, type = input.bool, title="Asia Close On")

doEurOpen = input(defval=true, type = input.bool, title="Euro Open On")
doEurSession = input(defval=true, type = input.bool, title="Euro Session On")
doEurClose = input(defval=true, type = input.bool, title="Euro Close On")

//You can copy and paste these colors. white - silver - gray - maroon - red - purple - fuchsia - green - lime
//   olive - yellow - navy - blue - teal - aqua - orange 

nySessionStart = color.olive
nySession = color.olive
nySessionEnd = color.olive
asiaSessionStart = color.blue
asiaSession = color.blue
asiaSessionEnd = color.blue
europeSessionStart = color.red
europeSession = color.red
europeSessionEnd = color.red
colorwhite = color.white

//****Note ---- Use Military Times --- So 3:00PM = 1500


bgcolor(doAsiaSession and timeinrange(timeframe.period, "1800-0400") ? asiaSession : na, transp=75)
//bgcolor(timeinrange(timeframe.period, "0000-0300") ? color.white  : na, transp=75)
bgcolor(doEurSession and timeinrange(timeframe.period, "0300-1100") ? europeSession : na, transp=75)
bgcolor(doNYSession and timeinrange(timeframe.period, "0800-1600") ? nySession : na, transp=75)

active = input(true, title="Show On Chart")
pricehigh = security(syminfo.tickerid, '60', high[0])
pricelow = security(syminfo.tickerid, '60', low[0])
//Daily Plots
offs_daily = 0 
hiHighs = 0
loLows = 0
//plot(timeinrange(timeframe.period, "0000-0300") and pricehigh ? pricehigh  : na, title="Previous Daily High", style=plot.style_line, linewidth=2, color=color.gray)
//plot(timeinrange(timeframe.period, "0000-0300") and pricelow ? pricelow : na, title="Previous Daily Low", style=plot.style_linebr, linewidth=2, color=color.gray)

if(timeinrange(timeframe.period, "0000-0300"))
    hiHighs = highest(high, 3)
    loLows = lowest(low, 3)
    

// From Date Inputs
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2020, title = "From Year", minval = 1970)
 
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2020, title = "To Year", minval = 1970)
 
// Calculate start/end date and time condition
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true


len = input(2)
src = input(close, title="Source")
out = sma(src, len)

lena = input(200, minval=1, title="Length slow")
srca = input(close, title="Source")
outa = ema(srca, lena)

//tp = input(100, title="tp")
sl = input(66, title="sl")
// if(smabool)
//     out := sma(src, len)
// else if(emabool)
//     out := ema(src, len)
// else if(hmabool)
//     out := hma(src, len)
// else if(vmabool)
//     out := wma(src, len)  
// else if(vwmabool)
//     out := vwma(src, len)   
// else if(smmabool)
//     out := sma(src, len)  
 
plot(out, color=color.white, title="MA")
plot(outa, color=color.white, title="MA")

longC = timeinrange(timeframe.period, "0300-0400") and (crossover(close,out) or crossover(high,out)) and close[1] > outa and time_cond
shortC = timeinrange(timeframe.period, "0300-0400") and (crossunder(close,out) or crossunder(low,out)) and close[1] < outa and time_cond



//inputlondon = input(false, title="london session")
//inputny = input(false, title="new york session")

//if(inputlondon==true)

strategy.initial_capital = 50000

//MONEY MANAGEMENT--------------------------------------------------------------
balance = strategy.netprofit + strategy.initial_capital //current balance
floating = strategy.openprofit          //floating profit/loss
risk = input(1,type=input.float,title="Risk % of equity ")/100           //risk % per trade

temp01 = balance * risk     //Risk in USD
temp02 = temp01/sl        //Risk in lots
temp03 = temp02*100      //Convert to contracts
size = temp03 - temp03%1 //Normalize to 1000s (Trade size)
if(size < 1)
    size := 1         //Set min. lot size


strategy.entry("long",1,when=longC)
//strategy.close("long", when = crossunder(close,out) or not (timeinrange(timeframe.period, "0300-1000")))
strategy.close("long", when =  not (timeinrange(timeframe.period, "0300-0945")))
strategy.exit("x_long","long", loss = sl)
     
    
strategy.entry("short",0,when=shortC)
//strategy.close("short",when = crossover(close,out) or not (timeinrange(timeframe.period, "0300-1000")))
strategy.close("short",when = not (timeinrange(timeframe.period, "0300-0945")))

strategy.exit("x_short","short", loss = sl)

//strategy.exit("closelong", "RSI_BB_LONG" , profit = close * 0.01 / syminfo.mintick, loss = close * 0.01 / syminfo.mintick, alert_message = "closelong")
//strategy.exit("closeshort", "RSI_BB_SHORT" , profit = close * 0.01 / syminfo.mintick, loss = close * 0.01 / syminfo.mintick, alert_message = "closeshort")



مزید