
اس حکمت عملی کا نام ہے “بجلی کی چمک” اور یہ ایک رجحان کی پیروی کرنے والی حکمت عملی ہے جو تین حرکت پذیر اوسطوں پر مبنی ہے۔ یہ قیمت کے رجحان کا تعین کرنے کے لئے تیز ، درمیانی اور سست لائنوں کے کراسنگ کا حساب لگاتا ہے ، اور اے ٹی آر کی قیمتوں کے ساتھ ہدف کی قیمت اور اسٹاپ نقصان کی قیمت طے کرتا ہے۔
یہ حکمت عملی مندرجہ ذیل تین حرکت پذیر اوسط استعمال کرتی ہے:
جب تیز لائن پر درمیانی لائن اور درمیانی لائن پر سست لائن گزرے تو ، اس کا فیصلہ کثیر رجحان کے طور پر کیا جاتا ہے۔ جب تیز لائن کے نیچے درمیانی لائن اور درمیانی لائن کے نیچے سست لائن گزرے تو ، اس کا فیصلہ خالی سر رجحان کے طور پر کیا جاتا ہے۔
اس حکمت عملی میں کچھ اضافی شرائط بھی رکھی گئی ہیں تاکہ شور مچانے والی تجارت کو فلٹر کیا جا سکے۔
ان شرائط کو پورا کرنے پر ، زیادہ یا کم کرنے کا اشارہ دیا جائے گا۔ ہر بار صرف ایک پوزیشن رکھنے کے بعد ، پوزیشن کو صاف کرنے یا روکنے کے بعد ہی پوزیشن دوبارہ کھولی جاسکتی ہے۔
ہدف کی قیمت اور روکنے کی قیمت اے ٹی آر کی قیمت کے مطابق ایک خاص ضرب کی ترتیب میں ہے۔
یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:
اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:
خطرے کو کنٹرول کرنے کے لئے ، یہ تجویز کیا جاتا ہے کہ منتقل اوسط پیرامیٹرز کو مناسب طریقے سے ایڈجسٹ کیا جائے ، اے ٹی آر کے ضرب کو بہتر بنایا جائے ، اور زیادہ سے زیادہ ہولڈنگ ٹائم مقرر کیا جائے ، تاکہ کسی بھی نقصان کو زیادہ سے زیادہ نقصان سے بچا جاسکے۔
یہ حکمت عملی مندرجہ ذیل پہلوؤں سے بہتر بنائی جا سکتی ہے۔
اس حکمت عملی میں مجموعی طور پر ایک مستحکم رجحان کی پیروی کی حکمت عملی ہے۔ یہ بنیادی طور پر رجحان کی سمت کا تعین کرنے کے لئے منتقل اوسط پر انحصار کرتا ہے ، اور اس میں معاون تکنیکی اشارے کا ایک گروپ ہے ، جس سے کچھ شور کو فلٹر کیا جاسکتا ہے۔ اگرچہ اس میں مزید اصلاحات کی گنجائش موجود ہے ، لیکن مجموعی طور پر خطرہ قابل انتظام ہے ، جو وسط طویل لائن رجحانات کی پیروی کرنے کے لئے موزوں ہے۔
/*backtest
start: 2024-01-02 00:00:00
end: 2024-02-01 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © greenmask9
//@version=4
strategy("Dazzling Bolts", overlay=true)
//max_bars_back=3000
// 13 SMMA
len = input(10, minval=1, title="SMMA Period")
src = input(close, title="Source")
smma = 0.0
smma := na(smma[1]) ? sma(src, len) : (smma[1] * (len - 1) + src) / len
// 55 EMA
emalength = input(55, title="EMA Period")
ema = ema(close, emalength)
// 100 SMA
smalength = input(110, title="SMA Period")
sma = sma(close, smalength)
emaforce = input(title="Force trend with medium EMA", type=input.bool, defval=true)
offsetemavalue = input(defval = 6)
bullbounce = smma>ema and ema>sma and low[5]>ema and low[2]<ema and close[1]>ema and (ema[offsetemavalue]>sma or (not emaforce))
bearbounce = smma<ema and ema<sma and high[5]<ema and high[2]>ema and close[1]<ema and (ema[offsetemavalue]<sma or (not emaforce))
plotshape(bullbounce, title= "Purple", location=location.belowbar, color=#ff33cc, transp=0, style=shape.triangleup, size=size.tiny, text="Bolts")
plotshape(bearbounce, title= "Purple", location=location.abovebar, color=#ff33cc, transp=0, style=shape.triangledown, size=size.tiny, text="Bolts")
strategy.initial_capital = 50000
ordersize=floor(strategy.initial_capital/close)
longs = input(title="Test longs", type=input.bool, defval=true)
shorts = input(title="Test shorts", type=input.bool, defval=true)
atrlength = input(title="ATR length", defval=12)
atrm = input(title="ATR muliplier",type=input.float, defval=2)
atr = atr(atrlength)
target = close + atr*atrm
antitarget = close - (atr*atrm)
//limits and stop do not move, no need to count bars from since
bullbuy = bullbounce and longs and strategy.opentrades==0
bb = barssince(bullbuy)
bearsell = bearbounce and shorts and strategy.opentrades==0
bs = barssince(bearsell)
if (bullbuy)
strategy.entry("Boltsup", strategy.long, ordersize)
strategy.exit ("Bolts.close", from_entry="Boltsup", limit=target, stop=antitarget)
if (crossover(smma, sma))
strategy.close("Boltsup", qty_percent = 100, comment = "Bolts.crossover")
if (bearsell)
strategy.entry("Boltsdown", strategy.short, ordersize)
strategy.exit("Bolts.close", from_entry="Boltsdown", limit=antitarget, stop=target)
if (crossunder(smma, sma))
strategy.close("Boltsdown", qty_percent = 100, comment = "Bolts.crossover")
// if (bb<5)
// bulltarget = line.new(bar_index[bb], target[bb], bar_index[0], target[bb], color=color.blue, width=2)
// bullclose = line.new(bar_index[bb], close[bb], bar_index[0], close[bb], color=color.blue, width=2)
// bullstop = line.new(bar_index[bb], antitarget[bb], bar_index[0], antitarget[bb], color=color.blue, width=2)
// if (bs<5)
// bulltarget = line.new(bar_index[bs], antitarget[bs], bar_index[0], antitarget[bs], color=color.purple, width=2)
// bullclose = line.new(bar_index[bs], close[bs], bar_index[0], close[bs], color=color.purple, width=2)
// bullstop = line.new(bar_index[bs], target[bs], bar_index[0], target[bs], color=color.purple, width=2)