
رجحانات کی پیروی کرنے والی خرید و فروخت کی حکمت عملی ایک سادہ رجحانات کی پیروی کرنے والی دن کی تجارت کی حکمت عملی ہے۔ اس حکمت عملی کا بنیادی نظریہ یہ ہے کہ رجحانات کی سمت کو منتقل کرنے والی اوسط پر مبنی اندازہ لگایا جائے ، اور اس رجحان میں اتار چڑھاؤ کے دوران خرید و فروخت کی جائے۔
یہ حکمت عملی رجحان کی سمت کا تعین کرنے کے لئے ایک سادہ حرکت پذیر اوسط SMA کا استعمال کرتی ہے۔ بڑھتے ہوئے رجحان میں ، جب K لائن کم ہوتی ہے تو ، حکمت عملی اس سے پہلے کی K لائن کی اونچائی کو توڑنے پر زیادہ کام کرتی ہے۔ گرنے والے رجحان میں ، جب K لائن اونچائی پر ہوتی ہے تو ، حکمت عملی اس سے پہلے کی K لائن کی اونچائی کو توڑنے پر خالی ہوجاتی ہے۔
اس حکمت عملی میں بلینچ فلاور کے اشاریہ %K اور %D کا بھی استعمال کیا گیا ہے۔ اس حکمت عملی میں ٹریڈنگ کے خلاف تجارت کی جاتی ہے جب٪K پر٪D کا سامنا کرنا پڑتا ہے۔ اس کے علاوہ ، حکمت عملی MACD اور سگنل وکر کو فلٹرنگ کی شرائط کے طور پر استعمال کرتی ہے ، اور صرف اس وقت تجارت کی جاتی ہے جب MACD اور سگنل رجحان کی سمت سے ملتے ہیں۔
یہ حکمت عملی صرف زیادہ ، صرف خالی یا ایک ہی وقت میں بہت زیادہ خالی کام کر سکتی ہے۔ شروع کی تاریخ کو پیمائش کے آغاز کے مہینے اور سال کے طور پر ترتیب دیا جاسکتا ہے۔ تمام پیرامیٹرز جیسے چلتی اوسط مدت ، K مدت ، D مدت ، MACD پیرامیٹرز وغیرہ اپنی مرضی کے مطابق ہوسکتے ہیں۔
اس حکمت عملی میں مندرجہ ذیل خطرات شامل ہیں:
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
ٹرینڈ ٹریکنگ خرید و فروخت کی حکمت عملی کا مجموعی نظریہ واضح اور آسان ہے ، اس کا اندازہ لگانے کے لئے کہ رجحان کی سمت کیا ہے ، اور اس رجحان میں ٹریڈنگ کے مواقع کو بند کرنے کے لئے اشارے کے فلٹر کا استعمال کریں۔ یہ حکمت عملی پیرامیٹرز کی اصلاح کے ذریعہ اچھی کارکردگی کا مظاہرہ کرسکتی ہے ، لیکن اس کے باوجود اس کو کم کرنے کے لئے کمبائن کوڈ کی پیکیجنگ کی ضرورت ہے۔ اس کے علاوہ ، خطرے کو کنٹرول کرنے کے لئے مناسب اصلاح کرنا بھی ضروری ہے۔
/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Higher High / Lower Low Strategy", overlay=true)
// Getting inputs
longOnly = input(true, title="Long or Short Only")
useMACD = input(true, title="Use MACD Filter")
useSignal = input(true, title="Use Signal Filter")
//Filter backtest month and year
startMonth = input(10, minval=1, maxval=12, title="Month")
startYear = input(2020, minval=2000, maxval=2100, title="Year")
//Filter funtion inputs
periodA = input(20, minval=1, title="Period SMA")
periodK = input(5, minval=1, title="Period %K")
fast_length = input(title="Period Fast", type=input.integer, defval=5)
slow_length = input(title="Period Slow", type=input.integer, defval=20)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 30)
//Calculations
smoothD = 3 //input(3, minval=1, title="Smooth %D")
smoothK = 2 //input(2, minval=1, title="Smooth %K")
ma50 = sma(close, periodA)
k = sma(stoch(close, high, low, periodK), smoothK) - 50
d = sma(k, smoothD)
macd = ema(close,fast_length) - ema(close,slow_length)
signal = ema(macd,signal_length)
hist = macd - signal
if (not na(k) and not na(d) and not na(macd) and not na(signal) and longOnly and month>=startMonth and year>=startYear)// if(k > k[1] and k[2] >= k[1] and (ma50 > ma50[1]) and (not useK or k[1] <= -threshold_k) and (not useMACD or macd > macd[1]) and (not useSignal or signal > signal[1]) and (not useHHLL or close >= high[1]) and (not useD or d <= -threshold_d))
if(high[2] >= high[1] and high > high[1] and (ma50 > ma50[1]) and (not useMACD or macd > macd[1]) and (not useSignal or signal > signal[1]))
strategy.order("HH_LE", strategy.long, when=strategy.position_size == 0, comment="HH_LE")
if (k < k[1])
strategy.order("HH_SX", strategy.short, when=strategy.position_size != 0, comment="HH_SX")
if (not na(k) and not na(d) and not na(macd) and not na(signal) and not longOnly and month>=startMonth and year>=startYear)
if(low[2] <= low[1] and low < low[1] and (ma50 < ma50[1]) and (not useMACD or macd < macd[1]) and (not useSignal or signal < signal[1]))
strategy.order("HH_SE", strategy.short, when=strategy.position_size == 0, comment="HH_SE")
if (k > k[1])
strategy.order("HH_LX", strategy.long, when=strategy.position_size != 0, comment="HH_LX")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)