
3 10 ওসক্রেটর রূপরেখা চিহ্নিতকরণ কৌশলটি 3 এবং 10 দিনের সরল চলমান গড়ের মধ্যে পার্থক্য গণনা করে একটি MACD সূচক হিসাবে, লেনদেনের পরিমাণের বিশ্লেষণের সাথে মিলিত করে বাজারের কেনা-বেচা স্টকের শক্তি এবং দুর্বলতার বিচার করে, যার ফলে একটি লেনদেনের সংকেত তৈরি হয়। এই কৌশলটি একই সাথে মূল মূল্য অঞ্চল, লেনদেনের পরিমাণের বৈশিষ্ট্য এবং MACD সূচকের বিপরীতে প্রবেশের এবং বের হওয়ার সুযোগগুলি নিশ্চিত করে।
এই কৌশলটির কেন্দ্রীয় সূচক হল MACD, যা একটি দ্রুত চলমান গড় এবং একটি ধীর চলমান গড় নিয়ে গঠিত। দ্রুত লাইনটি 3 দিনের সরল চলমান গড় এবং ধীর লাইনটি 10 দিনের সরল চলমান গড়। তাদের মধ্যে পার্থক্যটি MACD স্তম্ভের লাইন গঠন করে। যখন দ্রুত লাইনটি নীচের দিক থেকে ধীর গতির লাইনটি ভেঙে দেয়, তখন এটি একটি ক্রয় সংকেত উত্পন্ন করে, যার অর্থ হল ক্রয় শক্তি বৃদ্ধি পায়। বিপরীতভাবে, দ্রুত লাইনটি নীচের দিক থেকে ধীর গতির লাইনটি ভেঙে দেয়, যার অর্থ হল বিক্রয় শক্তি বৃদ্ধি পায় এবং বিক্রয় সংকেত উত্পন্ন হয়।
এছাড়াও, এই কৌশলটি প্রতিটি কে লাইনের ক্রয়-বিক্রয় পরিমাণ এবং বিক্রয়-বিক্রয় পরিমাণের আকারের সাথে সম্পর্কযুক্ত, যা বাজারের ক্রয়-বিক্রয় পোর্টগুলির তুলনামূলকভাবে দুর্বলতা নির্ধারণ করে। নির্দিষ্ট পদ্ধতিটি হ’লঃ ক্রয়-বিক্রয় পরিমাণ = ক্রয়-বিক্রয় পরিমাণ x (ক্লোজিং মূল্য-নিম্নতম মূল্য) ÷ ((সর্বোচ্চ মূল্য-নিম্নতম মূল্য); বিক্রয়-বিক্রয় পরিমাণ = ক্রয়-বিক্রয় পরিমাণ x (সর্বোচ্চ মূল্য-ক্রয়-বিক্রয় মূল্য) ÷ ((সর্বোচ্চ মূল্য-নিম্নতম মূল্য) । যদি ক্রয়-বিক্রয় পরিমাণ বিক্রয়-বিক্রয় পরিমাণের চেয়ে উল্লেখযোগ্যভাবে বেশি হয় তবে এটি নির্দেশ করে যে মূল কে লাইনটি একটি শক্তিশালী ক্রয়-বিক্রয় পোর্টের সাথে শেষ হয়েছে, এটি একটি কেনার সংকেত।
MACD সূচক এবং লেনদেনের পরিমাণ বিশ্লেষণের সংমিশ্রণ দ্বারা, কৌশলটি বাজারের সরবরাহ-চাহিদা সম্পর্ক এবং মজবুত প্রবণতার দিকে কার্যকরভাবে বিচার করতে পারে। একই সাথে, কৌশলটি যাচাই করে যে দামগুলি মূল অঞ্চলে রয়েছে কিনা, MACD কার্যকরভাবে বিপরীত হয় কিনা এবং ক্রয়-বিক্রয় প্যালেট লেনদেনের পরিমাণের পার্থক্য যথেষ্ট পরিমাণে রয়েছে কিনা, যাতে কিছু ইমপ্রেস অপারেশনগুলির শব্দটি ফিল্টার করা যায়, যাতে উচ্চ সম্ভাবনা এবং উচ্চ দক্ষতার প্রবেশ নিশ্চিত হয়।
এই কৌশলটির সর্বাধিক সুবিধা হ’ল বাজারের সরবরাহ এবং চাহিদা সম্পর্ককে পুরোপুরি সংযুক্ত করার বিচার। MACD স্তম্ভের লাইনটি ক্রেতা-বিক্রেতাদের শক্তির তুলনা এবং বাজারের গতিপথের দিকনির্দেশকে কার্যকরভাবে নির্ধারণ করতে পারে; ক্রয়-বিক্রয় পার্থক্য বিশ্লেষণটি ক্রেতা-বিক্রেতাদের প্রভাবশালী শক্তিকে স্পষ্টভাবে সনাক্ত করতে পারে। একই সাথে কৌশলটি একাধিক শর্তাদি নির্ধারণ করে যা পর্যালোচনা করা হয়, যাতে হ্রাসের অনুসরণ করা যায় না এবং লাভের উচ্চ সম্ভাবনা নিশ্চিত হয়। তদতিরিক্ত, কৌশলটির অন্তর্নির্মিত স্টপ লস প্রক্রিয়াটি একক ক্ষতির সীমাবদ্ধতাও দেয়।
উপরোক্ত ঝুঁকিগুলি এড়ানো যেতে পারে নিম্নলিখিত উপায়েঃ বাজারের মূল প্রবণতা সঠিকভাবে বিচার করা, অস্থিরতার মধ্যে এই কৌশলটি ব্যবহার করা এড়িয়ে চলুন; বাজারের তথ্যের দিকে মনোযোগ দিন, যেখানে লেনদেনের পরিমাণটি কৃত্রিমভাবে বাড়ানো হয়েছে তা সনাক্ত করুন; প্যারামিটারগুলি সাবধানতার সাথে সামঞ্জস্য করুন এবং বিশেষজ্ঞ সংস্থার পরামর্শগুলি অনুসরণ করুন।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
সামগ্রিকভাবে, এই কৌশলটি অপ্টিমাইজ করার জন্য প্রচুর জায়গা রয়েছে, বিনিয়োগকারীরা তাদের নিজস্ব পরিস্থিতি এবং বাজারের পরিবেশের উপর নির্ভর করে যথাযথভাবে সামঞ্জস্য এবং উন্নতি করতে পারে, যাতে কৌশলটি আরও কার্যকর হয়।
3 10 ঝাঁকুনির রূপরেখা চিহ্নিতকরণ কৌশলটি সফলভাবে MACD বিশ্লেষণ, ক্রয়-বিক্রয় তুলনা এবং একাধিক শর্তাদি ফিল্টার যাচাইয়ের ধারণাকে একত্রিত করেছে। এটি সরবরাহ-চাহিদা সম্পর্ক এবং বাজারের গতিপথের দিকনির্দেশের দৃ strong় ক্ষমতা নির্ধারণ করে, পাশাপাশি ঝুঁকি নিয়ন্ত্রণের জন্য একটি অন্তর্নির্মিত স্টপ-ডাউন ব্যবস্থা রয়েছে। এই কৌশলটি অপ্টিমাইজ করার জায়গাটি বিশাল, প্রয়োগের সম্ভাবনা বিস্তৃত, বিনিয়োগকারীদের মূল্যায়ন এবং গভীর গবেষণার জন্য উপযুক্ত।
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("3 10 Oscillator Profile Flagging", shorttitle="3 10 Oscillator Profile Flagging", overlay=true)
signalBiasValue = input(title="Signal Bias", defval=0.26)
macdBiasValue = input(title="MACD Bias", defval=0.8)
shortLookBack = input( title="Short LookBack", defval=3)
longLookBack = input( title="Long LookBack", defval=10)
takeProfit = input( title="Take Profit", defval=0.75)
stopLoss = input( title="Stop Loss", defval=0.5)
fast_ma = ta.sma(close, 3)
slow_ma = ta.sma(close, 10)
macd = fast_ma - slow_ma
signal = ta.sma(macd, 16)
hline(0, "Zero Line", color = color.black)
buyVolume = volume*((close-low)/(high-low))
sellVolume = volume*((high-close)/(high-low))
buyVolSlope = buyVolume - buyVolume[1]
sellVolSlope = sellVolume - sellVolume[1]
signalSlope = ( signal - signal[1] )
macdSlope = ( macd - macd[1] )
//plot(macdSlope, color=color.red, title="Total Volume")
//plot(signalSlope, color=color.green, title="Total Volume")
intrabarRange = high - low
getLookBackSlope(lookBack) => signal - signal[lookBack]
getBuyerVolBias(lookBack) =>
j = 0
for i = 1 to lookBack
if buyVolume[i] > sellVolume[i]
j += 1
j
getSellerVolBias(lookBack) =>
j = 0
for i = 1 to lookBack
if sellVolume[i] > buyVolume[i]
j += 1
j
getVolBias(lookBack) =>
float b = 0
float s = 0
for i = 1 to lookBack
b += buyVolume[i]
s += sellVolume[i]
b > s
getSignalBuyerBias(lookBack) =>
j = 0
for i = 1 to lookBack
if signal[i] > signalBiasValue
j += 1
j
getSignalSellerBias(lookBack) =>
j = 0
for i = 1 to lookBack
if signal[i] < ( 0 - signalBiasValue )
j += 1
j
getSignalNoBias(lookBack) =>
j = 0
for i = 1 to lookBack
if signal[i] < signalBiasValue and signal[i] > ( 0 - signalBiasValue )
j += 1
j
getPriceRising(lookBack) =>
j = 0
for i = 1 to lookBack
if close[i] > close[i + 1]
j += 1
j
getPriceFalling(lookBack) =>
j = 0
for i = 1 to lookBack
if close[i] < close[i + 1]
j += 1
j
getRangeNarrowing(lookBack) =>
j = 0
for i = 1 to lookBack
if intrabarRange[i] < intrabarRange[i + 1]
j+= 1
j
getRangeBroadening(lookBack) =>
j = 0
for i = 1 to lookBack
if intrabarRange[i] > intrabarRange[i + 1]
j+= 1
j
bool isNegativeSignalReversal = signalSlope < 0 and signalSlope[1] > 0
bool isNegativeMacdReversal = macdSlope < 0 and macdSlope[1] > 0
bool isPositiveSignalReversal = signalSlope > 0 and signalSlope[1] < 0
bool isPositiveMacdReversal = macdSlope > 0 and macdSlope[1] < 0
bool hasBearInversion = signalSlope > 0 and macdSlope < 0
bool hasBullInversion = signalSlope < 0 and macdSlope > 0
bool hasSignalBias = math.abs(signal) >= signalBiasValue
bool hasNoSignalBias = signal < signalBiasValue and signal > ( 0 - signalBiasValue )
bool hasSignalBuyerBias = hasSignalBias and signal > 0
bool hasSignalSellerBias = hasSignalBias and signal < 0
bool hasPositiveMACDBias = macd > macdBiasValue
bool hasNegativeMACDBias = macd < ( 0 - macdBiasValue )
bool hasBullAntiPattern = ta.crossunder(macd, signal)
bool hasBearAntiPattern = ta.crossover(macd, signal)
bool hasSignificantBuyerVolBias = buyVolume > ( sellVolume * 1.5 )
bool hasSignificantSellerVolBias = sellVolume > ( buyVolume * 1.5 )
// 7.48 Profit 52.5%
if ( hasSignificantBuyerVolBias and getPriceRising(shortLookBack) == shortLookBack and getBuyerVolBias(shortLookBack) == shortLookBack and hasPositiveMACDBias and hasBullInversion)
strategy.entry("Short1", strategy.short, qty=10)
strategy.exit("TPS", "Short1", limit=strategy.position_avg_price - takeProfit, stop=strategy.position_avg_price + stopLoss)
// 32.53 Profit 47.91%
if ( getPriceFalling(shortLookBack) and (getVolBias(shortLookBack) == false) and signalSlope < 0 and hasSignalSellerBias)
strategy.entry("Long1", strategy.long, qty=10)
strategy.exit("TPS", "Long1", limit=strategy.position_avg_price + takeProfit, stop=strategy.position_avg_price - stopLoss)