یہ حکمت عملی قیمتوں میں ہونے والی تبدیلیوں کا حجم سے موازنہ کرکے مارکیٹ کے جذبات کو ظاہر کرتی ہے اور اسے تجارتی سگنل پیدا کرنے کے لئے ایم اے سی ڈی فارمیٹ میں پیش کرتی ہے۔
حکمت عملی بنیادی طور پر مارکیٹ کے جذبات کو ظاہر کرنے کے لئے مندرجہ ذیل طریقوں کا استعمال کرتی ہے:
ہر بار کے حجم کے مطابق قیمت میں تبدیلی۔ یہ براہ راست خرید و فروخت کی قوت کو ظاہر کرتا ہے۔
قیمت کی تبدیلی اور حجم پر الگ الگ تیزی سے چلنے والے اوسط کا اطلاق کریں ، پھر قیمت کی تبدیلی کے ای ایم اے کو حجم کے ای ایم اے سے تقسیم کریں۔ اس سے کچھ شور خارج ہوجاتا ہے اور اس کے نتیجے میں ایک ہموار
ایم اے سی ڈی جیسی لائنیں حاصل کرنے کے لئے
ہسٹوگرام 0 سے اوپر عبور کرنے سے بولش جذبات میں اضافہ ہوتا ہے ، جبکہ 0 سے نیچے عبور کرنے سے برداشت جذبات میں اضافہ ہوتا ہے۔ ہسٹوگرام پر اختلافات بھی مشاہدہ کیے جاسکتے ہیں۔
اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:
مارکیٹ کے جذبات کا اندازہ کرنے کے لئے حجم کی معلومات کا استعمال کرتا ہے، زیادہ قائل.
MACD فارم بدیہی اور استعمال میں آسان ہے.
مختلف مصنوعات اور وقت کے فریم کے لئے حسب ضرورت پیرامیٹرز.
ممکنہ رجحان کی تبدیلیوں کو تلاش کرنے کے لئے ہسٹوگرام پر اختلافات کا پتہ لگاسکتا ہے۔
واضح کوڈ ڈھانچہ، سمجھنے اور بہتر بنانے کے لئے آسان.
اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:
حجم جذبات کی عکاسی کرتا ہے لیکن صحیح سگنل کی ضمانت نہیں دیتا ہے۔ قیمت کی کارروائی کے ساتھ مل کر کام کرنے کی ضرورت ہے۔
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))