您需要 登录 才可以下载或查看,没有帐号?注册
这个指标是3均线交叉报警,可更换报警声音。问题是3均线交叉后,每一根K都报警,只需要交叉后报警一次就好。哪位大侠帮我修改一下,感谢。
extern int 短均线周期=10;extern int 短平移=0;extern int 短移动平均=1;extern int 短应用于=0;extern int 中均线周期=20;extern int 中平移=0;extern int 中移动平均=1;extern int 中应用于=0;extern int 长均线周期=30;extern int 长平移=0;extern int 长移动平均=1;extern int 长应用于=0;extern string 看多报警声音= ok.wav extern string 看空报警声音= ok.wav
int sj;string 注释= 0 //+------------------------------------------------------------------+//| expert initialization function |//+------------------------------------------------------------------+int init() {//----//---- return(0); }//+------------------------------------------------------------------+//| expert deinitialization function |//+------------------------------------------------------------------+int deinit() {//----
//---- return(0); }//+------------------------------------------------------------------+//| expert start function |//+------------------------------------------------------------------+int start() {//----int Ticket;if(看多报警() sj!=Time[0]){ PlaySound(看多报警声音); Print(Symbol()+ 看多报警成功!! sj=Time[0];
}if(看空报警() sj!=Time[0]){ PlaySound(看空报警声音); Print(Symbol()+ 看空报警成功!! sj=Time[0];}
//---- return(0); }//+------------------------------------------------------------------+bool 看多报警(){double d1=iMA(NULL,0,短均线周期,短平移,短移动平均,短应用于,1);double z1=iMA(NULL,0,中均线周期,中平移,中移动平均,中应用于,1);double c1=iMA(NULL,0,长均线周期,长平移,长移动平均,长应用于,1);if(d1 c1 z1 c1 d1 z1 Close[1]*Point)return(true);else return(false);}bool 看空报警(){double d1=iMA(NULL,0,短均线周期,短平移,短移动平均,短应用于,1);double z1=iMA(NULL,0,中均线周期,中平移,中移动平均,中应用于,1);double c1=iMA(NULL,0,长均线周期,长平移,长移动平均,长应用于,1);if(d1 c1 z1 c1 d1 z1 Close[1]*Point)return(true);else return(false);}
外汇交易有很大的风险性,本站所有资源均来自网络,请选择使用,如若出现亏损,本站不承担任何责任!