ক্রস মুভিং গড় গোল্ডেন ক্রস ডেথ ক্রস কৌশল

লেখক:চাওঝাং, তারিখ: ২০২৩-১২-০৫ ১১ঃ১১ঃ০২
ট্যাগঃ

img

এটি একটি খুব ক্লাসিক চলমান গড় গোল্ডেন ক্রস ডেথ ক্রস কৌশল। কৌশলটি দীর্ঘ এবং সংক্ষিপ্ত ব্যবসার জন্য গোল্ডেন ক্রস এবং ডেথ ক্রস সংকেত গঠনের জন্য বিভিন্ন সময়সীমার সাথে দুটি চলমান গড়, টেনকান এবং কিজুন ব্যবহার করে।

কৌশলগত যুক্তি

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

প্রথমত, টেনকান লাইনটি একটি 9 দিনের লাইন যা স্বল্পমেয়াদী প্রবণতা উপস্থাপন করে; কিউইউএন লাইনটি একটি 26 দিনের লাইন যা মাঝারি মেয়াদী প্রবণতা উপস্থাপন করে। যখন টেনকান লাইনটি কিউইউএন লাইনের উপরে অতিক্রম করে, তখন একটি ক্রয় সংকেত উত্পন্ন হয়। যখন টেনকান লাইনটি কিউইউএন লাইনের নীচে পড়ে, তখন একটি বিক্রয় সংকেত উত্পন্ন হয়। এটি ক্লাসিক চলমান গড় গোল্ডেন ক্রস এবং ডেথ ক্রস কৌশল গঠন করে।

দ্বিতীয়ত, কৌশলটি সেনকু স্প্যান এ (এসএসএ) লাইন এবং সেনকু স্প্যান বি (এসএসবি) লাইনও প্রবর্তন করে। এসএসএ লাইনটি টেঙ্কান এবং কিজুন লাইনের গড়, যখন এসএসবি লাইনটি 52 দিনের চলমান গড়। একসাথে তারা কুমো (মেঘ) ব্যান্ড গঠন করে যা দীর্ঘমেয়াদী প্রবণতার দিক নির্ধারণ করে - মেঘের উপরে দাম একটি আপট্রেন্ডকে নির্দেশ করে যখন মেঘের নীচে দাম একটি ডাউনট্রেন্ডকে নির্দেশ করে।

অবশেষে, ভুয়া সংকেতগুলি ফিল্টার করার জন্য, এই কৌশলটি চিকু স্প্যানের তুলনায় মূল্যের অবস্থানও পরীক্ষা করে (বন্ধের মূল্য 26 দিন বিলম্বিত) কেবলমাত্র যখন দামটি চিকুর নীচে থাকে তখন কিনুন সংকেত উত্পন্ন করে এবং যখন দামটি চিকুর উপরে থাকে তখন বিক্রয় সংকেত উত্পন্ন করে।

সুবিধা

এটি একটি খুব সাধারণ চলমান গড় কৌশল। প্রধান সুবিধাগুলিতে রয়েছেঃ

  1. বিভিন্ন সময়কালের দুটি চলমান গড় ব্যবহার করে কার্যকরভাবে স্বল্পমেয়াদী এবং মাঝারি মেয়াদী প্রবণতা একই সাথে বিচার করা হয়।

  2. দীর্ঘমেয়াদী মন্দাবাজারে ক্রয় এড়ানোর জন্য দীর্ঘমেয়াদী প্রবণতা Kumo ব্যান্ড দিয়ে নির্ধারণ করা হয়।

  3. বিলম্বিত চিকু লাইনের সাথে দামের তুলনা করা অনেক মিথ্যা সংকেত ফিল্টার করে এবং অপ্রয়োজনীয় ট্রেড হ্রাস করে।

চলমান গড়ের বিভিন্ন ফাংশন দক্ষতার সাথে ব্যবহার করে, এই কৌশলটি স্বল্প, মাঝারি এবং দীর্ঘ সময়ের মধ্যে প্রবণতা অনুসরণ করতে পারে।

ঝুঁকি

এই কৌশলটির প্রধান ঝুঁকিগুলির মধ্যে রয়েছেঃ

  1. চলমান গড় কৌশলগুলি অনেকগুলি ভুয়া সংকেত উত্পাদন করে। ভুল পরামিতিগুলির কারণে ঘন ঘন ট্রেডিং ক্ষতির দিকে পরিচালিত করতে পারে।

  2. এই কৌশলটি মূলত মৌলিক বিষয়গুলি বিবেচনা না করে প্রযুক্তিগত দিকগুলিতে মনোনিবেশ করে। ব্যবসায়ের কর্মক্ষমতা বা বাজার নীতিতে বড় পরিবর্তনগুলি প্রযুক্তিগত সংকেতগুলিকে অবৈধ করতে পারে।

  3. কোন স্টপ লস প্রক্রিয়া অন্তর্ভুক্ত করা হয় না। একবার বাজার দিকের বিচার ভুল হলে, ক্ষতি জমা হতে পারে।

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

উন্নতির সুযোগ

এই কৌশলটি নিম্নলিখিত দিকগুলিতেও উন্নত করা যেতে পারেঃ

  1. আরো ব্যাকটেস্টের মাধ্যমে আরো স্থিতিশীল এবং দক্ষ প্যারামিটার সেট অনুসন্ধান করুন।

  2. স্টপ লস নিয়ম যোগ করুন। যুক্তিসঙ্গত স্টপ লস সর্বোচ্চ ক্ষতি কার্যকরভাবে নিয়ন্ত্রণ করতে সহায়তা করে।

  3. মূল সূচকগুলি যেমন লাভের অনুমান সংশোধন যা একটি কোম্পানির প্রত্যাশা সম্পর্কে অন্তর্দৃষ্টি ধারণ করে।

  4. আরও স্থিতিশীল সমাধানের মাধ্যমে চিকু লাইন মূল্য তুলনা কৌশলটি অনুকূল করুন।

  5. স্টক নির্বাচন সংকেত অন্তর্ভুক্ত করুন। PE অনুপাত এবং ROE এর মত স্কোরিং ফ্যাক্টর নিম্ন মানের স্টক ফিল্টার করতে পারে।

সিদ্ধান্ত

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


/*backtest
start: 2022-11-28 00:00:00
end: 2023-12-04 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/
// © mdeous

//@version=4
strategy(
     title="Ichimoku Kinko Hyo Strategy", 
     shorttitle="Ichimoku Strategy", 
     overlay=true,
     pyramiding=0,
     default_qty_type=strategy.percent_of_equity,
     default_qty_value=100,
     initial_capital=1000,
     currency="USD",
     commission_type=strategy.commission.percent,
     commission_value=0.0
     )

//
// SETTINGS
//

// Ichimoku

int TENKAN_LEN = input(title="Tenkan-Sen Length", defval=9, minval=1, step=1)
int KIJUN_LEN = input(title="Kijun-Sen Length", defval=26, minval=1, step=1)
int SSB_LEN = input(title="Senkou Span B Length", defval=52, minval=1, step=1)
int OFFSET = input(title="Offset For Chikou Span / Kumo", defval=26, minval=1, step=1)

// Strategy

int COOLDOWN = input(title="Orders Cooldown Period", defval=5, minval=0, step=1)
bool USE_CHIKOU = input(title="Use Imperfect Chikou Position Detection", defval=false)

//
// HELPERS
//

color _red = color.red
color _blue = color.blue
color _lime = color.lime
color _fuchsia = color.fuchsia
color _silver = color.silver
color _aqua = color.aqua

f_donchian(_len) => avg(lowest(_len), highest(_len))

//
// ICHIMOKU INDICATOR
//

float tenkan = f_donchian(TENKAN_LEN)
float kijun = f_donchian(KIJUN_LEN)
float ssa = avg(tenkan, kijun)
float ssb = f_donchian(SSB_LEN)

plot(tenkan, title="Tenkan", color=_silver)
plot(close, title="Chikou", offset=-OFFSET+1, color=_aqua)
_ssa = plot(ssa, title="SSA", offset=OFFSET-1, color=_lime)
_ssb = plot(ssb, title="SSB", offset=OFFSET-1, color=_red)
fill(_ssa, _ssb, color=ssa > ssb ? _lime : _fuchsia, transp=90)

//
// STRATEGY
//

// Check if price is "above or below" Chikou (i.e. historic price line):
// This detection is highly imperfect, as it can only know what Chikou position
// was 2*offset candles in the past, therefore if Chikou crossed the price
// line in the last 2*offset periods it won't be detected.
// Use of this detection is disabled by default,

float _chikou_val = close[OFFSET*2+1]
float _last_val = close[OFFSET+1]
bool above_chikou = USE_CHIKOU ? _last_val > _chikou_val : true
bool below_chikou = USE_CHIKOU ? _last_val < _chikou_val : true

// Identify short-term trend with Tenkan

bool _above_tenkan = min(open, close) > tenkan
bool _below_tenkan = max(open, close) < tenkan

// Check price position compared to Kumo

bool _above_kumo = min(open, close) > ssa
bool _below_kumo = max(open, close) < ssb

// Check if Kumo is bullish or bearish

bool bullish_kumo = ssa > ssb
bool bearish_kumo = ssa < ssb

// Correlate indicators to confirm the trend

bool bullish_trend = _above_tenkan and _above_kumo and bullish_kumo
bool bearish_trend = _below_tenkan and _below_kumo and bearish_kumo

// Build signals

bool buy1 = (close > open) and ((close > ssa) and (open < ssa)) // green candle crossing over SSA
bool buy2 = bullish_kumo and bearish_kumo[1] // bullish Kumo twist

bool sell1 = (close < open) and ((close < ssb) and (open > ssb)) // red candle crossing under SSB
bool sell2 = bearish_kumo and bullish_kumo[1] // bearish Kumo twist

bool go_long = below_chikou and (bullish_trend and (buy1 or buy2))
bool exit_long = above_chikou and (bearish_trend and (sell1 or sell2))

//
// COOLDOWN
//

f_cooldown() =>
    _cd_needed = false
    for i = 1 to COOLDOWN by 1
        if go_long[i]
            _cd_needed := true
            break
    _cd_needed

go_long := f_cooldown() ? false : go_long

//
// ORDERS
//

strategy.entry("buy", strategy.long, when=go_long)
strategy.close_all(when=exit_long)

//
// ALERTS
//

alertcondition(
     condition=go_long,
     title="Buy Signal",
     message="{{exchange}}:{{ticker}}: A buy signal for {{strategy.market_position_size}} units has been detected (last close: {{close}})."
     )
alertcondition(
     condition=exit_long,
     title="Sell Signal",
     message="{{exchange}}:{{ticker}}: A sell signal for {{strategy.market_position_size}} units has been detected (last close: {{close}})."
     )


আরো