
اس مضمون میں ایک ٹریڈنگ حکمت عملی کا تعارف کیا گیا ہے جو لاری ولیمز کے تین دورانیہ متحرک اوسط پر مبنی ہے۔ یہ حکمت عملی قیمت کے رجحان کو پکڑنے کے لئے دو انڈیکس کی متحرک اوسط ((EMA) کا استعمال کرتی ہے ، اور جب تین مسلسل K لائن بند ہونے والی قیمتیں EMA کو توڑ دیتی ہیں تو اس میں تجارتی سگنل پیدا ہوتا ہے۔ حکمت عملی کے پیرامیٹرز کو ایڈجسٹ کیا جاسکتا ہے ، جو مختلف مارکیٹوں اور ادوار کے لئے موزوں ہے۔
لیری ولیمز ٹرپل سائیکل متحرک یکساں ٹریڈنگ حکمت عملی ایک رجحان کی پیروی کرنے والی حکمت عملی ہے جو ڈبل ای ایم اے اور لگاتار کے لائن کی سمت پر مبنی ہے ، اور پیرامیٹرز کی اصلاح کے ذریعہ مختلف مارکیٹوں کے مطابق ڈھال لی جاتی ہے۔ تاہم ، حکمت عملی خود نسبتا simple آسان ہے ، جو ہلکی مارکیٹ میں خراب کارکردگی کا مظاہرہ کرتی ہے ، اور اس میں ونڈ کنٹرول کے اقدامات کی کمی ہے ، اور مزید اصلاح اور بہتری کی ضرورت ہے۔ حکمت عملی کی خوبیوں اور خامیوں کو جامع طور پر مدنظر رکھتے ہوئے ، یہ حکمت عملی واضح رجحانات والی منڈیوں میں استعمال کرنے کے لئے موزوں ہے ، اور پوزیشن مینجمنٹ اور رسک کنٹرول کے اقدامات کے ساتھ مل کر مجموعی کارکردگی اور استحکام کو بہتر بناتا ہے۔
/*backtest
start: 2023-05-05 00:00:00
end: 2024-05-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Larry Williams 3 Periodos Editável de MarcosJr", overlay=true, process_orders_on_close=true)
// Parametrização do período do EMA
emaPeriodHighs = input.int(title="Highs Period", defval=3, minval=1, maxval=9999)
emaPeriodLows = input.int(title="Lows Period", defval=3, minval=1, maxval=9999)
// Parametrização da data de início e fim do período a ser coletado
startYear = input.int(title="Start Year", defval=2020)
startMonth = input.int(title="Start Month", defval=1, minval=1, maxval=12)
startDay = input.int(title="Start Day", defval=1, minval=1, maxval=31)
endYear = input.int(title="End Year", defval=2020)
endMonth = input.int(title="End Month", defval=12, minval=1, maxval=12)
endDay = input.int(title="End Day", defval=31, minval=1, maxval=31)
// Convertendo data de início e fim para timestamp
startDate = timestamp(startYear, startMonth, startDay, 00, 00)
endDate = timestamp(endYear, endMonth, endDay, 23, 59)
// EMA
emaH = ta.ema(high, emaPeriodHighs)
emaL = ta.ema(low, emaPeriodLows)
// PLOT:
// Desenha as linhas EMA no gráfico
plot(emaH, color=color.green, linewidth=2)
plot(emaL, color=color.red, linewidth=2)
// Condições
inDateRange = true
// Verifica se houve mais de três candles consecutivos do mesmo sentido
checkThreeConsecutiveCandles = (close[0] > close[1] and close[1] > close[2] and close[2] > close[3]) or (close[0] < close[1] and close[1] < close[2] and close[2] < close[3])
if(close < emaL and inDateRange and checkThreeConsecutiveCandles and barstate.isconfirmed)
strategy.entry("Long", strategy.long, comment="Long", when=strategy.position_size == 0)
if(close > emaH and inDateRange and checkThreeConsecutiveCandles and barstate.isconfirmed)
strategy.close("Long", comment="Close Long")
// Fechar a operação no fechamento do pregão
if(strategy.position_size > 0 and na(time_close[0]))
strategy.close("Long", comment="Close Long")