世人都曉神仙好,只有功名忘不了! 古今將相在何方?荒塚一堆草沒了! 世人都曉神仙好,只有金銀忘不了! 終朝只恨聚無多,及到多時眼閉了! 世人都曉神仙好,只有姣妻忘不了! 君生日日說恩情,君死又隨人去了! 世人都曉神仙好,只有兒孫忘不了! 痴心父母古來多,孝順兒孫誰見了?
2010年9月9日 星期四
自製指標 :EMA Slope
自製指標 :EMA Slope
這個就比較複雜
是計算 4 條 EMA 的斜率 這裡用的是 5 天 10 天 15 天 和 20 天
如果 4 條 EMA 的斜率全部都是 向上 也就是 正數 的話 那指標的數值就設定為 1
如果 4 條 EMA 的斜率全部都是 向下 也就是 負數 的話 那指標的數值就設定為 -1
如果 4 條 EMA 的斜率 有一些 向上 有一些 向下 也就是有 正數 也有 負數 的話 那指標的數值就設定為 0.5 也可以看作是短期盤整的意思
要玩這個最好是和 EMA 250 天一起配合
如果 EMA 250 天是 向下 也就是說在 下跌 的時候 那如果指標的數值是 -1 的話 就可以下 賣單 咯 果指標的數值是 0.5 和 1 的話 就不要動作 觀望就可以了
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//+------------------------------------------------------------------+
//| Bulls.mq4 |
//| Copyright ?2005, MetaQuotes Software Corp. |
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright ?2005, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net/"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Silver
//---- input parameters
extern int BullsPeriod1=5;
extern int BullsPeriod2=10;
extern int BullsPeriod3=15;
extern int BullsPeriod4=20;
//---- buffers
double BullsBuffer[];
double TempBuffer1[];
double TempBuffer2[];
double TempBuffer3[];
double TempBuffer4[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
string short_name;
//---- 1 additional buffer used for counting.
IndicatorBuffers(2);
IndicatorDigits(Digits);
//---- indicator line
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(0,BullsBuffer);
SetIndexBuffer(1,TempBuffer1);
SetIndexBuffer(1,TempBuffer2);
SetIndexBuffer(1,TempBuffer3);
SetIndexBuffer(1,TempBuffer4);
//---- name for DataWindow and indicator subwindow label
short_name="EMA_Slope("+BullsPeriod1+","+BullsPeriod2+","+BullsPeriod3+","+BullsPeriod4+")";
IndicatorShortName(short_name);
SetIndexLabel(0,short_name);
return(0);
}
//+------------------------------------------------------------------+
//| Bulls Power |
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
if(Bars<=BullsPeriod4) return(0);
int limit=Bars-counted_bars;
if(counted_bars>0) limit++;
for(i=0; i<limit; i++)
TempBuffer1[i]=iMA(NULL,0,BullsPeriod1,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod1,0,MODE_EMA,PRICE_CLOSE,i+1);
TempBuffer2[i]=iMA(NULL,0,BullsPeriod2,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod2,0,MODE_EMA,PRICE_CLOSE,i+1);
TempBuffer3[i]=iMA(NULL,0,BullsPeriod3,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod3,0,MODE_EMA,PRICE_CLOSE,i+1);
TempBuffer4[i]=iMA(NULL,0,BullsPeriod4,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod4,0,MODE_EMA,PRICE_CLOSE,i+1);
i=Bars-counted_bars-1;
while(i>=0)
{
BullsBuffer[i]=0.5;
if(iMA(NULL,0,BullsPeriod1,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod1,0,MODE_EMA,PRICE_CLOSE,i+1) > 0 && iMA(NULL,0,BullsPeriod2,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod2,0,MODE_EMA,PRICE_CLOSE,i+1) > 0 && iMA(NULL,0,BullsPeriod3,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod3,0,MODE_EMA,PRICE_CLOSE,i+1) > 0 && iMA(NULL,0,BullsPeriod4,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod4,0,MODE_EMA,PRICE_CLOSE,i+1) > 0)
{
BullsBuffer[i]=1;
}
if(iMA(NULL,0,BullsPeriod1,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod1,0,MODE_EMA,PRICE_CLOSE,i+1) < 0 && iMA(NULL,0,BullsPeriod2,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod2,0,MODE_EMA,PRICE_CLOSE,i+1) < 0 && iMA(NULL,0,BullsPeriod3,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod3,0,MODE_EMA,PRICE_CLOSE,i+1) < 0 && iMA(NULL,0,BullsPeriod4,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,BullsPeriod4,0,MODE_EMA,PRICE_CLOSE,i+1) < 0)
{
BullsBuffer[i]=-1;
}
i--;
}
return(0);
}
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言