ٹرینڈ بریک آؤٹ - لانگ شیڈو حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-11-15 16:43:17
ٹیگز:

img

یہ حکمت عملی تیزی سے بڑھتی ہوئی / کمی کی سایہ کی لمبائی کے تناسب کا حساب لگاتے ہوئے موجودہ رجحان کی سمت کا اندازہ کرتی ہے ، اور اے ٹی آر اشارے کے ساتھ رجحان کی نشاندہی کرتی ہے۔ یہ توڑ پوائنٹس پر الٹ پوزیشن کھولتا ہے اور قلیل مدتی رجحانات کو پکڑنے کے لئے نقصان کو روکتا ہے اور منافع حاصل کرتا ہے۔

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

اس حکمت عملی میں بنیادی طور پر موجودہ رجحان کا جائزہ لینے کے لئے بولش / بیئرش شیڈو تناسب کا حساب لگایا جاتا ہے۔ لمبی بولش نیچے کی طرف رجحان کی نشاندہی کرتی ہے جبکہ لمبی بولش اوپر کی طرف رجحان کی نشاندہی کرتی ہے۔

مخصوص منطق یہ ہے:

  1. کم رنگ کا حساب لگائیں: قریب - کم
  2. بلش شیڈو کا حساب لگائیں: اونچا - کھلا
  3. سائے کی لمبائی کے طور پر bearish اور bullish سایہ کی زیادہ سے زیادہ لے لو
  4. شمع جسم کی لمبائی کا حساب لگائیں: اعلی - کم
  5. سایہ اور جسم کی لمبائی کے درمیان تناسب کا حساب لگائیں
  6. اگر تناسب > 0.5 اور bearish > bullish ہے تو ، نیچے کی طرف رجحان اور طویل پوزیشن کا فیصلہ کریں
  7. اگر تناسب > 0.5 اور تیزی > کمی ہو تو ، بڑھتی ہوئی رجحان اور مختصر پوزیشن کا فیصلہ کریں
  8. موم بتی کی لمبائی > 0.75 * ATR کے ساتھ بریک آؤٹ کی توثیق کریں
  9. سٹاپ نقصان مقرر کریں اور 2: 1 تناسب کے ساتھ داخل ہونے کے بعد منافع حاصل کریں

مندرجہ بالا بنیادی تجارتی منطق ہے، رجحان کا پتہ لگانے کے ساتھ الٹ بریک آؤٹ پوائنٹس کی نشاندہی اور سٹاپ نقصان / منافع لے کر منافع کو بہتر بنانا.

فوائد

  1. سایہ تناسب درست طریقے سے رجحان کا فیصلہ کرتا ہے
  2. اے ٹی آر غلط فرار سگنل کو فلٹر کرتا ہے
  3. سٹاپ نقصان اور منافع لے لو خطرے کا انتظام کرتا ہے
  4. 2: 1 خطرہ انعام کا تناسب کوانٹم ٹریڈنگ کے معیار کو پورا کرتا ہے
  5. اعلی اتار چڑھاؤ والے اسٹاک پر قلیل مدتی تجارت کے لئے موزوں
  6. سادہ اور واضح منطق، سمجھنے میں آسان

خطرات

  1. قیمت میں اتار چڑھاؤ سٹاپ نقصان اور نقصان میں اضافہ کر سکتا ہے
  2. کارکردگی پیرامیٹر ٹیوننگ پر بھاری انحصار کرتا ہے
  3. رجحان کی تبدیلی نقصان کا باعث بن سکتی ہے
  4. سٹاپ نقصان / منافع حاصل کرنے میں توسیع سے نقصان کا امکان بڑھ سکتا ہے
  5. ناکام فرار بڑے نقصان کا باعث بن سکتا ہے

خطرات کو معقول سٹاپ نقصان، پیرامیٹر کی اصلاح، اور بروقت پوزیشن سے باہر نکلنے کے ذریعے منظم کیا جا سکتا ہے.

بہتری

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

  1. بہترین قدر کے لئے سایہ تناسب پیرامیٹر کو بہتر بنائیں
  2. بہترین موم بتی کی لمبائی کے لئے ATR پیرامیٹر کو بہتر بنائیں
  3. زیادہ سے زیادہ خطرہ-انعامات کے لئے سٹاپ نقصان / منافع لینے کے گتانک کو بہتر بنائیں
  4. پوزیشن کا سائز شامل کریں جیسے بتدریج پوزیشن میں اضافہ
  5. منافع کی حفاظت کے لئے پیچھے رکنے والے نقصان کو شامل کریں
  6. فلٹر سگنل میں دیگر اشارے شامل کریں
  7. بیک ٹسٹ ٹائم پیریڈ کو بہتر بنائیں اور مارکیٹ کے مختلف مراحل کو ٹیسٹ کریں

کثیر جہتی جانچ اور اصلاح کے ساتھ، حکمت عملی کی کارکردگی کو زیادہ سے زیادہ کیا جا سکتا ہے.

مجموعی طور پر ، یہ حکمت عملی رجحان کی نشاندہی اور رسک مینجمنٹ کے ذریعے قلیل مدتی قیمتوں میں اتار چڑھاؤ سے فائدہ اٹھاتی ہے۔ جب بہتر بنایا جاتا ہے تو ، یہ مقدار کی تجارت کے لئے ایک مضبوط قلیل مدتی بریک آؤٹ حکمت عملی بن سکتی ہے۔


/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
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/
// © ondrej17

//@version=4
strategy("longWickstrategy", overlay=true )
 
// Inputs
st_yr_inp = input(defval=2020, title='Backtest Start Year')
st_mn_inp = input(defval=01, title='Backtest Start Month')
st_dy_inp = input(defval=01, title='Backtest Start Day')
en_yr_inp = input(defval=2025, title='Backtest End Year')
en_mn_inp = input(defval=01, title='Backtest End Month')
en_dy_inp = input(defval=01, title='Backtest End Day')
sltp_inp = input(defval=0.8, title='N - % offset for N*SL and (2N)*TP')/100
 
// Dates
start = timestamp(st_yr_inp, st_mn_inp, st_dy_inp,00,00)
end = timestamp(en_yr_inp, en_mn_inp, en_dy_inp,00,00)
canTrade = time >= start and time <= end
// Indicators Setup


 
// Strategy Calcuations
lowerWick = (open > close) ? close-low : open - low
upperWick = (open > close) ? high-open : high-close
wickLength = max(lowerWick,upperWick)
candleLength = high-low
wickToCandleRatio = wickLength / candleLength
entryFilterCandleLength = candleLength > 0.75*atr(48)


// Entries and Exits
 
longCondition = entryFilterCandleLength and wickToCandleRatio > 0.5 and lowerWick > upperWick and canTrade and strategy.position_size == 0
shortCondition = entryFilterCandleLength and wickToCandleRatio > 0.5 and lowerWick < upperWick and canTrade and strategy.position_size == 0

strategy.entry("pendingLong", strategy.long, limit=low+wickLength/2, when = longCondition)
strategy.entry("pendingShort", strategy.short, limit=high-wickLength/2, when = shortCondition)

longStop = strategy.position_size > 0 ? strategy.position_avg_price*(1-sltp_inp) : na
longTP = strategy.position_size > 0 ? strategy.position_avg_price*(1+2*sltp_inp) : na
shortStop = strategy.position_size < 0 ? strategy.position_avg_price*(1+sltp_inp) : na
shortTP = strategy.position_size < 0 ? strategy.position_avg_price*(1-2*sltp_inp) : na

strategy.exit("longSLTP","pendingLong", stop=longStop, limit = longTP)
strategy.exit("shortSLTP","pendingShort", stop=shortStop, limit = shortTP)  
 

plot(longStop, color=color.red, style=plot.style_linebr, linewidth=2)
plot(shortStop, color=color.red, style=plot.style_linebr, linewidth=2)
plot(longTP, color=color.green, style=plot.style_linebr, linewidth=2)
plot(shortTP, color=color.green, style=plot.style_linebr, linewidth=2)

plotLongCondition = longCondition ? high+abs(open-close) : na
plot(plotLongCondition, style=plot.style_circles, linewidth=4, color=color.green)
plotShortCondition = shortCondition ? high+abs(open-close) : na
plot(plotShortCondition, style=plot.style_circles, linewidth=4, color=color.red)



مزید