
بائیو میڈین لائن الٹ ٹریڈنگ اسٹریٹجی مختصر اور طویل مدتی دو مختلف ادوار کی سادہ حرکت پذیر اوسط کا حساب کتاب کرکے اور قیمتوں اور حرکت پذیر اوسط کے مابین تعلقات کی بنیاد پر تجارتی سگنل پیدا کرتی ہے۔ جب مختصر میڈین لائن پر طویل مدتی میڈین لائن کو پار کرتے ہو تو زیادہ کام کریں اور جب مختصر میڈین لائن کے نیچے طویل مدتی میڈین لائن کو پار کرتے ہو تو خالی ہوجائیں۔ یہ حکمت عملی رجحان کی پیروی کرنے والی حکمت عملی میں شامل ہے۔
یہ حکمت عملی دو مختلف دورانیوں کی لمبائی کی ایک سادہ حرکت پذیر اوسط قائم کرتی ہے جس میں ان پٹ پیرامیٹرز ہوتے ہیں۔ مختصر دورانیہ کی لائن کو تیز لائن کہا جاتا ہے اور طویل دورانیہ کی لائن کو سست لائن کہا جاتا ہے۔ تیز لائن قیمت میں تبدیلی کا زیادہ تیزی سے جواب دیتی ہے ، مختصر مدت کے رجحانات کو پکڑ سکتی ہے۔ سست لائن قیمت میں تبدیلی کا زیادہ آہستہ جواب دیتی ہے ، مختصر مدت کے مارکیٹ میں شور کو فلٹر کرتی ہے ، اہم رجحانات کو پکڑ سکتی ہے۔ جب تیز لائن پر سست لائن سے گزرتا ہے تو ، اس کی قیمت میں تیزی سے اضافہ ہوتا ہے ، اور زیادہ کام کرتا ہے۔ جب تیز لائن نیچے کی طرف جاتا ہے تو ، اس کی قیمت میں اضافہ ہوتا ہے ، اور خالی ہوجاتا ہے۔
خاص طور پر ، حکمت عملی نے اسما () فنکشن کے ذریعہ دو اوسط لائنوں کا حساب کتاب کیا ، اور اس کے نتائج کو ایکس ایس ایم اے () اور تیز لائنوں پر تفویض کیا۔ حکمت عملی قریب قیمت کا استعمال کرتی ہے اوسط لائن کا حساب لگانے کے لئے۔ جب قریب قیمت ایکس ایس ایم اے کے اوپر سے گزرتی ہے تو ، زیادہ کام کریں ، اور جب قریب قیمت ایکس ایس ایم اے کے نیچے سے گزرتی ہے تو ، خالی ہوجائیں۔ حکمت عملی نے تجارت کے وقت کی حد بھی طے کی ہے ، اور صرف ایک مخصوص وقت کی حد میں ہی تجارتی سگنل جاری کیا جائے گا۔
ہر تجارت کے لئے اسٹاپ نقصان کا مقام طے کریں اور اسٹاپ نقصان کا مقام پہنچنے پر فوری طور پر اسٹاپ نقصان کریں۔ اس کے ساتھ ہی ، حکمت عملی بارکولر فنکشن کے ذریعہ قیمتوں اور سست لائنوں کے مابین تعلقات کو K لائن پر ظاہر کرتی ہے: جب زیادہ ہو تو ، K لائن سبز ہے۔ جب خالی ہو تو ، K لائن سرخ ہے۔ جب خالی پوزیشن ہو تو ، K لائن نیلی ہے۔
خطرے کو کم کرنے کے لئے میڈین لائن پیرامیٹرز کو ایڈجسٹ کرنا ، اسٹاپ اور نقصان کی حکمت عملی کو بہتر بنانا ، وقت کی پابندی کو ختم کرنا یا زیادہ معقول تجارت کا وقت طے کرنا ممکن ہے۔ بہت سارے جھوٹے سگنل سے بچنے کے لئے فلٹرنگ کی شرائط کے طور پر دوسرے اشارے کے ساتھ مل کر بھی غور کیا جاسکتا ہے۔
ڈبل مساوی لائن الٹ ٹریڈنگ حکمت عملی overall ایک سادہ اور عملی رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ مساوی لائن کے ہموار اثر کا بھرپور فائدہ اٹھاتی ہے جس میں رجحان کی سمت کی نشاندہی کی جاتی ہے ، اور اس کے ساتھ ساتھ تیز اور آہستہ آہستہ مساوی لائن ٹریڈنگ سگنل پیدا کرتی ہے۔ اس حکمت عملی کو عملی جامہ پہنانا آسان ہے ، اس کی سوچ واضح ہے ، اور ابتدائی افراد کے لئے موزوں ہے۔ لیکن اس سے زیادہ جعلی سگنل اور ٹائم لیگ کے مسائل پیدا ہوسکتے ہیں۔ اس حکمت عملی کو زیادہ مستحکم اور قابل اعتماد بنانے کے لئے پیرامیٹرز کی اصلاح ، معاون اشارے متعارف کرانے اور اسی طرح کے طریقوں سے بہتری لائی جاسکتی ہے۔ اگر یہ حکمت عملی استعمال کی جاتی ہے تو ، اس سے مستحکم منافع بخش قیمت پیدا ہوسکتی ہے ، اور اس کی مکمل جانچ اور اصلاح کی ضرورت ہے۔
/*backtest
start: 2023-09-15 00:00:00
end: 2023-10-15 00:00:00
period: 4h
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/
// © HPotter
// Simple SMA strategy
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors
//@version=4
timeinrange(res, sess) => not na(time(res, sess)) ? 1 : 0
strategy(title="Simple SMA Strategy Backtest", shorttitle="SMA Backtest", precision=6, overlay=true)
Resolution = input(title="Resolution", type=input.resolution, defval="D")
Source = input(title="Source", type=input.source, defval=close)
xSeries = security(syminfo.tickerid, Resolution, Source)
Length = input(title="Length", type=input.integer, defval=14, minval=2)
TriggerPrice = input(title="Trigger Price", type=input.source, defval=close)
TakeProfit = input(50, title="Take Profit", step=0.01)
StopLoss = input(20, title="Stop Loss", step=0.01)
UseTPSL = input(title="Use Take\Stop", type=input.bool, defval=false)
BarColors = input(title="Painting bars", type=input.bool, defval=true)
ShowLine = input(title="Show Line", type=input.bool, defval=true)
UseAlerts = input(title="Use Alerts", type=input.bool, defval=false)
timeframe = input(title="Time Frame", defval="15")
timerange = input(title="Time Range", defval="2300-0800")
reverse = input(title="Trade Reverse", type=input.bool, defval=false)
pos = 0
xSMA = sma(xSeries, Length)
pos := iff(TriggerPrice > xSMA, 1,
iff(TriggerPrice < xSMA, -1, nz(pos[1], 0)))
nRes = ShowLine ? xSMA : na
alertcondition(UseAlerts == true and pos != pos[1] and pos == 1, title='Signal Buy', message='Strategy to change to BUY')
alertcondition(UseAlerts == true and pos != pos[1] and pos == -1, title='Signal Sell', message='Strategy to change to SELL')
alertcondition(UseAlerts == true and pos != pos[1] and pos == 0, title='FLAT', message='Strategy get out from position')
possig =iff(pos[1] != pos,
iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos)), 0)
if (possig == 1 and timeinrange(timeframe, timerange))
strategy.entry("Long", strategy.long)
if (possig == -1 and timeinrange(timeframe, timerange))
strategy.entry("Short", strategy.short)
if (timeinrange(timeframe, timerange) == 0)
strategy.close_all()
if (UseTPSL)
strategy.close("Long", when = high > strategy.position_avg_price + TakeProfit, comment = "close buy take profit")
strategy.close("Long", when = low < strategy.position_avg_price - StopLoss, comment = "close buy stop loss")
strategy.close("Short", when = low < strategy.position_avg_price - TakeProfit, comment = "close buy take profit")
strategy.close("Short", when = high > strategy.position_avg_price + StopLoss, comment = "close buy stop loss")
nColor = BarColors ? strategy.position_avg_price != 0 and pos == 1 ? color.green :strategy.position_avg_price != 0 and pos == -1 ? color.red : color.blue : na
barcolor(nColor)
plot(nRes, title='SMA', color=#00ffaa, linewidth=2, style=plot.style_line)