طویل اور مختصر اشارے کی حکمت عملی


تخلیق کی تاریخ: 2023-09-25 17:34:46 آخر میں ترمیم کریں: 2023-09-25 17:34:46
کاپی: 3 کلکس کی تعداد: 510
1
پر توجہ دیں
1166
پیروکار

جائزہ

اس حکمت عملی کا بنیادی نظریہ یہ ہے کہ فاریکس اشارے اور بنیادی حرکت پذیری اوسط کو جوڑ کر ، رجحان کی پیروی اور رجحان کی واپسی کی تجارت کو ممکن بنایا جائے۔ جب قیمت اشارے کے ساتھ مل جاتی ہے تو ، رجحان کی پیروی کی جاتی ہے۔ جب قیمت اشارے سے متصادم ہوتی ہے تو ، واپسی کی تجارت کی جاتی ہے۔

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

یہ حکمت عملی بنیادی طور پر تین اپنی مرضی کے مطابق اشارے پر مبنی ہے:

  1. ٹرینڈ: قیمتوں اور اوورلوڈ اوور سیل چینلز کے مابین تعلقات کا حساب لگانا ، اوور ہیڈ اور اوور ہیڈ رجحانات کا فیصلہ کرنا ، 1 ، 0 ، -1 تین حالتوں کو واپس کرنا۔

  2. اوور بائی اوور سیل چینل ((Tsl): حوالہ اے ٹی آر حساب سے اوپر اور نیچے کی ٹریک ، قیمت کو توڑنے کے لئے اوور بائی سمجھا جاتا ہے ، نیچے کی ٹریک کو توڑنے کے لئے اوور سیل سمجھا جاتا ہے۔

  3. بنیادی منتقل اوسط ((MA): حساب کتاب 20 دوروں کے اختتامی قیمتوں کی سادہ منتقل اوسط۔

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

اس کے علاوہ ، قیمتوں میں منتقل ہونے والی اوسط سے تجاوز کرنا ایک معاون سگنل کے طور پر بھی کام کرتا ہے جو تجارت کی سمت کی رہنمائی کرتا ہے۔ جب قیمت اوسط سے تجاوز کرتی ہے تو اس میں اضافہ ہوتا ہے ، اور جب اوسط سے تجاوز کرتی ہے تو اس میں کمی آتی ہے۔

اس کے علاوہ ، یہ بھی کہا گیا ہے کہ:

  1. زیادہ سے زیادہ اشارے > 0 ، قیمتوں میں اضافے نے ٹریک کو توڑ دیا ، یہ رجحان کی پیروی کرنے کی صورت میں ہے ، مزید کام کریں۔

  2. ڈوٹا ہوا اشارے < 0 ، قیمتوں میں کمی ٹریک سے باہر نکل گئی ، رجحان کی تبدیلی کی حالت میں ، خالی۔

  3. اختتامی قیمت > افتتاحی قیمت > مرکزی پوائنٹ پوائنٹ ، مرکزی مرکز کو توڑنے کے لئے زیادہ مواقع کے طور پر دیکھا جاتا ہے ، زیادہ کام کریں۔

  4. بند ہونے والی قیمت ٹریک سے ٹکرا گئی ، اور بند ہونے والی قیمت > ایک متحرک اوسط ، مزید کام کریں۔

یہ حکمت عملی مندرجہ ذیل ہے:

  1. ڈوٹا ہوا اشارے < 0 ، قیمتوں میں کمی ٹریک سے باہر نکل گئی ، رجحان کی پیروی کی صورت حال میں ، ڈوٹا ہوا۔

  2. ڈپازٹ اشارے > 0 ، قیمتوں میں اضافے نے ٹریک کو توڑ دیا ، یہ رجحان کی تبدیلی کی صورت میں ہے ، مزید کام کریں۔

  3. کھولنے کی قیمت > بند کرنے کی قیمت < مرکزی نقطہ ، ایک مرکزی نقطہ کو توڑنے کے لئے ایک موقع کے طور پر سمجھا جاتا ہے.

  4. اختتامی قیمت نیچے کی طرف بڑھتی ہے ، اور اختتامی قیمت < منتقل اوسط ، خالی ہے۔

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

طاقت کا تجزیہ

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

  1. کثیر فاصلے والے اشارے مارکیٹ کے رجحانات کا درست اندازہ لگانے کے لئے استعمال کیے جاتے ہیں اور حکمت عملی کا ایک مرکزی اشارے ہیں۔

  2. اوور بیئر اوور سیل چینل کے ساتھ ساتھ اشارے کے ساتھ مل کر ، ممکنہ تبدیلی کے مواقع کا پتہ لگایا جاسکتا ہے۔

  3. بنیادی منتقل اوسط ایک معاون فلٹرنگ سگنل کے طور پر استعمال کیا جا سکتا ہے، جعلی توڑنے سے بچنے کے لئے.

  4. مرکزی پوائنٹ ایک اعلی امکانات ٹریڈنگ پوائنٹ بنانے کے لئے ایک کثیر فاریکس اشارے کے ساتھ مل کر.

  5. رجحانات کی پیروی اور تجارت کو تبدیل کرنے کی صلاحیت کے ساتھ ، منافع کے مواقع زیادہ ہیں۔

  6. اوور خرید اوور فروخت چینل کا اختتام واضح اور جامع ہے ، جو خطرے پر قابو پانے میں مددگار ہے۔

خطرے کا تجزیہ

اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:

  1. کثیر خلائی اشارے غلط سگنل دے سکتے ہیں، دوسرے اشارے کے ساتھ مل کر فلٹر کرنے کی ضرورت ہے۔

  2. اس کے علاوہ ، یہ بھی کہا گیا ہے کہ اس طرح کے معاملات میں بہت زیادہ خطرہ ہوتا ہے۔

  3. غلط طور پر ترتیب دی جانے والی اوسط اوسط کی مدت ، رجحانات کو یاد کرنے یا غلط سگنل پیدا کرنے کا سبب بن سکتی ہے۔

  4. مرکز کے مقامات کو تصدیق کے امکانات کی وشوسنییتا کی جانچ پڑتال کی ضرورت ہے۔

  5. اوپری خرید اوپری فروخت چینل کو مختلف اقسام کو اپنانے کے لئے پیرامیٹرز کو بہتر بنانے کی ضرورت ہے۔

  6. انڈیکس پیرامیٹرز میں مماثلت نہیں ہے ، جس کی وجہ سے تجارت کی کثرت ہوسکتی ہے۔

ان خطرات سے نمٹنے کے لیے مندرجہ ذیل اقدامات کیے جا سکتے ہیں:

  1. دیگر اشارے کے ساتھ مل کر جیسے K لائن، ٹرانسمیشن مقدار کی توثیق کثیر فضائی اشارے سگنل

  2. اس کے علاوہ ، آپ کو اپنے اسٹاپ نقصان کی حکمت عملی پر سختی سے عمل کرنا چاہئے ، اور اسے فوری طور پر بند کرنا چاہئے۔

  3. مختلف متحرک اوسط مدت کے پیرامیٹرز کی جانچ کریں اور بہترین پیرامیٹرز تلاش کریں۔

  4. مرکزی نقطہ نظر کی حکمت عملی کے امکانات کو مکمل طور پر جانچنے کے لئے.

  5. چینل کے پیرامیٹرز کو بہتر بنائیں اور مختلف اقسام کے لئے بہترین پیرامیٹرز کا مجموعہ تلاش کریں۔

  6. مجموعی نظام کو مستحکم کرنے کے لئے اشارے کے پیرامیٹرز کو ایڈجسٹ کریں۔

اصلاح کی سمت

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

  1. مشین لرننگ الگورتھم میں اضافہ ، بڑے اعداد و شمار کا استعمال کرتے ہوئے فاریکس اشارے کی تربیت کریں۔ اس سے اشارے کی درستگی میں اضافہ ہوسکتا ہے اور غلط سگنل کو کم کیا جاسکتا ہے۔

  2. خود کار طریقے سے ایڈجسٹ چینل شامل کریں ، مارکیٹ میں اتار چڑھاؤ کے مطابق چینل پیرامیٹرز کو خود بخود ایڈجسٹ کریں۔ اس سے توڑ کی درستگی میں اضافہ ہوسکتا ہے۔

  3. گہری سیکھنے کا استعمال کرتے ہوئے، زیادہ سے زیادہ تبدیلی کے اشارے نکالنے کے لئے، داخلہ اور باہر نکلنے کی حکمت عملی کو بہتر بنانے کے لئے اشارے کے سیٹ تشکیل دیں.

  4. اعلی درجے کی روک تھام کے الگورتھم کو شامل کیا گیا ہے تاکہ رجحانات کو روکنے کے لۓ روکنے کے لۓ روکنے سے بچنے کے لۓ.

  5. پیرامیٹرز کو بہتر بنانے اور مجموعی طور پر حکمت عملی کی استحکام کو بڑھانے کے لئے مجموعی طور پر ٹیسٹ کریں.

  6. فنڈ مینجمنٹ ماڈیول شامل کریں تاکہ خطرہ کنٹرول کو مزید سائنسی بنایا جاسکے۔

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-08-25 00:00:00
end: 2023-09-24 00:00:00
period: 2h
basePeriod: 15m
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/
// © amysojexson

//@version=3
strategy(title="Pivots strategy", overlay=true)

// Input settings
// Create a pull-down menu for the pivot type
pivotType = input(title="Pivot Type",
     options=["Daily", "Intraday", "Weekly"], defval="Daily")

// Make toggles for pivot level options
plotPP   = input(title="Plot PP", type=bool, defval=true)
plotS1R1 = input(title="Plot S1 and R1", type=bool, defval=true)
plotS2R2 = input(title="Plot S2 and R2", type=bool, defval=true)
plotS3R3 = input(title="Plot S3 and R3", type=bool, defval=true)
plotTCBC = input(title="Plot S3 and R3", type=bool, defval=true)
// Configure session options
sessRange = input(title="Trading Session",  defval="0800-1600")
showSess  = input(title="Highlight Session?", type=bool, defval=false)

// Enable or disable pivot labels
showLabels = input(title="Show Labels?", type=bool, defval=false)

// Step 2. Calculate indicator values
// Create a function to fetch daily and weekly data
GetData(res, data) =>
    security(syminfo.tickerid, res, data[1],
         lookahead=barmerge.lookahead_on)

// Fetch daily and weekly price data
dailyHigh  = GetData("D", high)
dailyLow   = GetData("D", low)
dailyClose = GetData("D", close)

weeklyHigh  = GetData("W", high)
weeklyLow   = GetData("W", low)
weeklyClose = GetData("W", close)

// Determine session pivot data
// First see how the price bar relates to
// the session time range
inSession = not na(time(timeframe.period, sessRange)[1])
sessStart = inSession and not inSession[1]
sessEnd   = not inSession and inSession[1]

// Determine session price data
sessHigh  = 0.0
sessLow   = 0.0
sessClose = 0.0

sessHigh := sessStart ? high :
     inSession ? max(high, sessHigh[1]) : na
sessLow := sessStart ? low :
     inSession ? min(low, sessLow[1]) : na
sessClose := sessEnd ? close[1] : na

// Compute high, low, close from previous intra-day session
highPrevSess  = 0.0
lowPrevSess   = 0.0
closePrevSess = 0.0

highPrevSess  := sessEnd ? fixnan(sessHigh) : highPrevSess[1]
lowPrevSess   := sessEnd ? fixnan(sessLow) : lowPrevSess[1]
closePrevSess := sessEnd ? fixnan(sessClose) : closePrevSess[1]

// Now figure out which kind of price data
// to use for the pivot calculation
theHigh = if (pivotType == "Daily")
    dailyHigh
else
    if (pivotType == "Intraday")
        highPrevSess
    else
        weeklyHigh

theLow = if (pivotType == "Daily")
    dailyLow
else
    if (pivotType == "Intraday")
        lowPrevSess
    else
        weeklyLow

theClose = if (pivotType == "Daily")
    dailyClose
else
    if (pivotType == "Intraday")
        closePrevSess
    else
        weeklyClose

// Finally calculate the pivot levels
pp = (theHigh + theLow + theClose) / 3
bc= (theHigh + theLow)/2
tc= (pp-bc)+pp

r1 = pp+(.382*(theHigh-theLow))
s1 = pp-(.382*(theHigh-theLow))
r2 = pp +(.618*(theHigh-theLow))
s2 = pp -(.618*(theHigh-theLow))
r3 = pp +(1*(theHigh-theLow))
s3 = pp -(1*(theHigh-theLow))

// Step 3. Output indicator data
// Plot the various pivot levels
plot(series=plotS3R3 ? r3 : na, title="R3",
     style=circles, linewidth=1, color=#0023FF)
plot(series=plotS2R2 ? r2 : na, title="R2",
     style=circles, linewidth=1, color=#1E90FF)
plot(series=plotS1R1 ? r1 : na, title="R1",
     style=circles, linewidth=1, color=#09E0F3)

plot(series=plotTCBC ? tc : na, title="TC",
     style=circles, linewidth=.75, color=#FF00D1)
plot(series=plotPP ? pp : na, title="PP",
     style=circles, linewidth=1, color=#000000)
plot(series=plotTCBC ? bc : na, title="BC",
     style=circles, linewidth=.75, color=#FF00D1)

plot(series=plotS1R1 ? s1 : na, title="S1",
     style=circles, linewidth=1, color=#09E0F3)
plot(series=plotS2R2 ? s2 : na, title="S2",
     style=circles, linewidth=1, color=#1E90FF)
plot(series=plotS3R3 ? s3 : na, title="S3",
     style=circles, linewidth=1, color=#0023FF)

// Display the pivot names on the chart, if applicable
newPivots = (showLabels == false) ? false :
     (pivotType == "Intraday") ? sessEnd :
     (pivotType == "Daily") ? dayofmonth != dayofmonth[1] :
     dayofweek == monday and dayofmonth != dayofmonth[1]

plotchar(series=newPivots and plotS3R3 ? r3 : na,
     char='', text="R3", offset=1,
     location=location.absolute,
     color=#0023FF, title="R3 label")

plotchar(series=newPivots and plotS2R2 ? r2 : na,
     char='', text="R2", offset=1,
     location=location.absolute,
     color=#1E90FF, title="R2 label")

plotchar(series=newPivots and plotS1R1 ? r1 : na,
     char='', text="R1", offset=1,
     location=location.absolute,
     color=#09E0F3, title="R1 label")

plotchar(series=newPivots and plotTCBC ? r1 : na,
     char='', text="TC", offset=1,
     location=location.absolute,
     color=#FF00D1, title="TC label")
     
plotchar(series=newPivots and plotTCBC ? r1 : na,
     char='', text="BC", offset=1,
     location=location.absolute,
     color=#FF00D1, title="BC label")

plotchar(series=newPivots and plotS1R1 ? s1 : na,
     char='', text="S1", offset=1,
     location=location.absolute,
     color=#09E0F3, title="S1 label")

plotchar(series=newPivots and plotS2R2 ? s2 : na,
     char='', text="S2", offset=1,
     location=location.absolute,
     color=#1E90FF, title="S2 label")

plotchar(series=newPivots and plotS3R3 ? s3 : na,
     char='', text="S3", offset=1,
     location=location.absolute,
     color=#0023FF, title="S3 label")

// Highlight the intra-day price data session on the chart
bgcolor(color=showSess and inSession and (pivotType == "Intraday") ?
     orange : na, transp=95)

// Step 4. Create indicator alerts
alertcondition(condition=cross(close, s3),
     title="Pivot S3 Cross",
     message="Prices crossed Pivot S3 level")

alertcondition(condition=cross(close, s2),
     title="Pivot S2 Cross",
     message="Prices crossed Pivot S2 level")

alertcondition(condition=cross(close, s1),
     title="Pivot S1 Cross",
     message="Prices crossed Pivot S1 level")
     
alertcondition(condition=cross(close, tc),
     title="Pivot TC Cross",
     message="Prices crossed Pivot TC level")

alertcondition(condition=cross(close, pp),
     title="Pivot PP Cross",
     message="Prices crossed the main Pivot Point level")
     
alertcondition(condition=cross(close, bc),
     title="Pivot BC Cross",
     message="Prices crossed Pivot BC level")

alertcondition(condition=cross(close, r1),
     title="Pivot R1 Cross",
     message="Prices crossed Pivot R1 level")

alertcondition(condition=cross(close, r2),
     title="Pivot R2 Cross",
     message="Prices crossed Pivot R2 level")

alertcondition(condition=cross(close, r3),
     title="Pivot R3 Cross",
     message="Prices crossed Pivot R3 level")
    
MA = sma(close, 20)
plot(MA, color=red)

Factor				= input(2, type=float)
Pd					= input(10, minval=1,maxval = 100)
Up					= hl2-(Factor*atr(Pd))
Dn					= hl2+(Factor*atr(Pd))
TrendUp				= 0.0
TrendUp				:= close[1]>TrendUp[1]? max(Up,TrendUp[1]) : Up
TrendDown			= 0.0
TrendDown			:= close[1]<TrendDown[1]? min(Dn,TrendDown[1]) : Dn
Trend				= 0.0
Trend 				:= close > TrendDown[1] ? 1: close< TrendUp[1]? -1: nz(Trend[1],1)
Tsl 				= Trend==1? TrendUp: TrendDown

plot(Tsl, color=blue)

if close>open
    if open<pp
        if close>pp
            if close>MA
                strategy.entry("long", true) 
if close<open
    if open>pp
        if close<pp
            if close<MA
                strategy.entry("short", false) 
                
strategy.close("long", when = open<Tsl)
strategy.close("short", when = open>Tsl)