رفتار دوہری حرکت پذیر ونڈو TSI اشارے

مصنف:چاؤ ژانگ، تاریخ: 2024-01-08 11:20:35
ٹیگز:

img

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

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

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

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

پہلے قیمت میں یونٹ تبدیلی کا حساب لگائیں:

pc = change(price)

پھر دوہری سلائیڈنگ ونڈوز کا استعمال کریں قیمتوں میں تبدیلیوں کو دوگنا ہموار کرنے کے لئے:

double_smoothed_pc = double_smooth(pc, long, short)

اس کے بعد قیمت میں تبدیلی کی مطلق قیمت کا حساب لگائیں، جو دوہری سلائیڈنگ ونڈوز کا استعمال کرتے ہوئے دو بار ہموار ہے:

double_smoothed_abs_pc = double_smooth(abs(pc), long, short)

آخر میں، خرید و فروخت کی طاقت کی عکاسی کرنے والے ایس ٹی آئی اشارے کو حاصل کرنے کے لئے ہموار قیمت کی تبدیلی کو ہموار مطلق قیمت کی تبدیلی سے تقسیم کریں:

tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)

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

III. حکمت عملی کے فوائد

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

IV. حکمت عملی کے خطرات

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

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

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

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

VI. خلاصہ

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


/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("True Strength Indicator BTCUSD 2H", shorttitle="TSI BTCUSD 2H",initial_capital=1000, commission_value=0.2, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity)

//BASED ON True Strength Indicator MTF
resCustom = input(title="Timeframe",  defval="120" )
long = input(title="Long Length",  defval=25)
short = input(title="Short Length",  defval=13)
signal = input(title="Signal Length",  defval=13)

length = input(title="Период",  defval=300)

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 = 2017, title = "From Year", minval = 2017)
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 = 2017)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
window() => true // create function "within window of time"

price = request.security(syminfo.tickerid,resCustom,close)


double_smooth(src, long, short) =>
    fist_smooth = ema(src, long)
    ema(fist_smooth, short)
pc = change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(abs(pc), long, short)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
tsi2=ema(tsi_value, signal)
plot(tsi_value, color=lime,linewidth=2)
plot(tsi2, color=red,linewidth=2)

hline(30, title="Zero")
hline(50, title="Zero",linewidth=2)
hline(70, title="Zero")

buy = crossover(tsi_value, tsi2)
sell = crossunder(tsi_value, tsi2)

if(buy)
    strategy.entry("BUY", strategy.long, when = window())
if(sell)
    strategy.entry("SELL", strategy.short, when = window()) 

//greentsi =tsi_value
//redtsi = tsi2

//bgcolor( greentsi>redtsi and rsiserie > 50 ? lime : na, transp=90)
//bgcolor( greentsi<redtsi and rsiserie < 50 ? red : na, transp=90)

//yellow1= redtsi > greentsi and rsiserie > 50 
//yellow2 = redtsi < greentsi and rsiserie < 50 
//bgcolor( yellow1 ? yellow : na, transp=80)
//bgcolor( yellow2  ? yellow : na, transp=50)

//bgcolor( yellow1 and yellow1[1] ? yellow : na, transp=70)
//bgcolor( yellow2  and yellow2[2] ? yellow : na, transp=70)

//bgcolor( rsiserie > 70 ? lime : na, transp=60)
//bgcolor( rsiserie < 30  ? red : na, transp=60)

مزید