TSI کراس اوور حکمت عملی

TSI EMA ATR TEMA
تخلیق کی تاریخ: 2024-06-07 16:36:24 آخر میں ترمیم کریں: 2024-06-07 16:36:24
کاپی: 7 کلکس کی تعداد: 628
1
پر توجہ دیں
1617
پیروکار

TSI کراس اوور حکمت عملی

جائزہ

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

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

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

طاقت کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی سمت

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-05-30 00:00:00
end: 2024-06-06 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © nikgavalas

//@version=5
strategy("TSI Entries", overlay=true, margin_long=100, margin_short=100)

//
// INPUTS
//

// Define the start and end hours for trading
string sessionInput = input("1000-1530", "Session")

// Day of the week.
string daysInput = input.string("23456", tooltip = "1 = Sunday, 7 = Saturday")

// Minimum number of bar's between entries
requiredBarsBetweenEntries = input.int(12, "Required Bars Between Entries")

// Show debug labels
bool showDebugLabels = input.bool(false, "Show Debug Labels")

//
// FUNCTIONS
//

//@function Define the triple exponential moving average function
tema(src, len) => tema = 3 * ta.ema(src, len) - 3 * ta.ema(ta.ema(src, len), len) + ta.ema(ta.ema(ta.ema(src, len), len), len)

//@function Atr with EMA
atr_ema(length) =>
    trueRange = na(high[1])? high-low : math.max(math.max(high - low, math.abs(high - close[1])), math.abs(low - close[1]))
    //true range can be also calculated with ta.tr(true)
    ta.ema(trueRange, length)

//@function Check if time is in range
timeinrange() => 
    sessionString = sessionInput + ":" + daysInput
    inSession = not na(time(timeframe.period, sessionString, "America/New_York"))

//@function Displays text passed to `txt` when called.
debugLabel(txt, color, y, style) =>
    if (showDebugLabels) 
        label.new(bar_index, y, text = txt, color = color, style = style, textcolor = color.black, size = size.small)


//
// INDICATOR CODE
//

long = input(title="TSI Long Length", defval=8)
short = input(title="TSI Short Length", defval=8)
signal = input(title="TSI Signal Length", defval=3)
lowerLine = input(title="TSI Lower Line", defval=-50)
upperLine = input(title="TSI Upper Line", defval=50)

price = close
double_smooth(src, long, short) =>
	fist_smooth = ta.ema(src, long)
	ta.ema(fist_smooth, short)

pc = ta.change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(math.abs(pc), long, short)
tsiValue = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
signalValue = ta.ema(tsiValue, signal)

//
// COMMON VARIABLES
//

var color trendColor = na
var int lastEntryBar = na

bool tradeAllowed = timeinrange() == true and (na(lastEntryBar) or bar_index - lastEntryBar > requiredBarsBetweenEntries)

// 
// CROSSOVER
//

bool crossOver = ta.crossover(tsiValue, signalValue)
bool crossUnder = ta.crossunder(tsiValue,signalValue)

if (tradeAllowed) 
	if (signalValue < lowerLine and crossOver == true)
		strategy.entry("Up", strategy.long)
		lastEntryBar := bar_index

	else if (signalValue > upperLine and crossUnder == true)

		strategy.entry("Down", strategy.short)
		lastEntryBar := bar_index

// 
// EXITS
// 

if (strategy.position_size > 0 and crossUnder == true)
	strategy.close("Up", qty_percent = 100)

else if (strategy.position_size < 0 and crossOver == true)
	strategy.close("Down", qty_percent = 100)