اہم بار فلٹرنگ پر مبنی بریک آؤٹ جمع کرنے کی حکمت عملی


تخلیق کی تاریخ: 2024-01-03 16:30:16 آخر میں ترمیم کریں: 2024-01-03 16:30:16
کاپی: 0 کلکس کی تعداد: 585
1
پر توجہ دیں
1621
پیروکار

اہم بار فلٹرنگ پر مبنی بریک آؤٹ جمع کرنے کی حکمت عملی

جائزہ

یہ حکمت عملی K لائن کے فاریکس ٹریڈنگ کی بنیادی باتیں اہم ستون لائن کے فاریکس ٹریڈنگ کے فوائد کا تعین کرکے رجحان کی پیش گوئی کرتی ہے ، اور اس کے ساتھ ساتھ اسٹریٹجک سگنل کو توڑنے کے لئے ایک تجارتی سگنل بھی جاری کرتی ہے۔ حکمت عملی بہت چھوٹی K لائنوں کو فلٹر کرتی ہے ، صرف فاریکس ٹریڈنگ کے فوائد کے فوائد پر تجزیہ کرتی ہے ، اور اس سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے سے بچنے کے لئے.

حکمت عملی کا اصول

  1. موجودہ K لائن کی جسمانی لمبائی کا فیصلہ کرنے کے لئے ، اگر یہ پچھلے 6 K لائن باڈیز کی اوسط سے 3 گنا زیادہ ہے تو ، اس کو کالم لائن کالم سمجھا جاتا ہے۔

  2. اگر لگاتار 3 کنڈ معنی ستون لائن لائنیں یل لائن ہیں تو ، اس کا فیصلہ کثیر سر سگنل کے طور پر کیا جاتا ہے۔ اگر لگاتار 3 کنڈ معنی ستون لائن لائنیں نون لائن ہیں تو ، اس کا فیصلہ خالی سر سگنل کے طور پر کیا جاتا ہے۔

  3. سگنل کا فیصلہ کرتے ہوئے ، اگر قیمت ٹوٹنے سے پہلے اونچائی یا کم ہو تو اضافی تجارتی سگنل بھی پیدا کیے جائیں گے۔

  4. ایس ایم اے اوسط لائن کو بطور فلٹر استعمال کریں اور صرف اس صورت میں پوزیشن کھولیں جب قیمت ایس ایم اے کو توڑ دے۔

  5. پوزیشن رکھنے کے بعد ، اگر قیمت ایک بار پھر داخلہ نقطہ یا SMA میڈین لائن کو توڑ دیتی ہے تو ، اس کی پوزیشن ختم کردی جاتی ہے۔

طاقت کا تجزیہ

  1. اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ ، اس کے علاوہ

  2. رجحان سگنل اور بریک سگنل کے ساتھ مل کر ، سگنل کے معیار کو بہتر بنانے اور جعلی سگنل کو کم کرنے میں مدد ملتی ہے۔

  3. ایس ایم اے کی اوسط لائن فلٹرنگ اعلی اور نیچے کی پیروی کرنے سے بچتی ہے۔ بند ہونے سے نیچے خریدیں ، بند ہونے سے اوپر فروخت کریں ، سگنل کی وشوسنییتا میں اضافہ کریں۔

  4. اسٹاپ نقصان کی شرائط طے کریں ، جو وقت پر اسٹاپ نقصان کو روک سکتی ہے ، جو فنڈز کو بچانے میں مددگار ہے۔

خطرے کا تجزیہ

  1. اس حکمت عملی میں شدت پسندی کا مظاہرہ کیا گیا ہے ، جس میں 3 K لائنوں کا استعمال کرتے ہوئے سگنل کا تعین کیا گیا ہے ، جس سے قلیل مدتی جھٹکے کو رجحان کے الٹ کے طور پر غلط سمجھا جاسکتا ہے۔

  2. ٹیسٹ کے اعداد و شمار ناکافی ہیں، اور مختلف اقسام اور مختلف سائیکلوں کے اثرات مختلف ہوسکتے ہیں.

  3. نائٹ ڈیسک میں راتوں رات پوزیشن کنٹرول شامل نہیں ہے ، راتوں رات پوزیشن کا خطرہ ہے۔

اصلاح کی سمت

  1. اس کے علاوہ ، اس کے لئے پیرامیٹرز کو مزید بہتر بنایا جاسکتا ہے ، جیسے کہ K لائنوں کی تعداد کا فیصلہ ، اس کے لئے اس کی تعریف وغیرہ۔

  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"}]
*/

//AlexInc
//2018

// закрытие - вычислить и в течение скольки-то баров его добиваться
// если нет, то по первому противоположному
// по стоп-лоссу в любом случае - стоп вычислить

//@version=2
strategy(title = "AlexInc's Bar v1.2", shorttitle = "AlexInc Bar 1.2", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
usemar = input(false, defval = false, title = "Use Martingale")
tryprofitbars = input(6, defval = 6, minval = 1, maxval = 100, title = "Number of candles to take profit anyway")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")

useSMAfilter = input(false, defval = true, title = "Use SMA filter")
SMAlimit = input(10, defval = 10, minval = 1, maxval = 30, title = "SMA filter limit")
bodysizeMlt = input(3, defval = 3, minval = 1, maxval = 10, title = "Body Size Multiplier")
meanfulbardiv = input(3, title = "Meanful Bar size Divider")

showarr = input(false, defval = false, title = "Show Arrows")
fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//SMA #
index = 0
index := barstate.isfirst ==true ? 0 : nz(index[1])+1

buyindex = 0
buyindex := barstate.isfirst ==true ? 0 : buyindex[1]

sellindex = 0
sellindex := barstate.isfirst ==true ? 0 : sellindex[1]

//predictprofit = barstate.isfirst ==true ? 0 : predictprofit[1]

smafilter = sma(close, SMAlimit)

//Body
body = abs(close - open)
range = abs(high - low)
abody = sma(body, 6)

max3 = 0
if body >= body[1] and body >= body[2]
    max3 := body
else
    if body[1] >= body and body[1] >= body[2]
        max3 := body[1]
    else 
        if body[2] >= body and body[2] >= body[1]
            max3 := body[2]

prevmax3 = 0
prevmax3 := nz(max3[1])


bar = close > open ? 1 : close < open ? -1 : 0
firstbullishopen = 0
firstbullishopen := bar == 1 and bar[1] != 1 ? open : nz(firstbullishopen[1])
firstbearishopen = 0
firstbearishopen := bar == -1 and bar[1] != -1 ? open : nz(firstbearishopen[1])

meanfulbar = body > abody / meanfulbardiv

meanfulbearish = 0
meanfulbearish := nz(meanfulbearish[1])

meanfulbullish = 0
meanfulbullish := nz(meanfulbullish[1])

if meanfulbar
    if bar == 1
        meanfulbullish := 1 + meanfulbullish
        meanfulbearish := 0
    else
        if bar == -1
            meanfulbearish := 1 + meanfulbearish
            meanfulbullish := 0


plot(min(low, high)-10, style=circles, color = meanfulbar ? yellow:black, linewidth=3)

//Signals
up1 = (meanfulbearish >= 3) and (close < firstbullishopen or 1) and (strategy.position_size == 0 or close < strategy.position_avg_price) and body > abody / 5 and (useSMAfilter == false or close < smafilter)
if up1 == true
	predictprofit = sma(body, 3)
up2 = sma(bar, 1) == -1 and body > prevmax3 * bodysizeMlt and (strategy.position_size == 0 or close < strategy.position_avg_price) and body > abody / 5 and (useSMAfilter == false or close < smafilter)
if up2 == true
	predictprofit = body * 0.5
plot(min(low, high), style=circles, color = up1?blue:up2?green:gray, linewidth=3)

dn1 = (meanfulbullish >= 3) and (close > firstbearishopen or 1)  and (strategy.position_size == 0 or close > strategy.position_avg_price) and body > abody / 5 and (useSMAfilter==false or close > smafilter)
if dn1 ==true 
	predictprofit = sma(body, 3)
dn2 = sma(bar, 1) == 1 and body > prevmax3 * bodysizeMlt and (strategy.position_size == 0 or close > strategy.position_avg_price) and body > abody / 5 and (useSMAfilter==false or close > smafilter)
if dn2 ==true	
	predictprofit = body * 0.5
plot(max(low, high), style=circles, color = dn1?blue:dn2?green:gray, linewidth=3)


exit = (((strategy.position_size > 0 and bar == 1 ) or (strategy.position_size < 0 and bar == -1)) and body > abody / 2 )
// or index >= buyindex (or sellindex) + tryprofitbars


//Arrows
col = exit ? black : up1 or dn1 ? blue : up2 or dn2 ? red : na
needup = up1 or up2
needdn = dn1 or dn2
needexitup = exit and strategy.position_size < 0
needexitdn = exit and strategy.position_size > 0
plotarrow(showarr and needup ? 1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(showarr and needdn ? -1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(showarr and needexitup ? 1 : na, colorup = black, colordown = black, transp = 0)
plotarrow(showarr and needexitdn ? -1 : na, colorup = black, colordown = black, transp = 0)


//Trading
profit = exit ? ((strategy.position_size > 0 and close > strategy.position_avg_price) or (strategy.position_size < 0 and close < strategy.position_avg_price)) ? 1 : -1 : profit[1]
mult = usemar ? exit ? profit == -1 ? mult[1] * 2 : 1 : mult[1] : 1
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 * mult : lot[1]

if up1 or up2
    if strategy.position_size < 0
        strategy.close_all()
		buyindex = index
		sellindex = index
	if strategy.position_size == 0
		buyindex = index
		
        
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot )

if dn1 or dn2
    if strategy.position_size > 0
        strategy.close_all()
		buyindex = index
		sellindex = index
	if strategy.position_size == 0
		sellindex = index
        
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot )
    
if  exit
    strategy.close_all()