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

رجحان کی تبدیلی کا نظام

مصنف:چاؤ ژانگ، تاریخ: 2023-10-23 17:18:28
ٹیگز:

img

جائزہ

رجحان الٹ سسٹم ایک رجحان کی پیروی کرنے والی حکمت عملی ہے جو رجحان کی نشاندہی کرنے اور pullbacks میں داخل ہونے کے لئے چلتی اوسط ، CCI اشارے اور سپر رجحان اشارے کا استعمال کرتی ہے۔ یہ رجحان کی سمت کی تصدیق کرسکتا ہے اور retracements کے دوران انٹری سگنل فراہم کرسکتا ہے۔

حکمت عملی منطق

اس حکمت عملی میں مختصر مدت کے چلتے ہوئے اوسط کے طور پر 21 پیریڈ ای ایم اے اور طویل مدتی چلتے ہوئے اوسط کے طور پر 55 پیریڈ ای ایم اے کا استعمال کیا گیا ہے۔ 55 ای ایم اے سے اوپر 21 ای ایم اے ایک بڑھتی ہوئی رجحان کی نشاندہی کرتا ہے ، جبکہ 55 ای ایم اے سے نیچے 21 ای ایم اے ایک نیچے کی رجحان کی نشاندہی کرتا ہے۔

سی سی آئی اشارے سے پتہ چلتا ہے کہ جب قیمت انتہائی سطحوں تک پہنچ گئی ہے۔ لیول 1 سگنل اس وقت ہوتا ہے جب سی سی آئی ڈیفالٹ کے مطابق 100/-100 تک پہنچ جاتا ہے ، لیول 2 140/-140 اور لیول 3 180/-180. اس سے پتہ چلتا ہے کہ زیادہ خریدنے یا فروخت کی حالت ہے۔

سپر ٹرینڈ اشارے مخصوص رجحان کی سمت کا تعین کرتا ہے۔ اس میں اپ ٹرینڈز اور ڈاؤن ٹرینڈز کے لئے اسٹاپ نقصان اور انٹری لیول کی نشاندہی کرنے کے لئے اے ٹی آر شامل ہے۔

جب 21 ای ایم اے 55 ای ایم اے سے اوپر ہے اور سی سی آئی کم سطح (اوور سیلڈ ایریا) تک پہنچ جاتا ہے تو ، یہ لانگ انٹری کا اشارہ کرسکتا ہے۔ جب 21 ای ایم اے 55 ای ایم اے سے نیچے ہے اور سی سی آئی اعلی سطح (اوور بکٹ ایریا) تک پہنچ جاتا ہے تو ، یہ شارٹ انٹری کا اشارہ کرسکتا ہے۔ اسٹاپ نقصان سپر ٹرینڈ کی اسٹاپ سطح پر طے ہوتا ہے ، اور منافع حاصل کرنا 400 پپس پر طے ہوتا ہے۔

فوائد کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی ہدایات

مختلف علامتوں پر پیرامیٹر کی ترتیبات کی جانچ کریں ، ایم اے ادوار ، اے ٹی آر ادوار ، اے ٹی آر ضرب وغیرہ کو بہتر بنائیں۔ موافقت پذیر اسٹاپ نقصان کے لئے ٹریلنگ اسٹاپ یا اے ٹی آر اسٹاپ پر غور کریں۔ متحرک منافع کے ہدف کے لئے اے ٹی آر پر مبنی منافع حاصل کریں۔ متضاد مارکیٹوں سے بچنے کے لئے سی سی آئی سگنل لینے پر رجحان کی رفتار کی جانچ کرنے کے لئے فلٹرز شامل کریں۔ بہتر رجحان کی توثیق کے لئے مقداری رجحان کی طاقت کے اشارے شامل کریں۔

خلاصہ

رجحان الٹ نظام رجحانات ، سی سی آئی اور سپر ٹرینڈ کو رجحانات کی نشاندہی کرنے اور رجحانات کے اندراجات کے لئے زیادہ خریدنے / زیادہ فروخت کرنے کے لئے جوڑتا ہے۔ اس میں نسبتا high اعلی استحکام اور جیت کی شرح ہے ، لیکن اسٹاپ نقصان ، منافع اور رجحان کی توثیق کے طریقہ کار کو علامتوں اور مارکیٹ کے حالات میں استحکام کے ل further مزید اصلاح کی ضرورت ہے۔ مجموعی طور پر یہ رجحان کے مواقع کو پکڑنے کے لئے اشارے کو جوڑنے کے لئے ایک آسان اور براہ راست نقطہ نظر کا استعمال کرتا ہے ، اور اس میں مزید تحقیق اور درخواست دینے کے قابل ہے۔


/*backtest
start: 2022-10-16 00:00:00
end: 2023-01-08 00:00:00
period: 1d
basePeriod: 1h
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/
// © greenmask9

//@version=4
strategy("Oath", overlay=true)

// 21 EMA
emalength = input(21, title="Short EMA")
emashort = ema(close, emalength)

// 55 EMA
emalength2 = input(55, title="Long EMA")
ema = ema(close, emalength2)

//CCI calculation and inputs
lengthcci = input(20, minval=1, title="Overbought/sold detector period")
src = input(close, title="Overbought/sold detector source")
ma = sma(src, lengthcci)
ccivalue = (src - ma) / (0.015 * dev(src, lengthcci))


//CCI plotting
ccioverbought = input(defval=100, title="Overbought level 1")
ccioverbought2 = input(defval=140, title="Overbought level 2")
ccioverbought3 = input(defval=180, title="Overbought level 3")

ccioversold = input(defval=-100, title="Oversold level 1")
ccioversold2 = input(defval=-140, title="Oversold level 2")
ccioversold3 = input(defval=-180, title="Oversold level 3")

//cciOB = (ccivalue >= ccioverbought and ccivalue < ccioverbought2)
//cciOS = (ccivalue <= ccioversold and ccivalue > ccioversold2)

//cciOB2 = (ccivalue >= ccioverbought2 and ccivalue < ccioverbought3)
//cciOS2 = (ccivalue <= ccioversold and ccivalue > ccioversold3)

//cciOB3 = (ccivalue >= ccioverbought3)
//cciOS3 = (ccivalue <= ccioversold3)

//Supertrend

length = input(title="ATR Period", type=input.integer, defval=55)
mult = input(title="ATR Multiplier", type=input.float, step=0.1, defval=5.0)
wicks = input(title="Take Wicks into Account ?", type=input.bool, defval=true)
illuminate = input(title="Illuminate Trend", type=input.bool, defval=false)

atr = mult * atr(length)

longStop = hl2 - atr
longStopPrev = nz(longStop[1], longStop)
longStop := (wicks ? low[1] : close[1]) > longStopPrev ? max(longStop, longStopPrev) : longStop

shortStop = hl2 + atr
shortStopPrev = nz(shortStop[1], shortStop)
shortStop := (wicks ? high[1] : close[1]) < shortStopPrev ? min(shortStop, shortStopPrev) : shortStop

dir = 1
dir := nz(dir[1], dir)
dir := dir == -1 and (wicks ? high : close) > shortStopPrev ? 1 : dir == 1 and (wicks ? low : close) < longStopPrev ? -1 : dir

//entries
uptrend = emashort>ema and dir == 1
upsignal = ccivalue<=ccioversold and ccivalue>ccioversold2
upsignal2 = ccivalue<=ccioversold2 and ccivalue>ccioversold3
upsignal3 = ccivalue<=ccioversold3
downtrend = emashort<ema and dir == -1
downsignal = ccivalue>=ccioverbought and ccivalue<ccioverbought2
downsignal2 = ccivalue>=ccioverbought2 and ccivalue<ccioverbought3
downsignal3 = ccivalue>=ccioverbought3

//adapts to the current bar, I need to save the bars number when the condition for buy was true, static number is spread
spread = input (0.00020, title="Spread")
upstoploss = longStop - spread
downstoploss = shortStop + spread
strategy.initial_capital = 50000
ordersize=floor(strategy.initial_capital/close)
testlong = input(title="Test longs", type=input.bool, defval=true)
testshort = input(title="Test shorts", type=input.bool, defval=true)
//new
degree = input(title="Test level 1 overbought/sold levels", type=input.bool, defval=true)
degree2 = input(title="Test level 2 overbought/sold levels", type=input.bool, defval=false)
degree3 = input(title="Test level 3 overbought/sold levels", type=input.bool, defval=false)

statictarget = input(title="Use static target", type=input.bool, defval=true)
statictargetvalue = input(title="Static target in pips", type=input.integer, defval=400)

//timetrade = input(title="Open trades only withing specified time", type=input.bool, defval=true)
//timtrade = input()

//přidat možnost TP podle ATR a sl podle ATR
buy1 = uptrend and upsignal and strategy.opentrades==0 and testlong and degree
x1 = barssince (buy1)
if (buy1)
//bodlo by zakázat atrtarget v tomto případě
    if (statictarget)
        strategy.entry("Oath1", strategy.long, ordersize)
        strategy.exit( "Oath1 Close", from_entry="Oath1" , profit=statictargetvalue,stop=upstoploss[x1])
 
buy2 = uptrend and upsignal2 and strategy.opentrades==0 and testlong and degree2
x2 = barssince (buy2)
if (buy2)
//bodlo by zakázat atrtarget v tomto případě
    if (statictarget)
        strategy.entry("Oath2", strategy.long, ordersize)
        strategy.exit( "Oath2 Close", from_entry="Oath2" , profit=statictargetvalue,stop=upstoploss[x2])
  
buy3 = uptrend and upsignal3 and strategy.opentrades==0 and testlong and degree3
x3 = barssince (buy3)
if (buy3)
//bodlo by zakázat atrtarget v tomto případě
    if (statictarget)
        strategy.entry("Oath3", strategy.long, ordersize)
        strategy.exit( "Oath3 Close", from_entry="Oath3" , profit=statictargetvalue,stop=upstoploss[x3])

sell1 = downtrend and downsignal and strategy.opentrades==0 and testshort and degree
y1 = barssince (sell1)
if (sell1)
    if (statictarget)
        strategy.entry("Oath1.s", strategy.short, ordersize)
        strategy.exit( "Oath1 Close", from_entry="Oath1.s" , profit=statictargetvalue,stop=downstoploss[y1])

sell2 = downtrend and downsignal2 and strategy.opentrades==0 and testshort and degree2
y2 = barssince (sell2)
if (sell2)
    if (statictarget)
        strategy.entry("Oath2.s", strategy.short, ordersize)
        strategy.exit( "Oath2 Close", from_entry="Oath2.s" , profit=statictargetvalue,stop=downstoploss[y2])

sell3 = downtrend and downsignal3 and strategy.opentrades==0 and testshort and degree3
y3 = barssince (sell3)
if (sell3)
    if (statictarget)
        strategy.entry("Oath3.s", strategy.short, ordersize)
        strategy.exit( "Oath3 Close", from_entry="Oath3.s" , profit=statictargetvalue,stop=downstoploss[y3])

plotshape(uptrend and upsignal and degree, location=location.belowbar, color=color.green, transp=0, style=shape.triangleup, size=size.tiny, text="Oath up")
plotshape(downtrend and downsignal and degree, location=location.abovebar, color=color.red, transp=0, style=shape.triangledown, size=size.tiny, text="Oath down")
plotshape(uptrend and upsignal2 and degree2, location=location.belowbar, color=color.green, transp=0, style=shape.triangleup, size=size.tiny, text="Oath up+")
plotshape(downtrend and downsignal2 and degree2, location=location.abovebar, color=color.red, transp=0, style=shape.triangledown, size=size.tiny, text="Oath down+")
plotshape(uptrend and upsignal3 and degree3, location=location.belowbar, color=color.green, transp=0, style=shape.triangleup, size=size.tiny, text="Oath up++")
plotshape(downtrend and downsignal3 and degree3, location=location.abovebar, color=color.red, transp=0, style=shape.triangledown, size=size.tiny, text="Oath down++")



مزید