কপক কার্ভের উপর ভিত্তি করে পরিমাণগত ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2023-11-13 11:44:55 অবশেষে সংশোধন করুন: 2023-11-13 11:44:55
অনুলিপি: 0 ক্লিকের সংখ্যা: 725
1
ফোকাস
1617
অনুসারী

কপক কার্ভের উপর ভিত্তি করে পরিমাণগত ট্রেডিং কৌশল

ওভারভিউ

কপপোক কার্ভের একটি ওজনযুক্ত মুভিং এভারেজ থেকে স্ট্যান্ডার্ড 500 সূচক বা ট্রেডিং সমতুল্য পরিবর্তনের হার গণনা করে কপপোক কার্ভ তৈরি করা হয়। কপপোক কার্ভের উপরে শূন্য লাইন অতিক্রম করার সময় একটি কেনার সংকেত তৈরি হয় এবং নীচে শূন্য লাইন অতিক্রম করার সময় একটি বিক্রয় সংকেত তৈরি হয়। লাভের জন্য লক করার জন্য ট্র্যাকিং স্টপ লস ব্যবহার করা যেতে পারে। এই কৌশলটি $SPY এর কপপোক কার্ভকে অন্যান্য ইটিএফ এবং স্টক কেনার এবং বিক্রয়ের জন্য একটি এজেন্ট সংকেত হিসাবে ব্যবহার করে।

মূলনীতি

এই কৌশলটি কপপক কার্ভকে ট্রেডিং সিগন্যাল উৎপাদনের প্রযুক্তিগত সূচক হিসাবে ব্যবহার করে। কপপক কার্ভের গণনা সূত্রটি হলঃ

কপপক কার্ভ = 10 চক্রের ভারসাম্যপূর্ণ চলমান গড় ((14 চক্রের পরিবর্তনের হার ROC + 11 চক্রের পরিবর্তনের হার ROC)

যেখানে পরিবর্তনের হার ROC এর গণনা সূত্রটি হল: ((বর্তমান ক্লোজ - N চক্রের আগে ক্লোজ) / N চক্রের আগে ক্লোজ

কৌশলটি $SPY এর বন্ধের মূল্যের উপর ভিত্তি করে, এর কপপোক কার্ভ গণনা করে। কার্ভের উপরে শূন্য রেখা অতিক্রম করার সময় একটি কেনার সংকেত উত্পন্ন হয় এবং শূন্য রেখা অতিক্রম করার সময় একটি বিক্রয় সংকেত উত্পন্ন হয়।

সুবিধা

  • একটি অনন্য কপপক কার্ভের সূচক ব্যবহার করে, যা সাধারণ চলমান গড়ের মতো সূচকগুলির তুলনায় আরও ভাল ভবিষ্যদ্বাণী করে
  • কনফিগারযোগ্য সূচক প্যারামিটার অপ্টিমাইজেশান, যেমন ভারী চলমান গড় চক্র, পরিবর্তন হার গণনা চক্র ইত্যাদি
  • $SPY-এর মাধ্যমে সংকেত প্রেরণ, বাজার প্রতিনিধিত্ব
  • ট্রেলিং স্টপ বিকল্পগুলি মুনাফা লক করতে এবং প্রত্যাহার হ্রাস করতে পারে

ঝুঁকি

  • কপপক বক্ররেখা খুব বেশি জনপ্রিয় নয়, এটি কার্যকর কিনা তা যাচাই করতে হবে
  • ট্রেডিং সিগন্যাল বিলম্বিত হতে পারে, প্যারামিটারগুলি অপ্টিমাইজ করা দরকার
  • স্টপ লস সেটিং খুব হালকা, প্রত্যাহারের সুযোগ মিস করতে পারে
  • একক সূচকের উপর নির্ভরশীলতা ভুল সংকেত তৈরি করতে পারে

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

  • বিভিন্ন বাজার, বিভিন্ন স্টক পরীক্ষা করে সেরা প্যারামিটার সমন্বয় করতে
  • অন্যান্য সূচকের সাথে মিথ্যে সংকেত ফিল্টার করা, যেমন লেনদেনের পরিমাণ
  • ডায়নামিক অপ্টিমাইজেশান স্টপ লস শতাংশ
  • ট্রেডের সংখ্যা বা মূল্যের ব্রেকআউটকে প্রবেশ হিসাবে বিবেচনা করুন

সারসংক্ষেপ

কপপক কার্ভের অনন্য কার্ভ আকৃতির বৈশিষ্ট্য ব্যবহার করে এই কৌশলটি ট্রেডিং সিগন্যাল তৈরি করে। সাধারণ সূচকের তুলনায় কপপক কার্ভের আরও শক্তিশালী ভবিষ্যদ্বাণী রয়েছে। তবে স্বতন্ত্র সূচক হিসাবে এর নির্ভরযোগ্যতা এখনও যাচাই করা দরকার। অন্যান্য কারণের সাথে সংমিশ্রণে জাল সংকেতগুলি ফিল্টার করার পরামর্শ দেওয়া হয়। প্যারামিটার অপ্টিমাইজেশন, স্টপ লস অপ্টিমাইজেশন এবং অন্যান্য সূচকগুলির সংমিশ্রণের মাধ্যমে এই কৌশলটি কার্যকর পরিমাণযুক্ত ট্রেডিং সিস্টেম হতে পারে।

কৌশল সোর্স কোড
/*backtest
start: 2023-10-13 00:00:00
end: 2023-11-12 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/
// © RolandoSantos

//@version=4
strategy(title = "Coppock Curve", shorttitle = "Copp Curve Strat", default_qty_type=strategy.cash, default_qty_value=10000, initial_capital=10000)

///trail stop
longTrailPerc = input(title="Trail Long Loss (%)", minval=0.0, step=0.1, defval=100) * 0.01

// Determine trail stop loss prices
longStopPrice = 0.0

longStopPrice := if (strategy.position_size > 0)
    stopValue = close * (1 - longTrailPerc)
    max(stopValue, longStopPrice[1])
else
    0
//Use SPY for Copp Curve entries and exits//
security = input("SPY")
ticker = security(security, "D", close)

///Copp Curve////
wmaLength = input(title="WMA Length", type=input.integer, defval=10)
longRoCLength = input(title="Long RoC Length", type=input.integer, defval=14)
shortRoCLength = input(title="Short RoC Length", type=input.integer, defval=11)
source = ticker
curve = wma(roc(source, longRoCLength) + roc(source, shortRoCLength), wmaLength)

///Lower Band Plot///
band1 = hline(0)
band0 = hline(100)
band2 = hline(-100)
fill(band1, band0, color=color.green, transp=90)
fill(band2, band1, color=color.red, transp=90)
plot(curve, color=color.white)

///Trade Conditions///
Bull = curve > 0
Bear = curve < 0

///Entries and Exits//
if (Bull)
    strategy.entry("Long", strategy.long, comment = "LE")
    

if (Bear)
    strategy.close("Long", qty_percent=100, comment="close")
    
// Submit exit orders for trail stop loss price
if (strategy.position_size > 0)
    strategy.exit(id="Long Trail Stop", stop=longStopPrice)