PresentTrend رجحان کی پیروی کرنے والی حکمت عملی


تخلیق کی تاریخ: 2023-09-21 15:00:08 آخر میں ترمیم کریں: 2023-09-21 15:00:08
کاپی: 0 کلکس کی تعداد: 615
1
پر توجہ دیں
1617
پیروکار

جائزہ

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

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

اس حکمت عملی کے دو حصے ہیں:

  1. اپنی مرضی کے مطابق آر ایس آئی یا ایم ایف آئی اشارے: یہ اشارے آر ایس آئی یا ایم ایف آئی کے حساب سے پریزنٹ ٹرینڈ ویلیو پر مبنی ہے ، اور اس ویلیو کے مطابق گولڈ فورک ڈیڈ فورک خرید اور فروخت سگنل پیدا کرتا ہے ، جو ممکنہ رجحان کی تبدیلی کی نشاندہی کرتا ہے۔

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

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

اسٹریٹجک فوائد

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

اسٹریٹجک خطرات اور حل

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

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

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 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/
// © PresentTrading

//@version=5

// Define the strategy settings
strategy('PresentTrend - Strategy [presentTrading]' , overlay=true, precision=3, default_qty_type=strategy.cash, 
 commission_value= 0.1, commission_type=strategy.commission.percent, slippage= 1, 
  currency=currency.USD, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, initial_capital= 10000)

// Define the input parameters
priceSource  = input.source(title='Source', defval=hlc3, group='PresentTrend') // The price source to use
lengthParam  = input.int(title='Length', defval=14, group='PresentTrend') // The length of the moving average
multiplier = input.float(title='Multiplier', defval=1.618, step=0.1, group='PresentTrend') // The multiplier for the ATR
indicatorChoice  = input.bool(title='Whether to use RSI or MFI', defval=false, group='PresentTrend') // Whether to use RSI or MFI

// Add a parameter for choosing Long or Short
tradeDirection = input.string(title="Trade Direction", defval="Both", options=["Long", "Short", "Both"])

// Calculate the ATR and the upT and downT values
ATR = ta.sma(ta.tr, lengthParam)
upperThreshold = low - ATR * multiplier 
lowerThreshold  = high + ATR * multiplier 

// Initialize the PresentTrend indicator
PresentTrend = 0.0

// Calculate the PresentTrend indicator
PresentTrend := (indicatorChoice ? ta.rsi(priceSource, lengthParam) >= 50 : ta.mfi(hlc3, lengthParam) >= 50) ? upperThreshold < nz(PresentTrend[1]) ? nz(PresentTrend[1]) : upperThreshold : lowerThreshold > nz(PresentTrend[1]) ? nz(PresentTrend[1]) : lowerThreshold

// Calculate the buy and sell signals
longSignal  = ta.crossover(PresentTrend, PresentTrend[2])
shortSignal  = ta.crossunder(PresentTrend, PresentTrend[2])

// Calculate the number of bars since the last buy and sell signals
barsSinceBuy = ta.barssince(longSignal)
barsSinceSell = ta.barssince(shortSignal)
previousBuy = ta.barssince(longSignal[1])
previousSell = ta.barssince(shortSignal[1])

// Initialize the direction variable
trendDirection = 0

// Calculate the direction of the trend
trendDirection := longSignal and previousBuy > barsSinceSell ? 1 : shortSignal and previousSell > barsSinceBuy ? -1 : trendDirection[1]

// Check the trade direction parameter before entering a trade
if (trendDirection == 1 and (tradeDirection == "Long" or tradeDirection == "Both"))
    strategy.entry("Buy", strategy.long) 
if (trendDirection == -1 and (tradeDirection == "Short" or tradeDirection == "Both"))
    strategy.entry("Sell", strategy.short) 

// Add a stop mechanism when the tradeDirection is one-sided
if (tradeDirection == "Long" and trendDirection == -1)
    strategy.close("Buy")
if (tradeDirection == "Short" and trendDirection == 1)
    strategy.close("Sell")

// Visualization
plot(PresentTrend, color=color.blue, title="PresentTrend")
plotshape(series=longSignal, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal")
plotshape(series=shortSignal, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal")