谁能帮我改一下程序:出现彩色的点有声音提示
原始程序如下:
//+------------------------------------------------------------------+
//| BrainTrend1Sig.mq4 |
//| BrainTrading Inc. System 7.0 |
//| http://www.braintrading.com |
//+------------------------------------------------------------------+
#property copyright "BrainTrading Inc. System 7.0"
#property link "http://www.braintrading.com"
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Magenta
#property indicator_color2 Aqua
//---- input parameters
extern int NumBars=500;
extern int EnableAlerts=0;
extern int SignalID=0;
//---- buffers
double ExtMapBuffer1;
double ExtMapBuffer2;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,108);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0.0);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,108);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexEmptyValue(1,0.0);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
//----
double value2=0;
double value3=0;
double value11=0;
double x1=0;
double x2=0;
double Range=0;
double val1=0;
double val2=0;
int shift=0;
double abrs=0;
double s=1.5;
double p=0;
double r=0;
double r1=0;
double value21=0;
double prev=0;
double d=2.3;
double f=7;
double h11=0;
double h12=0;
double h13=0;
double const=0;
double orig=0;
double st=0;
double h2=0;
double h1=0;
double h10=0;
double sxs=0;
double sms=0;
double temp=0;
double a1=0;
double per1=0;
double a1x=0;
double h5=0;
double tsig=0;
double r1s=0;
double r2s=0;
double r3s=0;
double r4s=0;
double pt=0;
double pts=0;
double r2=0;
double r3=0;
double r4=0;
double tt=0;
st=1;
if (st == 1)
{
value11 = 9;
x1 = 53;
x2 = 47;
if (Bars < NumBars) abrs = Bars - 11; else abrs = NumBars - 11;
shift=abrs;
while(shift>=0)
{
Range = iATR(NULL,0,f,shift);
value2 = iStochastic(NULL,0,value11,value11,1,0,0,0,shift);
val1 = 0;
val2 = 0;
if (value2 < x2 && MathAbs(Close[shift] - Close[shift + 2]) > Range / d)
{
if (p == 2 || p == 0)
{
value3 = High[shift] + Range * s / 4;
val1 = value3;
p = 1;
}
}
if (value2 > x1 && MathAbs(Close[shift] - Close[shift + 2]) > Range / d)
{
if (p == 1 || p == 0 )
{
value3 = Low[shift] - Range * s / 4;
val2 = value3;
p = 2;
}
}
ExtMapBuffer1[shift]=val1;
ExtMapBuffer2[shift]=val2;
shift--;
}
}
if (EnableAlerts == 1)
{
if (val1 > 0 && tsig != 1)
{
tsig = 1;
// a1 = FileOpen("alert1" + SignalID,";");
Alert("BrainTrend1Sig", "Sell " ,Symbol() ," at ", Close[0] , " S/L " , val1 , " BT1 M" ,Period());
//a1=FileOpen("alert1"+ SignalID,FILE_CSV|FILE_WRITE,';');
// FileWrite(a1,"Sell " ,Symbol() ," at ", Close[0] , " S/L " , val1 , " BT1 M" ,Period());
// FileClose(a1);
}
if (val2 > 0 && tsig != 2)
{
tsig = 2;
Alert("BrainTrend1Sig", "Buy " , Symbol() , " at " ,Close[0] ," S/L " ,val2 ," BT1 M" , Period());
//a1 = FileOpen("alert1" + SignalID,";");
// a1=FileOpen("alert1"+ SignalID,FILE_CSV|FILE_WRITE,';');
// FileWrite(a1,"Buy " , Symbol() , " at " ,Close[0] ," S/L " ,val2 ," BT1 M" , Period());
//FileClose(a1);
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
[ 本帖最后由 老正 于 2006-8-24 01:57 编辑 ]cccc.gif
发表于:2006-08-23 03:51只看该作者
2楼
这要写成警报系统。帮写试试看看吧
韬客社区www.talkfx.co
3楼
谢谢!!!
韬客社区www.talkfx.co
4楼
顶上去!!!
韬客社区www.talkfx.co
5楼
浮上去,高手帮帮忙!!!
韬客社区www.talkfx.co
发表于:2006-08-24 18:02只看该作者
6楼
这个是么?
//+------------------------------------------------------------------+
//| BrainTrend1Sig.mq4 |
//| BrainTrading Inc. System 7.0 |
//| http://www.braintrading.com |
//+------------------------------------------------------------------+
#property copyright "BrainTrading Inc. System 7.0"
#property link "http://www.braintrading.com"
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Magenta
#property indicator_color2 Aqua
//---- input parameters
extern int NumBars=500;
extern int EnableAlerts=0;
extern int SignalID=0;
//---- buffers
double ExtMapBuffer1;
double ExtMapBuffer2;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,108);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0.0);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,108);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexEmptyValue(1,0.0);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
//----
double value2=0;
double value3=0;
double value11=0;
double x1=0;
double x2=0;
double Range=0;
double val1=0;
double val2=0;
int shift=0;
double abrs=0;
double s=1.5;
double p=0;
double r=0;
double r1=0;
double value21=0;
double prev=0;
double d=2.3;
double f=7;
double h11=0;
double h12=0;
double h13=0;
double const=0;
double orig=0;
double st=0;
double h2=0;
double h1=0;
double h10=0;
double sxs=0;
double sms=0;
double temp=0;
double a1=0;
double per1=0;
double a1x=0;
double h5=0;
double tsig=0;
double r1s=0;
double r2s=0;
double r3s=0;
double r4s=0;
double pt=0;
double pts=0;
double r2=0;
double r3=0;
double r4=0;
double tt=0;
st=1;
if (st == 1)
{
value11 = 9;
x1 = 53;
x2 = 47;
if (Bars < NumBars) abrs = Bars - 11; else abrs = NumBars - 11;
shift=abrs;
while(shift>=0)
{
Range = iATR(NULL,0,f,shift);
value2 = iStochastic(NULL,0,value11,value11,1,0,0,0,shift);
val1 = 0;
val2 = 0;
if (value2 < x2 && MathAbs(Close[shift] - Close[shift + 2]) > Range / d)
{
if (p == 2 || p == 0)
{
value3 = High[shift] + Range * s / 4;
val1 = value3;
p = 1;
}
}
if (value2 > x1 && MathAbs(Close[shift] - Close[shift + 2]) > Range / d)
{
if (p == 1 || p == 0 )
{
value3 = Low[shift] - Range * s / 4;
val2 = value3;
p = 2;
}
}
ExtMapBuffer1[shift]=val1;
ExtMapBuffer2[shift]=val2;
shift--;
}
}
if (EnableAlerts == 1)
{
if (val1 > 0 && tsig != 1)
{
tsig = 1;
// a1 = FileOpen("alert1" + SignalID,";");
Alert("BrainTrend1Sig", "Sell " ,Symbol() ," at ", Close[0] , " S/L " , val1 , " BT1 M" ,Period());
//a1=FileOpen("alert1"+ SignalID,FILE_CSV|FILE_WRITE,';');
// FileWrite(a1,"Sell " ,Symbol() ," at ", Close[0] , " S/L " , val1 , " BT1 M" ,Period());
// FileClose(a1);
}
if (val2 > 0 && tsig != 2)
{
tsig = 2;
Alert("BrainTrend1Sig", "Buy " , Symbol() , " at " ,Close[0] ," S/L " ,val2 ," BT1 M" , Period());
//a1 = FileOpen("alert1" + SignalID,";");
// a1=FileOpen("alert1"+ SignalID,FILE_CSV|FILE_WRITE,';');
// FileWrite(a1,"Buy " , Symbol() , " at " ,Close[0] ," S/L " ,val2 ," BT1 M" , Period());
//FileClose(a1);
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
韬客社区www.talkfx.co
7楼
谢谢6楼的朋友,但我用了好象没有声音么,和原来的一样啊!
韬客社区www.talkfx.co
发表于:2006-08-25 04:17只看该作者
8楼
你那个指标本身就有啊,在指标的设置里面把EnableAlerts的值改成1就好了
韬客社区www.talkfx.co
9楼
谢谢,好用了!!!
韬客社区www.talkfx.co
10楼
另外能否告诉这个指标的原理是什么吗?谢谢!!!
韬客社区www.talkfx.co