اس حکمت عملی میں متعدد مختلف قسم کے تکنیکی اشارے استعمال کیے گئے ہیں۔ اس حکمت عملی میں دو حصوں پر مشتمل ہے: پہلا حصہ 123 ریورس حکمت عملی کا استعمال کرتا ہے ، دوسرا حصہ TEMA اشارے کا استعمال کرتا ہے۔ دونوں کے ذریعہ تیار کردہ ٹریڈنگ سگنل کو غلط سگنل کو فلٹر کرنے اور سگنل کے معیار کو بہتر بنانے کے لئے ملایا گیا ہے۔
پہلا حصہ 123 الٹ حکمت عملی کا استعمال کرتا ہے۔ یہ حکمت عملی اسٹاکسٹک اشارے پر مبنی ہے ، جب اسٹاک کی قیمت میں دو دن کے لئے اختتامی قیمت میں الٹ ہوتی ہے (مثال کے طور پر دو دن کے اختتامی قیمت میں الٹ) ، اور اسٹاکسٹک اشارے میں اوورلوڈ یا اوور سیل سگنل دکھائے جاتے ہیں ، تو خریدنے یا بیچنے کا اشارہ ہوتا ہے۔
خاص طور پر ، اگر اختتامی قیمت پچھلے دن کی اختتامی قیمت سے زیادہ ہے اور اسٹوکاسٹک سست لائن 50 سے کم ہے تو ، خریدنے کا اشارہ پیدا ہوتا ہے۔ اگر اختتامی قیمت پچھلے دن کی اختتامی قیمت سے کم ہے اور اسٹوکاسٹک تیز لائن 50 سے زیادہ ہے تو ، فروخت کا اشارہ پیدا ہوتا ہے۔
دوسرا حصہ TEMA اشارے کا استعمال کرتا ہے۔ TEMA ایک ٹرپل انڈیکسڈ حرکت پذیر اوسط کی نمائندگی کرتا ہے ، جس کا حساب کتاب اس طرح ہے:
TEMA = 3*EMA(CLOSE, N) - 3*EMA(EMA(CLOSE, N), N) + EMA(EMA(EMA(CLOSE, N), N), N)
اس میں ، N پیرامیٹر کی لمبائی ہے۔ اگر اختتامی قیمت TEMA اشارے کی قیمت سے زیادہ ہے تو ، خریدنے کا اشارہ پیدا ہوتا ہے۔ اگر اختتامی قیمت TEMA اشارے کی قیمت سے کم ہے تو ، فروخت کا اشارہ پیدا ہوتا ہے۔
آخر میں ، دو اشارے کے اشارے کو جوڑنا۔ حقیقی تجارتی سگنل صرف اس وقت پیدا ہوتا ہے جب دونوں اشارے ایک ہی سگنل دیتے ہیں (یعنی دونوں خریدیں یا دونوں بیچیں) ۔
یہ حکمت عملی ایک معقول کثیر اشارے کے مجموعے کے ذریعہ ٹریڈنگ سگنل کے معیار کو بہتر بناتی ہے ، اور یہ ایک بہت ہی موثر مقداری ٹریڈنگ حکمت عملی ہے۔ تاہم ، اس حکمت عملی کو مختلف مارکیٹوں میں مستحکم کام کرنے کے ل optim بہتر بنانے کے لئے خطرے پر قابو پانے ، پیرامیٹرز کو مناسب طریقے سے ایڈجسٹ کرنے یا دوسرے اجزاء کو شامل کرنے کی ضرورت ہے۔
/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-06 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 24/11/2021
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// This study plots the TEMA1 indicator. TEMA1 ia s triple MA (Moving Average),
// and is calculated as 3*MA - (3*MA(MA)) + (MA(MA(MA)))
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
TEMA(Length) =>
pos = 0.0
xPrice = close
xEMA1 = ema(xPrice, Length)
xEMA2 = ema(xEMA1, Length)
xEMA3 = ema(xEMA2, Length)
nRes = 3 * xEMA1 - 3 * xEMA2 + xEMA3
pos := iff(close > nRes, 1,
iff(close < nRes, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & TEMA1", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- TEMA1 ----")
LengthTEMA = input(26, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posT3A = TEMA(LengthTEMA)
pos = iff(posReversal123 == 1 and posT3A == 1 , 1,
iff(posReversal123 == -1 and posT3A == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1 )
strategy.entry("Long", strategy.long)
if (possig == -1 )
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )