بلاگ

فیلتر ترکیبی ژوپیتـر

[restricted_page role=”boursetutor_dey99″]

فیلتر ترکیبی ژوپیتـر

این فیلتر سهم هایی را نشان میدهد که اندیکاتور مکدی بالای خط صفر باشد

و rsi بالای 60 باشد

سرانه خرید بیشتر از 20 میلیون تومان و قدرت خریدار به فروشنده بیشتر از 2 باشد

** توجه کنید که گاهــی وجود مقداری اختلاف بین خروجی فیلتر  و مقدار واقعی آن در نمودار به دلیل باگ های سایت tse طبیعی بوده

بنابراین بهتر است در نهایت  نمودار سهم را چک کنید.

<code>

*************************************************

true==function()

{
//SMA
//SMA
var CalculateSMA =function(period){

var len = period;
var sum = 0;
for (var j = 10;j < len+10 ;j++) {
sum= [ih][j].PDrCotVal + sum;

}
var average = sum / period;
return average ;
}

//pre9MA
//pre9MA

var pre9CalculateEMA =function(period){

var pre9EMA =( ([ih][9].PDrCotVal – CalculateSMA (period))*(2 / (period + 1))) + CalculateSMA (period);

return pre9EMA ;
}
//preEMA
//preEMA

var pre8CalculateEMA =function(period){

var pre8EMA =( ([ih][1].PDrCotVal – pre9CalculateEMA (period))*(2 / (period + 1))) + pre9CalculateEMA (period);

return pre8EMA ;
}
//preEMA
//preEMA

var pre7CalculateEMA =function(period){

var pre7EMA =( ([ih][1].PDrCotVal – pre8CalculateEMA (period))*(2 / (period + 1))) + pre8CalculateEMA (period);

return pre7EMA ;
}
//preEMA
//preEMA

var pre6CalculateEMA =function(period){

var pre6EMA =( ([ih][1].PDrCotVal – pre7CalculateEMA (period))*(2 / (period + 1))) + pre7CalculateEMA (period);

return pre6EMA ;
}
//preEMA
//preEMA

var pre5CalculateEMA =function(period){

var pre5EMA =( ([ih][1].PDrCotVal – pre6CalculateEMA (period))*(2 / (period + 1))) + pre6CalculateEMA (period);

return pre5EMA ;
}
//preEMA
//preEMA

var pre4CalculateEMA =function(period){

var pre4EMA =( ([ih][1].PDrCotVal – pre5CalculateEMA (period))*(2 / (period + 1))) + pre5CalculateEMA (period);

return pre4EMA ;
}
//preEMA
//preEMA

var pre3CalculateEMA =function(period){

var pre3EMA =( ([ih][1].PDrCotVal – pre4CalculateEMA (period))*(2 / (period + 1))) + pre4CalculateEMA (period);

return pre3EMA ;
}
//preEMA
//preEMA

var pre2CalculateEMA =function(period){

var pre2EMA =( ([ih][1].PDrCotVal – pre3CalculateEMA (period))*(2 / (period + 1))) + pre3CalculateEMA (period);

return pre2EMA ;
}
//preEMA
//preEMA

var pre1CalculateEMA =function(period){

var pre1EMA =( ([ih][1].PDrCotVal – pre2CalculateEMA (period))*(2 / (period + 1))) + pre2CalculateEMA (period);

return pre1EMA ;
}

 

//EMA
//EMA

var CalculateEMA =function(period){

var EMA =( ([ih][0].PDrCotVal – pre1CalculateEMA (period))*(2 / (period + 1))) + pre1CalculateEMA (period);

return EMA ;
}

var Macd=0

Macd= CalculateEMA (12) – CalculateEMA (26);

(cfield0) =CalculateEMA (12) – CalculateEMA (26)

////////////////////////////////RSI
var CalculateRSI =function(period){

var len=20;

for (var i = 0; i < len ; i++) {
var rec=[ih][len-1-i];

var change=rec.PClosing-rec.PriceYesterday;

if (change> 0) {
rec.gain=change;
rec.loss=0;
}
else
{
rec.gain=0;
rec.loss=-change;
}
}

// Calculate first “average gain” and “average loss”
var gainSum=0;
var lossSum=0;

for (var i = 0; i < period; i++) {
var rec=[ih][len-1-i];
gainSum += rec.gain;
lossSum += rec.loss;
}

var averageGain=gainSum /period;
var averageLoss=lossSum / period;

// Calculate subsequent “average gain” and “average loss” values
for (var i = period + 1; i < len; i++) {
var rec=[ih][len-1-i];

averageGain=(averageGain* (period – 1) + rec.gain) / period;
averageLoss=(averageLoss* (period – 1) + rec. loss)/ period;

rec.averageGain=averageGain;
rec.averageLoss=averageLoss;
}

// Calculate RSI
var RS = 0; // Relative strength
var RSIndex = 0; // Relative strength index

for (var i = period + 1; i < len; i++) {
var rec=[ih][len-1-i];

RS = rec.averageGain/ rec.averageLoss;
RSIndex = 100 – 100 / (1 + RS);
rec.rsi=RSIndex;
}
};

if(typeof [ih][0].rsi==”undefined”)
CalculateRSI(14);

(cfield1)= [ih][0].rsi;
var Rsi=0;
Rsi= [ih][0].rsi;
////////////////////////////VOL

(cfield2) =((ct).Buy_I_Volume / (ct).Buy_CountI)/((ct).Sell_I_Volume / (ct).Sell_CountI);
var ghodrat=0;
ghodrat =((ct).Buy_I_Volume / (ct).Buy_CountI)/((ct).Sell_I_Volume / (ct).Sell_CountI);
var saranekh=0;
saranekh=Math.round((((pc)*(ct).Buy_I_Volume)/(ct).Buy_CountI)/10000000)

if(Macd>0&&Rsi>60&& ghodrat>2&& saranekh>20)
{

return true;
}

}()

**********************************************************
</code>

[/restricted_page]

دیدگاهتان را بنویسید