وسائل لوڈ ہو رہے ہیں... لوڈنگ...

متحرک نمونہ رجحان الٹ کرنے کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-13 16:52:34
ٹیگز:

img

جائزہ

متحرک پیٹرن ٹرینڈ ریورسنگ حکمت عملی قیمتوں کی پیش گوئی کرنے کے لئے لکیری رجسٹریشن اور ٹریڈنگ سگنل تیار کرنے کے لئے چلتی اوسط لائنوں کو پیٹرن بنانے کے لئے استعمال کرتی ہے۔ جب پیش گوئی کی گئی قیمت چلتی اوسط لائن سے اوپر کی طرف بڑھتی ہے تو یہ خرید سگنل تیار کرتی ہے اور جب نیچے سے نیچے کی طرف بڑھتی ہے تو سگنل فروخت کرتی ہے ، رجحان کی تبدیلیوں کو پکڑتی ہے۔

حکمت عملی منطق

  1. متوقع قیمت حاصل کرنے کے لئے تجارتی حجم کی بنیاد پر اسٹاک کی قیمت کی لکیری رجسٹریشن کا حساب لگائیں
  2. مختلف حالات کے تحت چلتی اوسط کی حساب کتاب
  3. جب پیش گوئی کی قیمت بڑھتی ہوئی اوسط کو عبور کرتی ہے تو خریدنے کا اشارہ پیدا کریں
  4. فروخت کا اشارہ پیدا کریں جب پیش گوئی کی قیمت نیچے کی طرف بڑھتی ہوئی اوسط کو عبور کرتی ہے
  5. رجحان کی تبدیلی کے وقت کا تعین کرنے کے لئے MACD اشارے کو شامل کریں

مذکورہ بالا اشاروں کے ساتھ متعدد تصدیقوں کا امتزاج جھوٹے بریک آؤٹس سے بچتا ہے اور درستگی کو بہتر بناتا ہے۔

فوائد کا تجزیہ

  • قیمت کے رجحان کی پیشن گوئی کرنے کے لئے لکیری رجسٹریشن کا استعمال کریں ، سگنل کی درستگی کو بہتر بنائیں
  • چلتی اوسط پیٹرن کے ذریعے رجحان کی تبدیلیوں کو پکڑو
  • تجارتی حجم پر مبنی رجعت بہتر معاشی معنی رکھتی ہے
  • MACD وغیرہ کی طرف سے متعدد توثیق جھوٹے سگنل کو کم کرتی ہے

خطرے کا تجزیہ

  • لکیری رجسٹریشن کے پیرامیٹرز نتائج کو نمایاں طور پر متاثر کرتے ہیں
  • حرکت پذیر اوسط کی ترتیبات بھی سگنل کی کیفیت کو متاثر کرتی ہیں
  • تصدیق ہونے کے باوجود، جھوٹے سگنل ایک خطرہ ہیں
  • تجارت کی تعدد کو کم کرنے اور منافع کی شرح کو بہتر بنانے کے لئے کوڈ کو مزید بہتر بنایا جاسکتا ہے

اصلاح کی ہدایات

  • لکیری رجسٹریشن اور چلتی اوسط کے پیرامیٹرز کو بہتر بنائیں
  • جھوٹے سگنل کی شرح کو کم کرنے کے لئے مزید تصدیق کی شرائط شامل کریں
  • رجحان کی تبدیلیوں کے معیار کا اندازہ کرنے کے لئے مزید عوامل شامل کریں
  • انفرادی تجارتوں کے لئے خطرات کو کم کرنے کے لئے اسٹاپ نقصان کی حکمت عملیوں کو بہتر بنائیں

نتیجہ

متحرک پیٹرن ٹرینڈ الٹ کرنے کی حکمت عملی میں رجحان کی الٹ کو پکڑنے کے لئے لکیری رجعت کی پیش گوئی اور چلتی اوسط کے نمونوں کو مربوط کیا گیا ہے۔ سنگل اشارے کی حکمت عملی کے مقابلے میں ، اس میں زیادہ وشوسنییتا ہے۔ پیرامیٹرز ، تصدیق اور دیگر اصلاحات میں مزید بہتری سگنل کے معیار اور منافع کو بڑھا سکتی ہے۔


/*backtest
start: 2023-12-05 00:00:00
end: 2023-12-12 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 Cross", overlay=true, margin_long=100, margin_short=0)

//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 = 'Strategy Length')
linearlen=input(defval = 9, title = 'Linear Lookback')
[a, b] = linregs(price, vol, len)

// Calculate linear regression for stock price based on volume
//eps = request.earnings(syminfo.ticker, earnings.actual)
//MA For double confirmation

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)

// 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

//MACD
//[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)

// Plot predicted stock price
plot(predicted_price, color=color.rgb(65, 59, 150), linewidth=2, title="Predicted Price")
plot(ta.sma(predicted_price,linearlen), color=color.rgb(199, 43, 64), linewidth=2, title="MA Predicted Price")
//offset = input.int(title="Offset", defval=0, minval=-500, maxval=500)
plot(out, color=color.blue, title="MA200")
[macdLine, signalLine, histLine] = ta.macd(predicted_price, 12, 26, 9)

//BUY Signal

longCondition=false
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(macdLine,2)
macdlong = ta.crossover(predicted_price, ta.wma(predicted_price,linearlen))  and (signalLine < macdLine)
if macdlong and macdrise
    longCondition := true

if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)
//Sell Signal
lastEntryPrice = strategy.opentrades.entry_price(strategy.opentrades - 1)
daysSinceEntry = len
daysSinceEntry := int((time - strategy.opentrades.entry_time(strategy.opentrades - 1)) / (24 * 60 * 60 * 1000))
percentageChange = (close - lastEntryPrice) / lastEntryPrice * 100
//trailChange = (ta.highest(close,daysSinceEntry) - close) / close * 100

//label.new(bar_index, high, color=color.black, textcolor=color.white,text=str.tostring(int(trailChange)))
shortCondition=false
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(macdLine,1)
macdsell = macdLine < signalLine
if macdfall and macdsell and (macdLine < signalLine) and ta.falling(low,2)
    shortCondition := true

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




مزید