申请版主写个dtosc指标
下面是Dynamic Trader里面DTosc的源码: //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ #property copyright "" #property indicator_separate_window #property indicator_buffers 2 #property indicator_minimum 0 #property indicator_maximum 100 #property indicator_color1 Red #property indicator_color2 LimeGreen #property indicator_width1 1 #property indicator_style1 0 #property indicator_width2 1 #property indicator_style2 2 #property indicator_level1 20 #property indicator_level2 50 #property indicator_level3 80 // // // // // extern int PeriodRSI =13; extern int PeriodStoch= 8; extern int PeriodSK = 5; extern int PeriodSD = 3; // 0 = SMA // 1 - EMA // 2 - SMMA // 3 - LWMA extern int MAMode=1; // // // // // double SK[]; double SD[]; double StoRSI[]; double RSI[]; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int init() { IndicatorBuffers(4); SetIndexBuffer(0,SK); SetIndexBuffer(1,SD); SetIndexBuffer(2,StoRSI); SetIndexBuffer(3,RSI); IndicatorShortName("DTOSC ("+PeriodRSI+","+PeriodStoch+","+PeriodSK+","+PeriodSD+")"); return(0); } int deinit() { return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { int i,limit; int counted_bars = IndicatorCounted(); if(counted_bars < 0) return(-1); if(counted_bars > 0) counted_bars--; limit=Bars-counted_bars; // // // // // for(i=limit; i>=0; i--) { RSI = iRSI(NULL,0,PeriodRSI,PRICE_WEIGHTED,i); double LLV = RSI[ArrayMinimum(RSI,PeriodStoch,i)]; double HHV = RSI[ArrayMaximum(RSI,PeriodStoch,i)]; if ((HHV-LLV)!=0) StoRSI = 100.0*((RSI - LLV)/(HHV - LLV)); else StoRSI = 0; } for(i=limit; i>=0; i--) SK=iMAonArray(StoRSI,0,PeriodSK,0,MAMode,i); for(i=limit; i>=0; i--) SD=iMAonArray( SK,0,PeriodSD,0,MAMode,i); return(0); } |
打赏
最新创建圈子
- 新闻EA运行效果图圈 2019-05-05
圈主:admin 帖子:1