PIVOT উচ্চ এবং নিম্নের উপর ভিত্তি করে ক্রিপ্টোকারেন্সি ট্রেন্ড রিভার্সাল কৌশল


সৃষ্টির তারিখ: 2024-01-12 14:13:36 অবশেষে সংশোধন করুন: 2024-01-12 14:13:36
অনুলিপি: 0 ক্লিকের সংখ্যা: 691
1
ফোকাস
1617
অনুসারী

PIVOT উচ্চ এবং নিম্নের উপর ভিত্তি করে ক্রিপ্টোকারেন্সি ট্রেন্ড রিভার্সাল কৌশল

ওভারভিউ

এই কৌশলটি পিভোট উচ্চ-নিম্ন এবং বিপর্যয়ের উপর ভিত্তি করে ক্রিপ্টোকারেন্সির প্রবণতা বিপর্যয়ের বিচার করে। এটি বিপর্যয় বিপর্যয়ের শ্রেণীর কৌশল। কৌশলটি প্রথমে সর্বাধিক মূল্য এবং সর্বনিম্ন মূল্যের PIVOT পয়েন্টগুলি গণনা করে এবং তারপরে মূল্যায়ন করে যে দামগুলি এই মূল পয়েন্টগুলি অতিক্রম করার পরে বিপর্যয় ঘটেছে কিনা তা বড় প্রবণতা পরিবর্তনকে ধরার জন্য।

কৌশল নীতি

  1. PIVOT উচ্চ এবং নিম্ন গণনা

ta.pivothigh ((() এবং ta.pivotlow ((() ফাংশন ব্যবহার করে একটি নির্দিষ্ট বারের সর্বশেষ সর্বোচ্চ এবং সর্বনিম্ন মূল্যের পয়েন্টগুলিকে মূল PIVOT পয়েন্ট হিসাবে গণনা করা হয়।

  1. বিচারের ব্রেকথ্রু

প্রবণতা বিপরীত হয় যদি দাম পিভট নিম্ন থেকে উপরে বা পিভট উচ্চ থেকে নিচে যায়।

  1. ফিল্টারিং সেট করুন

PIVOT পয়েন্টের তুলনায় দামের একটি নির্দিষ্ট ব্রেকডাউন প্রয়োজন, এবং 150 বার বন্ধের মূল্য অতিক্রম করে, যাতে এটি বন্ধ না হয়।

  1. প্রবেশ ও প্রস্থান

ক্রয় শর্তের পরে অতিরিক্ত প্রবেশ করুন, বিক্রয় শর্তের পরে অতিরিক্ত বোনাস বন্ধ করুন। খালি বোনাস প্রবেশ এবং প্রস্থান করার মতো।

সামর্থ্য বিশ্লেষণ

  1. PIVOT পয়েন্ট ব্যবহার করে বিচার করুন, বড় ট্রেন্ডের পরিবর্তনের জন্য সংবেদনশীল
  2. প্রবণতা বিপরীত হওয়ার পর প্রবেশ নিশ্চিত করার জন্য কার্যকর ফিল্টারগুলিকে ঝাঁকুনির প্রবণতায় অন্তর্ভুক্ত করা হয়েছে
  3. পিভট পয়েন্টের উচ্চতা ও নিম্নতা নির্ণয় করে, সময়মতো বিপর্যয় ঘটাতে সাহায্য করে

ঝুঁকি বিশ্লেষণ

  1. বড় আকারের ঘূর্ণিঝড়ের কারণে কৌশলগুলি সহজেই ব্যর্থ হয়
  2. PIVOT পয়েন্ট দৈর্ঘ্য এবং ফিল্টারিং শর্তগুলি বিভিন্ন স্কেলের জন্য সামঞ্জস্য করতে হবে
  3. এক্সচেঞ্জের ফি শূন্যের কাছাকাছি রাখা নিশ্চিত করতে হবে, অন্যথায় মুনাফা ক্ষতিগ্রস্ত হবে

অপ্টিমাইজেশান দিক

  1. বিভিন্ন PIVOT প্যারামিটার সমন্বয় পরীক্ষা করা যেতে পারে
  2. একক ক্ষতি নিয়ন্ত্রণ করতে মোবাইল স্টপ যুক্ত করা যেতে পারে
  3. ফিল্টারিং সিগন্যালগুলি অন্যান্য সূচকগুলির সাথে একত্রিত করা যায়

সারসংক্ষেপ

এই কৌশলটি সামগ্রিকভাবে বেশ শক্তিশালী এবং বড় ধরনের বিপর্যয় ধরার জন্য উপযুক্ত। তবে ঝুঁকি নিয়ন্ত্রণে মনোযোগ দেওয়া এবং বিভিন্ন মুদ্রার সাথে প্যারামিটারগুলি সামঞ্জস্য করার জন্য প্যারামিটারগুলি সামঞ্জস্য করা দরকার। প্যারামিটার অপ্টিমাইজেশন এবং বায়ু নিয়ন্ত্রণের ভিত্তিতে এই কৌশলটি আরও ভাল ফলাফল অর্জন করতে পারে বলে বিশ্বাস করা হয়।

কৌশল সোর্স কোড
/*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)