
یہ حکمت عملی پی آئی وی او ٹی اونچائی اور توڑ کی بنیاد پر کرپٹو کرنسیوں کے رجحان کی تبدیلی کا فیصلہ کرنے کے لئے ہے ، جو توڑنے والی الٹ کی قسم کی حکمت عملی ہے۔ حکمت عملی سب سے پہلے اشارے کی قیمتوں کے اعلی ترین اور کم ترین قیمتوں کے پی آئی وی او ٹی پوائنٹس کا حساب لگاتی ہے ، اور پھر یہ فیصلہ کرتی ہے کہ آیا قیمت ان اہم مقامات کو توڑنے کے بعد الٹ ہوئی ہے ، تاکہ بڑے رجحان میں تبدیلی کو پکڑ سکے۔
ta.pivothigh ((() اور ta.pivotlow ((() کے افعال کا استعمال کرتے ہوئے حالیہ مخصوص بار کی قیمتوں کے سب سے زیادہ اور کم قیمتوں کے نقطہ نظر کو اہم PIVOT پوائنٹس کے طور پر شمار کیا گیا ہے۔
اگر قیمت PIVOT کم سے اوپر کی طرف بڑھتی ہے یا PIVOT اونچائی سے نیچے کی طرف بڑھتی ہے تو ، اس کا فیصلہ کیا جاتا ہے کہ رجحان کا رخ موڑ گیا ہے۔
قیمتوں کو پییوٹ پوائنٹ سے تھوڑا سا توڑنے کی ضرورت ہے ، اور بند ہونے کی قیمت کو 150 بار سے تجاوز کرنے کی ضرورت ہے ، اس سے بچنے کے لئے۔
خریدنے کی شرائط کو متحرک کرنے کے بعد زیادہ اندراج کریں ، بیچنے کی شرائط کو متحرک کرنے کے بعد زیادہ ٹکٹوں کو صاف کریں۔ خالی ٹکٹوں میں داخلے اور باہر نکلنے کا فیصلہ کرنے کی طرح۔
یہ حکمت عملی مجموعی طور پر کافی مستحکم ہے اور بڑے پیمانے پر الٹ جانے کے لئے موزوں ہے۔ تاہم ، خطرے پر قابو پانے اور مختلف کرنسیوں کے مطابق پیرامیٹرز کو ایڈجسٹ کرنے پر توجہ دینے کی ضرورت ہے۔ یہ یقین ہے کہ پیرامیٹرز کی اصلاح اور ہوا کے کنٹرول کی بنیاد پر ، اس حکمت عملی سے بہتر نتائج برآمد ہوسکتے ہیں۔
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © nkrastins95
//@version=5
strategy("Swing Hi Lo", overlay=true, margin_long=100, margin_short=100)
//-----------------------------------------------------------------------------------------------------------------------//
tf = input.timeframe(title="Timeframe", defval="")
gr="LENGTH LEFT / RIGHT"
leftLenH = input.int(title="Pivot High", defval=10, minval=1, inline="Pivot High",group=gr)
rightLenH = input.int(title="/", defval=10, minval=1, inline="Pivot High",group=gr)
colorH = input(title="", defval=color.red, inline="Pivot High",group=gr)
leftLenL = input.int(title="Pivot Low", defval=10, minval=1, inline="Pivot Low", group=gr)
rightLenL = input.int(title="/", defval=10, minval=1, inline="Pivot Low",group=gr)
colorL = input(title="", defval=color.blue, inline="Pivot Low",group=gr)
//-----------------------------------------------------------------------------------------------------------------------//
pivotHigh(ll, rl) =>
maxLen = 1000
float ph = ta.pivothigh(ll, rl)
int offset = 0
while offset < maxLen
if not na(ph[offset])
break
offset := offset + 1
ph[offset]
pivotLow(ll, rl) =>
maxLen = 1000
float pl = ta.pivotlow(ll, rl)
int offset = 0
while offset < maxLen
if not na(pl[offset])
break
offset := offset + 1
pl[offset]
//-----------------------------------------------------------------------------------------------------------------------//
ph = request.security(syminfo.tickerid, tf, pivotHigh(leftLenH, rightLenH), barmerge.gaps_off, barmerge.lookahead_on)
pl = request.security(syminfo.tickerid, tf, pivotLow(leftLenL, rightLenL), barmerge.gaps_off, barmerge.lookahead_on)
drawLabel(_offset, _pivot, _style, _color) =>
if not na(_pivot)
label.new(bar_index[_offset], _pivot, str.tostring(_pivot, format.mintick), style=_style, color=_color, textcolor=#131722)
//-----------------------------------------------------------------------------------------------------------------------//
VWAP = ta.vwap(ohlc4)
longcondition = ta.crossunder(close,pl) and close > close[150]
exitcondition = close > ph
shortcondition = ta.crossover(close,ph) and close < close[150]
covercondition = close < pl
strategy.entry("long", strategy.long, when = longcondition)
strategy.close("long", when = exitcondition)
strategy.entry("Short", strategy.short, when = shortcondition)
strategy.close("Short", when = covercondition)