এই কৌশলটি পিআইভিওটি সুইং উচ্চ / নিম্ন পয়েন্ট এবং ব্রেকআউট সংকেতগুলির উপর ভিত্তি করে ক্রিপ্টো সম্পদের ট্রেন্ড বিপরীতগুলি সনাক্ত করে। এটি ব্রেকআউট বিপরীত কৌশল বিভাগের অন্তর্গত। কৌশলটি প্রথমে সাম্প্রতিক সর্বোচ্চ এবং সর্বনিম্ন মূল্য পয়েন্টগুলি পিআইভিওটি স্তর হিসাবে গণনা করে, তারপরে দামটি এই মূল স্তরগুলি ভেঙে যায় কিনা তা সনাক্ত করে, প্রধান প্রবণতা পরিবর্তনগুলিকে সংকেত দেয়।
PIVOT উচ্চ/নিম্ন পয়েন্ট গণনা করুন
একটি কাস্টম বার লুকব্যাক সময়ের মধ্যে সর্বোচ্চ সর্বোচ্চ এবং সর্বনিম্ন নিম্ন মূল্য খুঁজে পেতে ta.pivothigh (() এবং ta.pivotlow (()) ব্যবহার করে PIVOT পয়েন্টগুলি গ্রাফ করতে।
ব্রেকআউট সিগন্যাল সনাক্ত করুন
যদি মূল্য 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)