মোমেন্টাম মার্কেট সেন্টিমেন্ট ইন্ডিকেটর কৌশল


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

মোমেন্টাম মার্কেট সেন্টিমেন্ট ইন্ডিকেটর কৌশল

ওভারভিউ

এই কৌশলটি মূল্যের পরিবর্তন এবং লেনদেনের পরিমাণের তুলনা করে বাজারের অংশগ্রহণকারীদের মনোভাব প্রকাশ করে এবং MACD আকারে উপস্থাপন করে এবং লেনদেনের সংকেত দেয়।

কৌশল নীতি

এই কৌশলটি মূলত নিম্নলিখিত গণনাগুলির মাধ্যমে বাজার মনোভাব প্রকাশ করেঃ

  1. K-লাইন প্রতিটির দামের পরিবর্তনকে লেনদেনের পরিমাণে ভাগ করুন। এটি সরাসরি ক্রেতা-বিক্রেতার শক্তির দুর্বলতা দেখায়।

  2. ইন্ডেক্সের সরলীকৃত মুভিং এভারেজ প্রয়োগ করে, দামের পরিবর্তন এবং লেনদেনের পরিমাণের উপর ভিত্তি করে, তারপর দামের পরিবর্তনের ইএমএকে লেনদেনের পরিমাণের ইএমএ দ্বারা ভাগ করুন। এটি আংশিক গোলমালকে ফিল্টার করতে পারে এবং তুলনামূলকভাবে মসৃণ ক্যাচ বাজার আবেগ কার্ভ তৈরি করতে পারে।

  3. ক্যালকুলেটর বাজার অনুভূতি ক্যালকুলেটর উপর দ্রুত এবং ধীরে ধীরে EMA গণনা করুন, MACD এর অনুরূপ একটি কার্ভ পাবেন। যেখানে MACD লাইনটি গতিশীলতার দিকনির্দেশ এবং শক্তি প্রদর্শন করে, সিগন্যাল লাইনটি এর চলমান গড়, কলামযুক্ত গ্রাফটি দুটি কার্ভের পার্থক্য দেখায়, যা গতিশীলতার পরিবর্তনকে উপস্থাপন করে।

যখন স্তম্ভের চার্টটি 0 পরা হয় তখন মাল্টি হেড মার্কেট মেজাজের জন্য একটি শক্তিশালী সংকেত এবং যখন এটি 0 পরা হয় তখন খালি হেড মার্কেট মেজাজের জন্য একটি শক্তিশালী সংকেত। স্তম্ভের চার্ট থেকে বিচ্ছিন্ন হওয়ার ঘটনাও দেখা যায়।

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

এই কৌশলটির সুবিধাগুলো হলঃ

  1. মার্কেটপ্লেসগুলোতে ট্রেডিং ভলিউমের উপর ভিত্তি করে বাজারের অংশগ্রহণকারীদের মনোভাবের মূল্যায়ন করা আরও বেশি বিশ্বাসযোগ্য।

  2. MACD ফর্ম্যাটটি স্বজ্ঞাত এবং ব্যবহার করা সহজ।

  3. প্যারামিটারগুলি বিভিন্ন জাত এবং সময়কালের জন্য সামঞ্জস্যপূর্ণ।

  4. একটি সম্ভাব্য প্রবণতা বিপরীত পয়েন্ট সনাক্ত করার জন্য একটি কলামযুক্ত গ্রাফ সনাক্ত করা যায়।

  5. কোডের কাঠামো পরিষ্কার, সহজে বোঝা যায় এবং অপ্টিমাইজ করা যায়।

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

এই কৌশলটি নিম্নলিখিত ঝুঁকিগুলিও বহন করেঃ

  1. ট্রেডিং ভলিউম বাজার অনুভূতি প্রতিফলিত করতে পারে, কিন্তু ট্রেডিং সিগন্যাল সঠিক হওয়ার নিশ্চয়তা দেয় না। মূল্যের গতিবিধির সাথে বিচার করা দরকার।

  2. MACD প্যারামিটার সেট করা ভুল হলে ভুল সিগন্যাল বা ভুয়া সিগন্যাল তৈরি হতে পারে। প্রজাতি এবং সময়কালের জন্য প্যারামিটার অপ্টিমাইজ করা প্রয়োজন।

  3. প্রবণতা পাল্টাতে পারে এমন একটি সংকেত হতে পারে, যা একটি মিথ্যা সংকেত হতে পারে।

  4. দেরিতে প্রবেশের ঝুঁকি রয়েছে। স্টপ লস ট্র্যাকিং বা প্রবণতা এবং প্রাসঙ্গিক জাতের সাথে যুক্তিসঙ্গত যাচাইয়ের জন্য উপযুক্তভাবে অপেক্ষা করা যেতে পারে।

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

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

  1. testing বিভিন্ন জাত এবং সময়কালের জন্য প্যারামিটার সমন্বয়, সর্বোত্তম প্যারামিটার খুঁজুন

  2. ক্ষতির ঝুঁকি কমাতে স্টপ লস কৌশল অবলম্বন করুন।

  3. প্রাসঙ্গিক জাতের দামের প্রবণতার সাথে মিলিত হয়ে ট্রেডিং সিগন্যাল যাচাই করুন।

  4. মেশিন লার্নিং পদ্ধতি ব্যবহার করে গতিশীল অপ্টিমাইজেশান প্যারামিটার

  5. ফিল্টারিংয়ের শর্ত বাড়ানো এবং ভুয়া সংকেত কমানো। যেমন, বড় আকারের প্রবণতা, ওঠানামা, ইত্যাদি।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2023-10-13 00:00:00
end: 2023-11-12 00:00:00
period: 1h
basePeriod: 15m
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/
// © dannylimardi

//@version=4
strategy("Sentiment Oscillator", "Sentiment", overlay=false, initial_capital=100, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.08)


//Inputs
msLen = input(49, type=input.integer, title="Market Sentiment Lookback Length")
emaLen1 = input(40, type=input.integer, title="Fast EMA Length")
emaLen2 = input(204, type=input.integer, title="Slow EMA Length")
signalLen = input(20, type=input.integer, title="Signal Length")
showMs = input(false, type=input.bool, title="Show Market Sentiment?")
showHist = input(true, type=input.bool, title="Show Momentum?")
showMacd = input(false, type=input.bool, title="Show MACD Line?")
showSignal = input(false, type=input.bool, title="Show Signal Line?")
showCpv = input(false, type=input.bool, title="(Show Change/Volume for Each Bar?)")
showEma1 = input(false, type=input.bool, title="(Show Fast EMA?)")
showEma2 = input(false, type=input.bool, title="(Show Slow EMA?)")

//Calculations
priceChange = close - close[1]
changePerVolume = (priceChange/volume) * 10000000  // (The 1000000 doesn't have any significance, it's just to avoid color-change errors when the values are too emall.)
priceChangeEma = ema(priceChange, msLen)
volumeEma = ema(volume, msLen)
marketSentiment = priceChangeEma/volumeEma * 100000000
msEma1 = ema(marketSentiment, emaLen1)
msEma2 = ema(marketSentiment, emaLen2)
macd = msEma1-msEma2
signal = ema(macd, signalLen)
hist = macd-signal

//Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00

//Drawings
plot(showHist ? hist : na, title="Histogram", style=plot.style_area, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below)), transp=0 )
plot(showMacd ? macd : na, title="MACD", color=col_macd, transp=0)
plot(showSignal ? signal : na, title="Signal", color=col_signal, transp=0)
plot(showCpv ? changePerVolume : na, color=changePerVolume > changePerVolume[1] ? color.teal : color.red)
plot(0, color=color.white, transp=80)
plot(showEma1 ? msEma1 : na, color=color.aqua)
plot(showEma2 ? msEma2 : na, color=color.yellow)
plot(showMs ? marketSentiment : na, color=color.lime)

//Strategy
strategy.entry("Buy", strategy.long, when=crossover(hist, 0))
strategy.close("Buy", when=crossunder(hist, 0))