
پالیسی کا نام: طاقت سے چلنے والی لکیری MACD پالیسی
خلاصہ: یہ ایک مقداری حکمت عملی ہے جو اسٹاک کی قیمتوں کی پیش گوئی کرنے کے لئے لکیری رجعت کا استعمال کرتی ہے اور MACD اشارے کے ساتھ مل کر کرتی ہے۔ یہ لکیری رجعت کا استعمال تاریخی قیمتوں اور تجارت کے حجم کا تجزیہ کرنے کے لئے کرتی ہے تاکہ مستقبل کی قیمتوں کے رجحانات کی پیش گوئی کی جاسکے۔ جب منافع بخش مواقع سامنے آتے ہیں تو ، یہ MACD اشارے کے ساتھ مل کر فیصلہ کرنے کا وقت طے کرتا ہے۔
حکمت عملی:
تجزیہ: یہ ایک ایسی حکمت عملی ہے جو اعدادوشمار کی پیش گوئی اور تکنیکی اشارے کے فیصلے کو جوڑتی ہے۔ یہ قیمت کی پیش گوئی کرنے کے لئے لکیری رجعت کا استعمال کرتا ہے ، جس سے ذہنی قیاس آرائیوں سے گریز کیا جاتا ہے۔ اس کے ساتھ ہی ، MACD اشارے مارکیٹ کی خرید و فروخت کی طاقت کا مؤثر اندازہ لگاتے ہیں ، اور مواقع کو درست طریقے سے پکڑتے ہیں۔ مجموعی طور پر ، یہ ایک انتہائی منظم ، پیش گوئی کرنے والی درست اور خطرے سے قابو پانے والی حکمت عملی ہے۔
خطرے کا تجزیہ: لکیری رجعت صرف تاریخی اعداد و شمار پر انحصار کرتی ہے ، اور اس طرح کے اہم منافع بخش خبر جیسے اچانک واقعات کے لئے حساس نہیں ہے ، جس سے غلط سگنل پیدا ہوسکتے ہیں۔ اس کے علاوہ ، پیرامیٹرز کی ترتیبات جیسے رجعت کی مدت کی لمبائی بھی حکمت عملی کی کارکردگی کو متاثر کرتی ہے۔ ہم تجویز کرتے ہیں کہ وی وی ایم اے کو ہموار پیش گوئی کی قیمتوں کا استعمال کریں ، تاکہ حکمت عملی پر منحنی حرکت کے اثر کو کم کیا جاسکے۔
بہتر بنانے کی سمت: ہمارے خیال میں اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
خلاصہ: یہ حکمت عملی قیمت کی پیشن گوئی اور MACD اشارے کے ساتھ لکیری رجعت کے فیصلے کے ذریعے ، ایک منظم مقداری تجارتی حکمت عملی تشکیل دیتی ہے۔ اس میں پیش گوئی کی منطق کی وضاحت ، خطرے پر قابو پانے ، بہتر بنانے کی جگہ کی وسعت وغیرہ جیسے فوائد ہیں۔ ہمیں یقین ہے کہ مسلسل اصلاح اور تکرار کے ذریعے ، اس کی کارکردگی بہتر اور بہتر ہوگی۔ یہ ہمیں سائنسی پیشن گوئی کے طریقوں کا استعمال کرتے ہوئے مقداری تجارت کرنے کے لئے ایک نظریہ فراہم کرتا ہے ، جو ہمارے گہری تحقیق اور اطلاق کے قابل ہے۔
/*backtest
start: 2023-12-07 00:00:00
end: 2023-12-14 00:00:00
period: 1m
basePeriod: 1m
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("Linear On MACD", overlay=true, margin_long=100, margin_short=100)
fast_length = input(title="Fast Length", defval=12)
slow_length = input(title="Slow Length", defval=26)
tolerance = input.string(title="Risk tolerance", defval = "LOW", options=["LOW", "HIGH"])
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)
//Linear Regression
vol = volume
// Function to calculate linear regression
linregs(y, x, len) =>
ybar = math.sum(y, len)/len
xbar = math.sum(x, len)/len
b = math.sum((x - xbar)*(y - ybar),len)/math.sum((x - xbar)*(x - xbar),len)
a = ybar - b*xbar
[a, b]
// Historical stock price data
price = close
// Length of linear regression
len = input(defval = 21, title = 'Lookback')
// Calculate linear regression for stock price based on volume
[a, b] = linregs(price, vol, len)
// Predicted stock price based on volume
predicted_price = a + b*vol
// Check if predicted price is between open and close
is_between = open < predicted_price and predicted_price < close
// Plot predicted stock price
plot(predicted_price, color=color.rgb(218, 27, 132), linewidth=2, title="Predicted Stock Price")
plot(ta.vwma(predicted_price,len), color=color.rgb(199, 43, 64), linewidth=2, title="Predicted Stock Price")
//BUY Signal
lincrossunder = close > predicted_price
macdrise = ta.rising(macd,2)
//macdvollong = ta.crossover(macd, signal)
//macdlong = ta.crossover(macdLine, signalLine)
macdvollong = macd > signal
macdlong = macdLine > signalLine
longCondition=false
if macdlong and macdvollong and is_between and ta.rising(predicted_price,1)
longCondition := true
if (longCondition)
strategy.entry("My Long Entry Id", strategy.long)
//Sell Signal
lincrossover = close < predicted_price
macdfall = ta.falling(macd,1)
macdsell = macd < signal
shortCondition = false
risklevel = predicted_price
if (tolerance == "HIGH")
risklevel := ta.vwma(predicted_price,len)
if macdfall and macdsell and (macdLine < signalLine) and (close < risklevel)
shortCondition := true
if (shortCondition)
strategy.entry("My Short Entry Id", strategy.short)