সংশোধিত OBV এবং MACD পরিমাণগত ট্রেডিং কৌশল

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

img

সারসংক্ষেপ

এই কৌশলটি ট্রেডিং সিগন্যাল তৈরির জন্য পরিবর্তিত অন ব্যালেন্স ভলিউম (ওবিভি) এবং এমএসিডি ব্যবহার করে। এটি মূল্য সূচক এমএসিডি এবং পরিবর্তিত ওবিভিকে ভলিউম এবং দামের জন্য একটি বিস্তৃত সূচক হিসাবে একত্রিত করে, যখন দাম এবং ভলিউম শক্তির ভাঙ্গন হয় তখন ট্রেডিং সুযোগগুলি ক্যাপচার করার লক্ষ্যে।

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

  1. বাজার প্রবণতা নির্ধারণের জন্য সহজ চলমান গড় (এসএমএ) গণনা করুন।

  2. পরিবর্তিত OBV গণনা করুন। এটি OBV কে আরও সংবেদনশীল করার জন্য বন্ধ মূল্য এবং পূর্ববর্তী বন্ধ মূল্য সম্পর্কের উপর ভিত্তি করে OBV গণনা পরিবর্তন করে।

  3. পরিবর্তিত OBV এ MACD গণনা করুন। ভলিউম গতির পরিবর্তন সনাক্ত করতে MACD তে দ্রুত লাইন, ধীর লাইন এবং হিস্টোগ্রাম রয়েছে।

  4. যখন এমএসিডি গোল্ডেন ক্রস করে এবং উপরে যায়, তখন একটি ক্রয় সংকেত উৎপন্ন হয়।

  5. যখন এমএসিডি মৃত ক্রস এবং নিচে যায়, তখন একটি বিক্রয় সংকেত সক্রিয় হয়।

  6. প্রবণতাহীন বাজারের সময় অপ্রয়োজনীয় ট্রেড এড়াতে এসএমএগুলি পরীক্ষা করুন।

সুবিধা বিশ্লেষণ

  1. পরিবর্তিত ওবিভি প্রাথমিক ভলিউম পরিবর্তনগুলি ধরতে আরও সংবেদনশীল।

  2. এমএসিডি স্পষ্টভাবে ভলিউম গতি পরিবর্তন এবং মূল স্তর নির্দেশ করে।

  3. ভলিউম এবং দামের সংমিশ্রণ সংকেত সঠিকতা উন্নত করে।

  4. এসএমএ বাজার প্রবণতা নির্ধারণ করে মিথ্যা সংকেত ফিল্টার করে।

  5. পরিষ্কার কৌশল যুক্তি এবং বড় অপ্টিমাইজেশান স্থান।

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

  1. পরিবর্তিত OBV মিথ্যা সংকেত তৈরি করতে পারে, অন্যান্য সূচক দ্বারা ফিল্টার প্রয়োজন।

  2. MACD পরামিতিগুলির ভুল সেটিং ট্রেড মিস করতে পারে বা মিথ্যা সংকেত সৃষ্টি করতে পারে।

  3. ক্ষতি এড়ানোর জন্য স্টক স্পেসিফিকেশনে মনোযোগ দিন।

  4. বাজারের অবস্থা পর্যবেক্ষণ করুন কারণ কৌশলটি বিশেষ পরিস্থিতিতে কাজ নাও করতে পারে।

  5. ব্যাক-টেস্টের ঝুঁকি বেশি হওয়ায় লাইভ ট্রেডিংয়ের ক্ষেত্রে খারাপ পারফরম্যান্স হতে পারে।

অপ্টিমাইজেশান নির্দেশাবলী

  1. বাজারের প্রবণতা নির্ধারণের জন্য বিভিন্ন এসএমএ সময়ের সমন্বয় পরীক্ষা করুন।

  2. ভলিউম ইম্পোমেন্ট পরিবর্তনকে আরও ভালভাবে চিহ্নিত করতে MACD পরামিতিগুলি পরীক্ষা করুন।

  3. ফিল্টার হিসাবে অন্যান্য সূচক যোগ করুন, যেমন KDJ, RSI ইত্যাদি।

  4. ট্রেড প্রতি হারের সীমাতে স্টপ লস যোগ করুন।

  5. সামগ্রিক লাভজনকতা বাড়াতে অর্থ ব্যবস্থাপনা অনুকূল করা।

  6. স্টকগুলির মধ্যে পরীক্ষার পরামিতিগুলির পার্থক্য।

সিদ্ধান্ত

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


/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-14 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/
// © stocktechbot

//@version=5
strategy("Altered OBV On MACD", overlay=true, margin_long=100, margin_short=100)

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © stocktechbot
//@version=5
//SMA Tredline
out = ta.sma(close, 200)
outf = ta.sma(close, 50)
outn = ta.sma(close, 90)
outt = ta.sma(close, 21)
outthree = ta.sma(close, 9)
//sma plot
offset = input.int(title="Offset", defval=0, minval=-500, maxval=500)
plot(out, color=color.blue, title="MA200", offset=offset)
plot(outf, color=color.maroon, title="MA50", offset=offset)
plot(outn, color=color.orange, title="MA90", offset=offset)
plot(outt, color=color.olive, title="MA21", offset=offset)
plot(outthree, color=color.fuchsia, title="MA9", offset=offset)

fast_length = input(title="Fast Length", defval=12)
slow_length = input(title="Slow Length", defval=26)
chng = 0
obv = ta.cum(math.sign(ta.change(close)) * volume)
if close < close[1] and (open < close)
    chng := 1
else if close > close[1]
    chng := 1
else
    chng := -1
obvalt = ta.cum(math.sign(chng) * volume)
//src = input(title="Source", defval=close)
src = obvalt
signal_length = input.int(title="Signal Smoothing",  minval = 1, maxval = 50, defval = 9)
sma_source = input.string(title="Oscillator MA Type",  defval="EMA", options=["SMA", "EMA"])
sma_signal = input.string(title="Signal Line MA Type", defval="EMA", options=["SMA", "EMA"])

// Calculating
fast_ma = sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length)
slow_ma = sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length)
hist = macd - signal
//hline(0, "Zero Line", color=color.new(#787B86, 50))
//plot(hist, title="Histogram", style=plot.style_columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below)))
//plot(macd, title="MACD", color=col_macd)
//plot(signal, title="Signal", color=col_signal)
[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)
//BUY Signal
mafentry =ta.sma(close, 50) > ta.sma(close, 90)
//matentry = ta.sma(close, 21) > ta.sma(close, 50)
matwohun = close > ta.sma(close, 200)
twohunraise = ta.rising(out, 2)
twentyrise = ta.rising(outt, 2)
macdrise = ta.rising(macd,2)
macdlong = ta.crossover(macd, signal)
longCondition=false
if macdlong and macdrise
    longCondition := true

if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)
//Sell Signal
mafexit =ta.sma(close, 50) < ta.sma(close, 90)
matexit = ta.sma(close, 21) < ta.sma(close, 50)
matwohund = close < ta.sma(close, 200)
twohunfall = ta.falling(out, 3)
twentyfall = ta.falling(outt, 2)
shortmafall = ta.falling(outthree, 1)
macdfall = ta.falling(macd,1)
macdsell = macd < signal
shortCondition = false
if macdfall and macdsell and (macdLine < signalLine) and ta.falling(low,2)
    shortCondition := true


if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)


আরো