اس حکمت عملی میں دوہری اوسط ، بے ترتیب اشارے اور MACD اشارے کا استعمال کیا گیا ہے ، جو کہ مختصر لائن ٹریڈنگ کے مواقع کی نشاندہی کرنے کے لئے ہے۔ یہ ایک زیادہ کلاسیکی مختصر لائن ٹریڈنگ حکمت عملی ہے۔
یہ حکمت عملی بنیادی طور پر مندرجہ ذیل اصولوں پر مبنی ہے۔
ای ایم اے کی اوسط لائن کا استعمال کرتے ہوئے 50 اور 100 دوروں کے لئے ، رجحان کی سمت کا تعین کریں۔ ای ایم اے کی اوسط لائن کا دورانیہ مختصر ہے ، اور قیمت میں تبدیلیوں کا تیزی سے جواب دے سکتا ہے۔ 50 دورانیہ لائن پر 100 دورانیہ لائن کا نشانہ بنانا زیادہ داخلہ ہے؛ 50 دورانیہ لائن کے نیچے 100 دورانیہ لائن کا نشانہ بنانا خالی ہے۔
MACD اشارے کا استعمال کرتے ہوئے فرق سے دور کی قیمت خرید و فروخت کا وقت طے کریں۔ جب فرق اوپر سے 0 پہنتا ہے تو کثیر سر قوت میں اضافہ ہوتا ہے ، زیادہ کام کرتا ہے۔ جب فرق نیچے سے 0 پہنتا ہے تو خالی سر قوت میں اضافہ ہوتا ہے ، خالی کام کرتا ہے۔
اسٹوکاسٹک RSI اشارے کے ساتھ مل کر فیصلہ کریں کہ آیا اوور بیو اوور سیل ہے۔ یہ اشارے کے ڈی جے اشارے اور آر ایس آئی اشارے کے ساتھ مل کر ، مارکیٹ میں اوور بیو اوور سیل کی صورتحال کو ظاہر کرسکتا ہے۔ جب اشارے 20 سے کم ہوتا ہے تو اوور سیل ہوتا ہے ، اور دوسرے اشارے کے ساتھ مل کر زیادہ ہوتا ہے۔ جب اشارے 80 سے زیادہ ہوتا ہے تو اوور سیل ہوتا ہے ، اور دوسرے اشارے کے ساتھ مل کر کم ہوتا ہے۔
پوزیشن کھولنے کی سمت کا تعین کرنے کے بعد ، اگر حالیہ 5 K لائنوں میں سے 4 بند ہونے والی قیمتیں اوسط لائن کو چھوتی ہیں ، جس سے ظاہر ہوتا ہے کہ اوسط لائن کے قریب معاونت یا دباؤ ہے ، تو پوزیشن کھولی جاسکتی ہے۔
سٹاپ اسٹاپ نقصان کی پوزیشن کا استعمال کرتے ہوئے خطرے کا انتظام کرنا۔
یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:
کثیر اشارے کا مجموعہ ، مجموعی طور پر اوسط لائن کا استعمال ، اوورلوڈ اوورلوڈ اشارے اور توانائی کے اشارے ، تجارت کی کامیابی کی شرح کو بہتر بنانا۔
میڈین لائن کا دورانیہ مختصر ہے ، جس سے رجحان کو تیزی سے پکڑنے اور الٹ دینے میں مدد ملتی ہے۔ MACD پیرامیٹرز کو بہتر بنایا گیا ہے ، خرید و فروخت کے وقت کو درست طریقے سے پہچان لیا گیا ہے۔
اسٹوکسٹک آر ایس آئی اشارے کے پیرامیٹرز کو بہتر بنایا گیا ہے تاکہ اوورلوڈ اور اوورلوڈ کو اچھی طرح سے پہچانا جاسکے۔
اوسط لائن کے قریب سپورٹ پریشر کا استعمال کرتے ہوئے تال کو کنٹرول کریں ، تاکہ غیر موثر توڑ میں پھنسنے سے بچ سکیں۔
معقول اسٹاپ لاس ، ایک ہی تجارت کے خطرے کو مؤثر طریقے سے کنٹرول کریں۔
اس حکمت عملی کے کچھ خطرات بھی ہیں:
اس کے علاوہ، اس نے کہا کہ اس کے نتیجے میں ہونے والی نقصانات کو مکمل طور پر ختم نہیں کیا جاسکتا ہے.
ایک سے زیادہ اشارے کے جوڑے میں انحراف ہوسکتا ہے ، جس کی وجہ سے تجارتی سگنل متضاد ہوجاتے ہیں۔
فکسڈ اسٹاپ نقصان کی پوزیشن مارکیٹ میں تبدیلیوں کو اپنانے میں ناکام ہوسکتی ہے۔
کوڈ کا نفاذ زیادہ پیچیدہ ہے ، پیرامیٹرز کی ایک بڑی تعداد ہے ، اور بہتر بنانا آسان نہیں ہے۔
خطرے سے نمٹنے کے لئے مندرجہ ذیل طریقے ہیں:
پیرامیٹرز کو بہتر بنائیں ، سگنل کے معیار کو بہتر بنائیں ، اور جعلی توڑنے کے امکانات کو کم کریں۔
اشارے کے درمیان ترجیحات قائم کریں اور سگنل تنازعات سے بچیں
اسٹاپ اسٹاپ نقصان کی حرکیات کو ٹریک کرنے کے لئے ، اے ٹی آر جیسے اشارے کے مطابق اسٹاپ اسٹاپ نقصان کی حد طے کریں۔
کوڈ کی منطق کو آسان بنانا ، جانچ اور اصلاح کے لئے بنیادی پیرامیٹرز کو نکالنا۔
اس حکمت عملی کو مندرجہ ذیل طریقوں سے بہتر بنایا جاسکتا ہے:
اوسط لائن کی مدت اور MACD پیرامیٹرز کی جانچ پڑتال کریں تاکہ بہترین پیرامیٹرز کا مجموعہ تلاش کیا جاسکے۔
اسٹوکاسٹک آر ایس آئی کے متبادل کے طور پر مختلف اوورلوڈ اور اوورلوڈ اشارے کی جانچ پڑتال کریں۔
متحرک سٹاپ اور موبائل سٹاپ جیسے طریقوں کو آزمائیں تاکہ نقصانات کا انتظام زیادہ ذہین ہو۔
سگنل کے معیار کو بہتر بنانے کے لئے فلٹرنگ کی شرائط شامل کریں ، جیسے کہ ٹرانزیکشن حجم میں اضافہ۔
پوزیشن کھولنے کی منطق کو بہتر بنانا ، ناکامیوں سے بچنے کے لئے۔ مزید اشارے کے فیصلے کے رجحانات متعارف کروائے جاسکتے ہیں۔
اسٹاپ نقصان کی حد مقرر کریں ، جیسے اکاؤنٹ کی رقم کی حد ، روزانہ تجارت کی تعداد ، اور مجموعی خطرے پر قابو پالیں۔
یہ حکمت عملی متعدد اشارے کے فوائد کو مربوط کرتی ہے ، اور مختصر لائن تجارت میں اس کی مضبوط افادیت ہے۔ پیرامیٹرز کو بہتر بنانے ، پوزیشن کھولنے کی سخت منطق ، اور نقصان اور نقصان کے انتظام کی حکمت عملی کو بہتر بنانے کے ذریعے ، حکمت عملی کی استحکام اور منافع کو مزید بہتر بنایا جاسکتا ہے۔ یہ حکمت عملی مختصر لائن تاجروں کے استعمال کے لئے موزوں ہے ، لیکن بڑے نقصان سے بچنے کے لئے خطرے پر قابو پانے پر توجہ دینے کی ضرورت ہے۔
/*backtest
start: 2023-01-01 00:00:00
end: 2023-10-08 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="Forex scalper 2xEMA + SRSI + MACD", shorttitle="Forex scalper 5-15min", overlay=true)
src = input(title="Source", type=input.source, defval=close)
src_0 = src[0]
src_1 = src[1]
src_2 = src[2]
src_3 = src[3]
src_4 = src[4]
len50 = input(50, minval=1, title="Length")
src50 = input(close, title="Source")
out50 = ema(src50, len50)
len100 = input(100)
src100 = input(close, title="Source")
out100 = ema(src100, len100)
len1 = input(1, minval=1, title="Length")
src1 = input(close, title="Source")
out1 = sma(src1, len1)
length = input(4, minval=1)
OverBought = input(80)
OverSold = input(20)
smoothK = 3
smoothD = 3
k = sma(stoch(close, high, low, length), smoothK)
d = sma(k, smoothD)
cu = crossover(k,OverSold)
co = crossunder(k,OverBought)
sma_down = crossunder(out1, out50)
sma_up = crossover(out1,out50)
//if (not na(k) and not na(d))
// if (co and k < OverSold)
// strategy.entry("StochLE", strategy.long, comment="StochLE")
//if (cu and k > OverBought)
// strategy.entry("StochSE", strategy.short, comment="StochSE")
crossCandle_4 = crossover(src[4],out50)
crossCandleUnder_4= cross(src[4],out50)
crossCandle_3 = crossover(src[3],out50)
crossCandleUnder_3= crossunder(src[3],out50)
crossCandle_2 = crossover(src[2],out50)
crossCandleUnder_2= crossunder(src[2],out50)
crossCandle_1 = crossover(src[1],out50)
crossCandleUnder_1= crossunder(src[1],out50)
crossCandle_0 = crossover(src[0],out50)
crossCandleUnder_0= crossunder(src[0],out50)
conditionOver = (crossCandle_4 or crossCandle_3 or crossCandle_2 or crossCandle_1 or crossCandle_0)
conditionUnder =(crossCandleUnder_4 or crossCandleUnder_3 or crossCandleUnder_2 or crossCandleUnder_1 or crossCandleUnder_0)
touch4 = (cross(low[4],out50) or cross(high[4],out50))
touch3 = (cross(low[3],out50) or cross(high[3],out50))
touch2 = (cross(low[2],out50) or cross(high[2],out50))
touch1 = (cross(low[1],out50) or cross(high[1],out50))
touch = touch1 or touch2 or touch3 or touch4
//and sma_up
//and sma_down
// Getting inputs
fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
src_macd = input(title="Source", type=input.source, defval=close)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 10)
sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false)
// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00
// Calculating
fast_ma = sma_source ? sma(src_macd, fast_length) : ema(src_macd, fast_length)
slow_ma = sma_source ? sma(src_macd, slow_length) : ema(src_macd, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal
//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) ), transp=0 )
//plot(macd, title="MACD", color=col_macd, transp=0)
//plot(signal, title="Signal", color=col_signal, transp=0)
// plot((conditionOver or conditionUnder or touch) and src[0] >= out50 and close >= out50 and (cu) and out50 > out100 and hist>=0 , title="Buy", style=columns, color=lime)
// plot((conditionOver or conditionUnder or touch) and src[0] <= out50 and close <= out50 and (co) and out50< out100 and hist<=0 , title="sell", style=columns, color=red)
long_cond = ((conditionOver or conditionUnder or touch) and src[0] >= out50 and close > out50 and (cu) and out50 > out100 and hist>=0)
short_cond = ((conditionOver or conditionUnder or touch) and src[0] <= out50 and close < out50 and (co) and out50< out100 and hist<=0)
tp=input(200)
sl=input(200)
strategy.entry("long",strategy.long, when=long_cond)
strategy.entry("short",strategy.short, when=short_cond)
strategy.exit("X_long", "long", profit=tp, loss=sl, when=touch )
strategy.exit("x_short", "short",profit=tp, loss=sl,when = touch )