
بیل مارکیٹ ٹریکنگ سسٹم ایک رجحان سے باخبر رہنے پر مبنی مکینیکل ٹریڈنگ سسٹم ہے۔ یہ ٹریڈنگ سگنل کو فلٹر کرنے کے لئے 4 گھنٹے کے گراف پر رجحان کے اشارے کا استعمال کرتا ہے ، جبکہ 15 منٹ کے گراف پر اشارے کے ذریعہ انٹریوں کا فیصلہ کیا جاتا ہے۔ اہم اشارے میں آر ایس آئی ، بے ترتیب اشارے اور ایم اے سی ڈی شامل ہیں۔ اس نظام کا فائدہ یہ ہے کہ متعدد ٹائم فریموں کا مجموعہ جعلی سگنل کو مؤثر طریقے سے فلٹر کرسکتا ہے ، جبکہ کم ٹائم فریم کے اشارے کا استعمال کرتے ہوئے زیادہ درست انٹری ٹائمنگ حاصل کیا جاسکتا ہے۔ تاہم ، اس نظام میں کچھ خطرات بھی موجود ہیں ، جیسے کہ زیادہ تجارت اور جعلی توڑنے کے مسائل پیدا کرنے میں آسانی سے۔
اس نظام کا بنیادی منطق یہ ہے کہ مختلف ٹائم فریموں کے اشارے کو جوڑ کر رجحان کی سمت اور داخلے کے وقت کی نشاندہی کی جائے۔ خاص طور پر ، 4 گھنٹے کے چارٹ پر آر ایس آئی ، بے ترتیب اشارے اور ای ایم اے دونوں کو مجموعی رجحان کی سمت کا فیصلہ کرنے کے لئے موزوں ہونا چاہئے۔ یہ زیادہ تر شور کو مؤثر طریقے سے فلٹر کرسکتا ہے۔ 15 منٹ کے چارٹ پر آر ایس آئی ، بے ترتیب اشارے ، ایم اے سی ڈی اور ای ایم اے کو بھی ایک ساتھ دیکھنے کی ضرورت ہے ، خاص طور پر اس موقع کا تعین کرنے کے لئے۔
اس کے مطابق، نظام کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جا سکتا ہے:
بیل مارکیٹ ٹریکنگ سسٹم مجموعی طور پر ایک بہت ہی عملی رجحان ٹریکنگ میکانی ٹریڈنگ سسٹم ہے۔ یہ مارکیٹ کے رجحانات اور اہم داخلے کے اوقات کی نشاندہی کرنے کے لئے متعدد ٹائم فریموں کے مجموعی اشارے کا استعمال کرتا ہے۔ معقول پیرامیٹرز کی ترتیب اور مسلسل اصلاحاتی جانچ کے ذریعہ ، یہ نظام زیادہ تر مارکیٹ کے ماحول کے مطابق ڈھال سکتا ہے ، جس سے مستحکم منافع بخش اثر حاصل ہوتا ہے۔ لیکن ہمیں ان میں سے کچھ ممکنہ خطرات سے بھی آگاہ ہونا چاہئے ، اور ان خطرات کو روکنے اور حل کرنے کے لئے فعال اقدامات کرنا چاہئے۔
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Cowabunga System from babypips.com", overlay=true)
// 4 Hour Stochastics
length4 = input(162, minval=1, title="4h StochLength"), smoothK4 = input(48, minval=1, title="4h StochK"), smoothD4 = input(48, minval=1, title="4h StochD")
k4 = sma(stoch(close, high, low, length4), smoothK4)
d4 = sma(k4, smoothD4)
//15 min Stoch
length = input(10, minval=1, title="15min StochLength"), smoothK = input(3, minval=1, title="15min StochK"), smoothD = input(3, minval=1, title="15min StochD")
k = sma(stoch(close, high, low, length), smoothK)
d= sma(k, smoothD)
//4 hour RSI
src1 = close, len1 = input(240, minval=1, title="4H RSI Length")
up1 = rma(max(change(src1), 0), len1)
down1 = rma(-min(change(src1), 0), len1)
rsi4 = down1 == 0 ? 100 : up1 == 0 ? 0 : 100 - (100 / (1 + up1 / down1))
//15 min RSI
src = close, len = input(9, minval=1, title="15M RSI Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi15 = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
//MACD Settings
source = close
fastLength = input(12, minval=1, title="MACD Fast"), slowLength=input(26,minval=1, title="MACD Slow")
signalLength=input(9,minval=1, title="MACD Signal")
fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)
macd = fastMA - slowMA
signal = ema(macd, signalLength)
// Stops and Profit inputs
inpTakeProfit = input(defval = 1000, title = "Take Profit", minval = 0)
inpStopLoss = input(defval = 0, title = "Stop Loss", minval = 0)
inpTrailStop = input(defval = 400, title = "Trailing Stop", minval = 0)
inpTrailOffset = input(defval = 0, title = "Trailing Stop Offset", minval = 0)
// Stops and Profit Targets
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na
useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na
//Specific Time to Trade
myspecifictradingtimes = input('0500-1600', title="My Defined Hours")
longCondition1 = time(timeframe.period, myspecifictradingtimes) != 0
longCondition2 = rsi4 <= 80
longCondition3 = k4 >= d4 and k4 <= 80
longCondition4 = ema(close, 80) >= ema(close, 162)
allLongerLongs = longCondition1 and longCondition2 and longCondition3 and longCondition4
longCondition5 = rsi15 <= 80
longCondition6 = k >= d and k <= 80 and fastMA >= slowMA
longCondition7 = ema(close, 5) >= ema(close, 10)
allLongLongs = longCondition5 and longCondition6 and longCondition7
if crossover(close, ema(close, 5)) and allLongerLongs and allLongLongs
strategy.entry("Long", strategy.long, comment="LongEntry")
shortCondition1 = time(timeframe.period, myspecifictradingtimes) != 0
shortCondition2 = rsi4 >= 20
shortCondition3 = k4 <= d4 and k4 >= 20
shortCondition4 = ema(close, 80) <= ema(close, 162)
allShorterShorts = shortCondition1 and shortCondition2 and shortCondition3 and shortCondition4
shortCondition5 = rsi15 >= 20
shortCondition6 = k <= d and k >= 20 and fastMA <= slowMA
shortCondition7 = ema(close, 5) <= ema(close, 10)
allShortShorts = shortCondition5 and shortCondition6 and shortCondition7
if crossunder(close, ema(close,5)) and allShorterShorts and allShortShorts
strategy.entry("Short", strategy.short, comment="ShortEntry")
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)