وسائل لوڈ ہو رہے ہیں... لوڈنگ...

Ichimoku بادل رجحان کی پیروی کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-02-01 11:34:23
ٹیگز:

img

I. حکمت عملی کا نام: Ichimoku Cloud Trend حکمت عملی کے بعد

II. حکمت عملی کا جائزہ

یہ حکمت عملی ایک خالص رجحان کی پیروی کرنے کی حکمت عملی تیار کرنے کے لئے متعدد Ichimoku Cloud سگنلز کا استعمال کرتی ہے جس کا مقصد درمیانی سے طویل مدتی رجحانات کو پکڑنا ، استحکام کو فلٹر کرنا ، اور مضبوط رجحان کی سمتوں پر عمل کرنا ہے۔

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

یہ حکمت عملی بنیادی طور پر ٹینکن سین ، کیجون سین ، چیکو اسپین اور دیگر کلیدی اشارے استعمال کرتی ہے۔ طویل مدتی رجحانات کا فیصلہ کرنے کے ل it ، یہ معروف اور پسماندہ اسپین کے مابین تعلقات پر مرکوز ہے۔ مخصوص داخلے اور باہر نکلنے کے اوقات کے ل it ، یہ ٹینکن سین اور کیجون سین کراس اوورز اور کلاؤڈ کے ساتھ قیمت کے تعلقات میں تبدیلیوں کو دیکھتا ہے۔

خلاصہ میں ، بنیادی منطق یہ ہے: درمیانی اور طویل مدتی رجحان کی تصدیق کریں -> مضبوط رجحان کی بحالی کے اشاروں کا انتظار کریں -> رجحانات کی پیروی کرنے کے لئے داخل ہوں -> پیچھے رکنے والے نقصان کے ساتھ باہر نکلیں۔

خاص طور پر ، درمیانی اور طویل مدتی رجحان کا تعین کرنے کے ل it ، یہ معروف اور پسماندہ اسپین کے مابین تعلقات کا استعمال کرتا ہے (سب سے اوپر معروف سبز اسپین بڑھتی ہوئی رجحان کی نشاندہی کرتا ہے اور اس کے برعکس) ۔ بڑے رجحان کی تصدیق کے بعد ، ٹینکن سین اور کیجون سین کے مابین کراس اوور کے ساتھ ساتھ قیمت کے بریک آؤٹ سگنلز کو رجحان کی بحالی کی نشاندہی کرنے کے لئے استعمال کیا جاتا ہے۔ داخلے کے بعد ، کیجون سین کو باہر نکلنے کے لئے پیچھے رہنے والے اسٹاپ نقصان کے طور پر استعمال کیا جاتا ہے۔

اس سے قلیل سے درمیانی مدت کی توسیع کو فلٹر کیا جاتا ہے اور مارکیٹوں میں مستقل کارکردگی کے ل strong مضبوط رجحانات کو پکڑنے کی اجازت ملتی ہے۔

IV. فوائد

(1) درمیانی اور طویل مدتی رجحان کی سمت کا تعین کرنے کے لئے Ichimoku Cloud کا استعمال اہم سمت کے کناروں کو تلاش کرنے کے لئے فائدہ مند ہے.

(2) Tenkan-sen/Kijun-sen کراس اوور اور کلاؤڈ کے ساتھ قیمت کے تعلقات میں تبدیلیوں سے مؤثر طریقے سے استحکام کو فلٹر کرنے اور مضبوط رجحانات کو ابتدائی طور پر پکڑنے کی اجازت ملتی ہے۔

(3) ٹریلنگ سٹاپ نقصان باہر نکلنے کے طریقہ کار کو مؤثر طریقے سے الگ تھلگ نقصانات کو کنٹرول کرتے ہوئے بڑے رجحانات پر سوار کرنے کی اجازت دیتا ہے.

(4) مختلف Ichimoku سگنلز کو ملا کر ایک مضبوط نظام بناتا ہے جو رجحانات کو آسانی سے پیروی کرتا ہے۔

V. خطرات

(1) بڑے رجحان کی غلط نشاندہی کا نظام خطرہ۔ اگر بڑے رجحان کی غلط تشخیص کی جاتی ہے تو ، اس کے بعد کی تمام کارروائیوں میں غلط سمت کا خطرہ ہوگا۔

(2) ناقص انتخاب شدہ انٹری ٹائمنگ سے خطرہ۔ غیر مناسب انٹری ٹائمنگ سے قیمتوں میں منفی اضافے کا خطرہ ہے۔

(3) بہت تنگ رکنے سے خطرہ۔ قیمتوں میں انتہائی حرکتیں بہت تنگ رکنے کو ختم کرسکتی ہیں جس کے نتیجے میں غیر منصوبہ بند نقصانات ہوسکتے ہیں۔

(4) اعلی تجارتی تعدد جس کی وجہ سے ٹرانزیکشن لاگت میں بہت زیادہ اضافہ ہوتا ہے۔ پیرامیٹرز کی خراب ایڈجسٹمنٹ سے تجارتی تعدد اور لاگت میں بہت زیادہ اضافہ ہوسکتا ہے۔

VI. ترقی کے شعبے

(1) بہترین پیرامیٹرز تلاش کرنے کے لئے Ichimoku ان پٹ ادوار کے مختلف مجموعے کی جانچ.

(2) اعلی معیار کے اندراجات کو یقینی بنانے کے لئے اندراج فلٹرز کو بہتر بنائیں.

(3) خطرہ انعام کو متوازن کرنے کے لئے سٹاپ فاصلے کو ایڈجسٹ کریں.

(4) انکولی منافع لینے کے طریقہ کار کو پیدا کرنے کے لئے قیمت کلیدی اشارے کے فاصلے پر مبنی منافع کے ہدف کی سطح شامل کریں.

VII. نتیجہ

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


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Ichimoku trendfollowing", overlay=true, initial_capital=1000, commission_type=strategy.commission.cash_per_order, commission_value=0.04, slippage=2)

//***************************
//  INPUT BACKTEST RANGE    *
//***************************
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2010, title = "From Year", minval = 2000) 
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2000)

start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true

//***************
//*  ICHIMOKU   *
//***************
//inizializzazione parametri,,
tenkanPeriods = input(9, minval=1, title="Tenkan-Sen")
kinjunPeriods = input(26, minval=1, title="Kinjun-Sen")
senkouSpanBPeriods = input(52, minval=1, title="Senkou Span B")
displacement = input(26, minval=1, title="-ChinkouSpan/+SenkouSpan A")

//definizione Tenkan-Sen (9 Period), Kinjun-Sen (26 Period), Chinkou Span (Lagging Line)
averageHighLow(period) => avg(lowest(period), highest(period))
tenkan= averageHighLow(tenkanPeriods)
kinjun = averageHighLow(kinjunPeriods)
senkouSpanA = avg(tenkan, kinjun)
senkouSpanB = averageHighLow(senkouSpanBPeriods)

//definisco il colore della kumo in base al trend.
senkouSpan1Above = senkouSpanA >= senkouSpanB ? 1 : na
senkouSpan2Below = senkouSpanA <= senkouSpanB ? 1 : na

span1plotU = senkouSpan1Above ? senkouSpanA : na
span2plotU = senkouSpan1Above ? senkouSpanB : na
span1plotD = senkouSpan2Below ? senkouSpanA : na
span2plotD = senkouSpan2Below ? senkouSpanB : na

col = senkouSpanA >= senkouSpanB ? lime : red

//plots Ichimoku
plot(tenkan, title = 'Tenkan-Sen', linewidth=1, color=blue)
plot(kinjun, title = 'Kinjun-Sen', linewidth=1, color=red)
plot(close, title = 'Chinkou Span', linewidth=1, offset = -displacement, color=aqua)
plot( senkouSpanA, title = 'Senkou Span A', style=line, linewidth=1, offset = displacement, color=lime)
plot(senkouSpanB, title = 'Senkou Span B', style=line, linewidth=1, offset = displacement, color=red)

//Cloud Lines Plot 
p1 = plot(span1plotU ? span1plotU  : na, title = 'Senkou Span A Above Senkou Span B', style=linebr, linewidth=1, offset = displacement, color=col)
p2 = plot(span2plotU ? span2plotU  : na, title = 'Senkou Span B (52 Period) Below Span A Cloud', style=linebr, linewidth=1, offset = displacement, color=col)
p3 = plot(span1plotD ? span1plotD  : na, title = 'Senkou Span A (26 Period) Below Span B Cloud', style=linebr, linewidth=1, offset = displacement, color=col)
p4 = plot(span2plotD ? span2plotD  : na, title = 'Senkou Span B (52 Period) Above Span A Cloud', style=linebr, linewidth=1, offset = displacement, color=col)
//Fills that color cloud based on Trend.
fill(p1, p2, color=lime, transp=70, title='Kumo (Cloud)')
fill(p3, p4, color=red, transp=70, title='Kumo (Cloud)')

//***********************************************
//*     condizioni ingresso ed uscita mercato   *
//***********************************************
isKumoRialzista = senkouSpanA >= senkouSpanB ? true : false
isSopraKumo = (close > max(senkouSpanA[displacement], senkouSpanB[displacement]))
isSottoKumo = (close < min(senkouSpanA[displacement], senkouSpanB[displacement]))
isChinkouSpanSopra = high[displacement]<close
isChinkouSpanSotto = low[displacement]>close

filtroLong=isSopraKumo and isChinkouSpanSopra
filtroShort=isSottoKumo and isChinkouSpanSotto

//rimbalzato su kijun quando i prezzi stavano ritracciando e il trend era già in atto(tenkan >kijun x entrare long
isPullBackLijunEntryLong = kinjun<tenkan and low<kinjun and (close>kinjun) 
isPullBackLijunEntryShort =kinjun>tenkan and high>kinjun and  (close<kinjun) 

//Breackout Kumo
isBreackoutKumoEntryLong =  crossover(close, max(senkouSpanA[displacement], senkouSpanB[displacement])) and (close>tenkan) and (close>kinjun) 
isBreackoutKumoEntryShort =  crossunder(close, min(senkouSpanA[displacement], senkouSpanB[displacement])) and (close<tenkan) and (close<kinjun)

ConditionEntryLong = (isPullBackLijunEntryLong or isBreackoutKumoEntryLong ) and filtroLong
ConditionEntryShort = (isPullBackLijunEntryShort or isBreackoutKumoEntryLong ) and filtroShort

isExitLong = close<kinjun
isExitShort = close>kinjun

//ingressi ed uscite Mercato
strategy.entry ("Long",long=true, when = window() and ConditionEntryLong)
strategy.entry ("Short",long=false, when = window() and ConditionEntryShort)

strategy.close(id="Long", when=isExitLong)
strategy.close(id="Short", when=isExitShort)
strategy.close_all(when=not window())


مزید