Ichimoku Candlestick Breakout Strategy


تخلیق کی تاریخ: 2023-12-21 10:44:37 آخر میں ترمیم کریں: 2023-12-21 10:44:37
کاپی: 2 کلکس کی تعداد: 721
1
پر توجہ دیں
1621
پیروکار

Ichimoku Candlestick Breakout Strategy

جائزہ

یہ حکمت عملی مارکیٹ ٹیکنیکل تجزیہ میں بہت مشہور اشارے پر مبنی ہے ، آئیچیموکو کِنکو ہیو اشارے ، جس میں بادل کی شکل اور قیمتوں کے بادل سے تعلقات کا استعمال کرتے ہوئے رجحان کی سمت کا فیصلہ کرنے کے لئے تجارتی مواقع کی کھوج کی جاتی ہے۔ جب قیمت بادلوں کو توڑ دیتی ہے تو تجارتی سگنل پیدا ہوتا ہے۔ یہ حکمت عملی درمیانی لمبی لائن پوزیشن ٹریڈنگ کے لئے موزوں ہے۔

حکمت عملی کا اصول

اس حکمت عملی میں Ichimoku Kinko Hyo اشارے کے کئی اجزاء کا استعمال کیا جاتا ہے ، بشمول ٹرانسمیشن لائن ((Tenkan-Sen) ، بیس لائن ((Kijun-Sen) ، فرنٹ لائن ((Senkou Span A) ، لیڈر لائن ((Senkou Span B) ، اور پیچھے کی لائن ((Chikou Span) ۔ یہ لائنیں مل کر ایک ایسی چیز بنتی ہیں جسے Ichimoku Cloud کہا جاتا ہے۔ جب قیمت بادلوں کو توڑتی ہے تو ، خریدنے اور فروخت کے سگنل پیدا ہوتے ہیں۔

خاص طور پر ، حکمت عملی یہ فیصلہ کرتی ہے کہ آیا قیمت بادل کو توڑ رہی ہے یا نہیں ، بنیادی طور پر سینکو اسپین اے اور سینکو اسپین بی کی دو لائنوں پر مبنی ہے۔ ان دونوں لائنوں کے درمیان کا علاقہ بادل بناتا ہے۔ جب قیمت بند ہوتی ہے تو بادل کے اوپری حصے میں خریدنے کا اشارہ ہوتا ہے۔ جب قیمت بند ہوتی ہے تو بادل کے نچلے حصے میں فروخت کا اشارہ ہوتا ہے۔

اس کے علاوہ ، حکمت عملی نے روکنے اور روکنے کی قیمتیں بھی طے کیں۔ syminfo.pointvalue اور حکمت عملی کی پوزیشن کی معلومات کا استعمال کرتے ہوئے نقصان کے پوائنٹس کی تعداد کا حساب لگائیں ، اور پھر اس کو مخصوص قیمتوں میں تبدیل کریں۔

طاقت کا تجزیہ

اس حکمت عملی کے درج ذیل فوائد ہیں:

  1. Ichimoku اشارے کا استعمال کرتے ہوئے رجحانات کی سمت کا تعین کرنے کے لئے، مارکیٹ شور کو مؤثر طریقے سے فلٹر کرنے کے لئے، وسط اور لمبی لائن رجحانات کی شناخت
  2. بادلوں کو توڑنے کے لئے سگنل بنانا ، جعلی توڑنے سے ہونے والے نقصان کو روکنا
  3. اسٹاپ اور اسٹاپ سیٹنگ کے ساتھ ، انفرادی نقصانات کو محدود کریں اور منافع کو مقفل کریں
  4. مختلف پیرامیٹرز کی حکمت عملی کی کارکردگی پر اثرات کی جانچ کرنے کے لئے پیرامیٹرز کو ایڈجسٹ کیا جا سکتا ہے
  5. بصری بادل اور دیگر Ichimoku اجزاء، ایک بصری گرافکس ٹریڈنگ سگنل کی تشکیل

خطرے کا تجزیہ

اس حکمت عملی میں کچھ خطرات بھی ہیں:

  1. مڈل اور لانگ لائن میں پوزیشن رکھنے سے بڑے نقصان کا خدشہ ہے
  2. بریک سگنل میں تاخیر کا امکان، بہترین داخلے کی جگہ سے محروم
  3. جعلی توڑ پھوڑ سے غلط سگنل اور نقصانات کا خطرہ
  4. طویل عرصے سے پوزیشن رکھنے اور اعلی اخراجات
  5. اسٹاپ نقصان اور اسٹاپ کی قیمتوں کو توڑنے کا خطرہ ہے

ردعمل:

  1. مناسب طریقے سے پوزیشن کی مدت کو کم کرنے کے لئے، ایک ہی فلو نقصان کے خطرے کو کم کرنے کے لئے
  2. دوسرے اشارے کے ساتھ مل کر بریک سگنل کی تاثیر کا اندازہ لگانا
  3. نقصان کو روکنے کی روک تھام کی کارکردگی کو بہتر بنانا
  4. اسٹاک کی مدت کو بہتر بنانا اور اخراجات کو کم کرنا

اصلاح کی سمت

اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:

  1. مختلف پیرامیٹرز کے امتزاج کی جانچ اور بہترین تلاش کریں
  2. دوسرے اشارے کے ساتھ مل کر سگنل فلٹرنگ ، جعلی توڑنے سے بچنے کے لئے
  3. متحرک ایڈجسٹمنٹ اسٹاپ نقصان کی سطح ، ٹریلس اسٹاپ نقصان
  4. اپنی مرضی کے مطابق باہر نکلنے کی شرائط: بادلوں کو توڑنے کا الٹا اشارہ ، قیمت کی واپسی کی شدت کا آغاز
  5. پوزیشن مینجمنٹ کا نظام شامل کریں

خلاصہ کریں۔

Ichimoku سیانے لکیروں کو توڑنے کی حکمت عملی مجموعی طور پر ایک عام قسم کی حکمت عملی ہے جو Ichimoku Kinko Hyo اشارے کا استعمال کرتے ہوئے درمیانی لمبی لائن رجحان کی سمت کا تعین کرتی ہے۔ اس میں پیرامیٹرز کی ایڈجسٹمنٹ ، بصری شکل اور بصری سگنل جیسے فوائد ہیں ، لیکن اس میں کچھ غلط توڑنے کا خطرہ ، پوزیشن رکھنے کا خطرہ وغیرہ بھی موجود ہے۔ پیرامیٹرز کی اصلاح ، سگنل فلٹرنگ ، اور اسٹاپ نقصان کی روک تھام کی ترتیب وغیرہ کے ذریعہ حکمت عملی کی استحکام کو بڑھانے کے لئے خطرہ کم کیا جاسکتا ہے۔ یہ حکمت عملی درمیانی اور طویل مدتی پوزیشن پر مبنی تجارت کے لئے موزوں ہے ، خاص طور پر جب بادلوں کی پرت کو توڑنے کے لئے سگنل تشکیل دیتے ہیں تو اعلی کارکردگی کے ساتھ رجحان کی سمت میں داخل ہوجاتے ہیں۔ مجموعی طور پر ، یہ ایک قابل قدر حکمت عملی ہے جس میں حقیقی جنگ ہے۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © moneyofthegame
// Basado en estrategias con el indicador ICHIMOKU KINKO HIYO
// El tiempo es oro colega :)

//@version=5
strategy('Ichimoku Cloud Estrategia Ruptura Nubes SWING TRADER  (By Insert Cheese)', shorttitle='Ichimoku Cloud Estrategia Ruptura Nubes SWING TRADER  (By Insert Cheese)',

         overlay=true,
         initial_capital=500,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=100,
         commission_type=strategy.commission.percent,
         commission_value=0.05,
         currency=currency.NONE)
         




// Inputs: Ichimoku parametros
ts_bars =   input.int(9,  minval=1, title='Tenkan-Sen ',          group='Parámetros Ichimoku')
ks_bars =   input.int(26, minval=1, title='Kijun-Sen ',           group='Parámetros Ichimoku')
ssb_bars =  input.int(52, minval=1, title='Senkou-Span B ',       group='Parámetros Ichimoku')
cs_offset = input.int(26, minval=1, title='Chikou-Span',          group='Parámetros Ichimoku')
ss_offset = input.int(26, minval=1, title='Senkou-Span A',        group='Parámetros Ichimoku')

middle(len) => // LONGITITUD Ichimoku (SenkouB)
    math.avg(ta.lowest(len), ta.highest(len))

// Ichimoku Componentes
tenkan = middle (ts_bars)
kijun   = middle (ks_bars)
senkouA = math.avg(tenkan, kijun)
senkouB = middle (ssb_bars)


// Plot Ichimoku Kinko Hyo
plot(tenkan,                                     color=color.rgb(171, 128, 0),                              title="Tenkan-Sen",    display = display.none)
plot(kijun,                                      color=color.rgb(39, 0, 112),                               title="Kijun-Sen",     display = display.none)
plot(close, offset=-cs_offset+1,                 color=color.rgb(224, 200, 251),                            title="Chikou-Span",   display = display.none)
sa=plot(senkouA, offset=ss_offset-1,             color=color.rgb(68, 128, 0),                               title="Senkou-Span A", display = display.none)
sb=plot(senkouB, offset=ss_offset-1,             color=color.rgb(131, 0, 120),                              title="Senkou-Span B", display = display.none)
fill(sa, sb, color = senkouA > senkouB ?         color.rgb(0, 211, 11, 82) : color.rgb(75, 0, 126, 82),   title="Cloud color")

// Calculating 
ss_high = math.max(senkouA[ss_offset - 1], senkouB[ss_offset - 1])  //parte alta de la nube
ss_low = math.min(senkouA[ss_offset - 1], senkouB[ss_offset - 1])   //parte baja de la nube
ss_medium = ss_low + (ss_high - ss_low) / 2                         //parte intermedia


// Input para seleccionar largos o cortos
long_entry_enable =  input.bool(true, title='Entradas Largo',   group='Backtest Operativa', inline='SP20')
short_entry_enable = input.bool(true, title='Entradas Corto',   group='Backtest Operativa', inline='SP20')

// Input backtest rango de fechas 
fromMonth =  input.int  (defval=1,     title='Desde Mes',  minval=1,     maxval=12,      group='Backtest rango de fechas')
fromYear  =  input.int  (defval=2000,  title='Desde Año',  minval=1970,                  group='Backtest rango de fechas')
fromDay   =  input.int  (defval=1,     title='Desde Día',  minval=1,     maxval=31,      group='Backtest rango de fechas')
thruDay   =  input.int  (defval=1,     title='Hasta Día',  minval=1,     maxval=31,      group='Backtest rango de fechas')
thruMonth =  input.int  (defval=1,     title='Hasta Mes',  minval=1,     maxval=12,      group='Backtest rango de fechas')
thruYear  =  input.int  (defval=2099,  title='Hasta Año',  minval=1970,                  group='Backtest rango de fechas')

inDataRange = time >= timestamp(syminfo.timezone, fromYear, fromMonth, fromDay, 0, 0) and time < timestamp(syminfo.timezone, thruYear, thruMonth, thruDay, 0, 0)


//Estrategia

// Señales de entrada y salida

price_above_kumo = close  > ss_high // precio cierra arriba de la nube
price_below_kumo = close  < ss_low // precio cierra abajo de la nube
price_cross_above_kumo = ta.crossover  (close  , ss_high )   //precio cruza la nube parte alta
price_cross_below_kumo = ta.crossunder (close  , ss_low )     // precio cruza la nube parte baja

bullish = (price_above_kumo and price_cross_above_kumo)
bearish = (price_below_kumo and price_cross_below_kumo)

comprado = strategy.position_size > 0
vendido = strategy.position_size  < 0

sl_long =  price_above_kumo
sl_short = price_below_kumo


if ( not comprado and bullish and inDataRange and long_entry_enable)
//realizar compra
    strategy.entry("Buy", strategy.long)

//realizar salida long
if (comprado and bearish and inDataRange and long_entry_enable)
    strategy.close ("Buy", comment = "cerrado")

if ( not vendido and bearish and inDataRange and short_entry_enable)
//realizar venta
    strategy.entry("Sell", strategy.short)
    
//realizar salida long
if (vendido  and bullish and inDataRange and short_entry_enable)
    strategy.close ("Buy", comment = "cerrado")

// Función Calcular TP y SL

// Inputs para SL y TP


tpenable = input.bool(true, title =  "SL y TP metodo")



moneyToSLPoints(money)  =>
    strategy.position_size !=0 and tpenable ?  (money / syminfo.pointvalue / math.abs (strategy.position_size)) / syminfo.mintick : na

p = moneyToSLPoints(input.float(  100.0, minval=0.1, step=10.0, title = "Take Profit $$"))
l = moneyToSLPoints(input.float(  100.0, minval=0.1, step=10.0, title = "Stop Loss $$"))
strategy.exit("Close", profit = p, loss = l)



// debug plots for visualize SL & TP levels
pointsToPrice(pp) =>
    na(pp) ? na : strategy.position_avg_price + pp * math.sign(strategy.position_size) * syminfo.mintick
    
pp = plot(pointsToPrice(p),color = color.rgb(76, 175, 79, 96), style = plot.style_linebr )
lp = plot(pointsToPrice(-l),color = color.rgb(76, 175, 79, 96), style = plot.style_linebr )
avg = plot( strategy.position_avg_price, color = color.rgb(76, 175, 79, 96), style = plot.style_linebr )
fill(pp, avg, color = color.rgb(76, 175, 79, 96))
fill(avg, lp, color = color.rgb(255, 82, 82, 97))