[MT4指标]求助:有请编程高手给这个MACD指标加上声音报警。谢谢
有请编程高手给这个MACD指标加上声音报警。谢谢
//+------------------------------------------------------------------+
//| Custom ma-alert.mq4 |
//| Copyright 2007, 暗袖盈香 |
//| 领域外汇论坛 http://www.fxxxt.cn |
//+------------------------------------------------------------------+
//使用ema200作为方向判断,使用kdj判断入场点
//这个系统只是一个初步系统,还需要人工配合均线进行判断入场。
//供大家学习和使用,有问题请在领域外汇论坛的智能交易区提出,我尽量为大家解答
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
extern int FastEMA = 12;//启始买点
extern int SlowEMA = 26;//启始买点
extern int SignalSMA = 9;//启始买点
double buy, sell;
double m;
int init()
{
//---- indicators
SetIndexStyle (0, DRAW_ARROW, EMPTY, 1);
SetIndexArrow (0, 233);
SetIndexBuffer (0, buy);
SetIndexEmptyValue (0, 0.0);
SetIndexStyle (1, DRAW_ARROW, EMPTY, 1);
SetIndexArrow (1, 234);
SetIndexBuffer (1, sell);
SetIndexEmptyValue (1, 0.0);
//----
return(0);
}
int start()
{
double Macd0,Macd1;
for (int i = Bars - 1; i >= 0; i --)
{
Macd0 = iMACD(NULL , 0 , FastEMA , SlowEMA ,SignalSMA , PRICE_CLOSE , MODE_MAIN , i);
Macd1 = iMACD(NULL , 0 , FastEMA , SlowEMA ,SignalSMA , PRICE_CLOSE , MODE_MAIN , i+1);
buy = 0; sell = 0;
if (Macd0 > 0 && Macd1 < 0)
{
buy = Low - 5 * Point;
if (Period () >= PERIOD_M30) buy -= 8 * Point;
if (Period () >= PERIOD_H1) buy -= 8 * Point;
if (Period () >= PERIOD_H4) buy -= 8 * Point;
if (Period () >= PERIOD_D1) buy -= 8 * Point;
if (Period () >= PERIOD_W1) buy -= 12 * Point;
if (Period () >= PERIOD_MN1) buy -= 60 * Point;
}
if (Macd0 < 0 && Macd1 > 0)
{
sell = High + 5 * Point;
if (Period () >= PERIOD_M30) sell += 8 * Point;
if (Period () >= PERIOD_H1) sell += 8 * Point;
if (Period () >= PERIOD_H4) sell += 8 * Point;
if (Period () >= PERIOD_D1) sell += 8 * Point;
if (Period () >= PERIOD_W1) sell += 12 * Point;
if (Period () >= PERIOD_MN1) sell += 60 * Point;
}
}
}
发表于:2013-10-08 08:21只看该作者
3楼
你贴代码的时候 要用代码那个选项
这样传上来的 没法解析的
遇到矛盾 先站在对方的立场上想想问题,先试着去理解别人
● 如何使用WinMTR查询平台连接流畅度
韬客社区www.talkfx.co
5楼
这个是能用的,我加声音报警,它老是报警,怎么让它报一次就停,我开了好几天也不行
韬客社区www.talkfx.co
6楼
//+------------------------------------------------------------------+
//| Custom ma-alert.mq4 |
//| Copyright 2007, 暗袖盈香 |
//| 领域外汇论坛 http://www.fxxxt.cn |
//+------------------------------------------------------------------+
//使用ema200作为方向判断,使用kdj判断入场点
//这个系统只是一个初步系统,还需要人工配合均线进行判断入场。
//供大家学习和使用,有问题请在领域外汇论坛的智能交易区提出,我尽量为大家解答
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
extern int FastEMA = 12;//启始买点
extern int SlowEMA = 26;//启始买点
extern int SignalSMA = 9;//启始买点
double buy, sell;
double m;
int init()
{
//---- indicators
SetIndexStyle (0, DRAW_ARROW, EMPTY, 1);
SetIndexArrow (0, 233);
SetIndexBuffer (0, buy);
SetIndexEmptyValue (0, 0.0);
SetIndexStyle (1, DRAW_ARROW, EMPTY, 1);
SetIndexArrow (1, 234);
SetIndexBuffer (1, sell);
SetIndexEmptyValue (1, 0.0);
//----
return(0);
}
int start()
{
double Macd0,Macd1;
for (int i = Bars - 1; i >= 0; i --)
{
Macd0 = iMACD(NULL , 0 , FastEMA , SlowEMA ,SignalSMA , PRICE_CLOSE , MODE_MAIN , i);
Macd1 = iMACD(NULL , 0 , FastEMA , SlowEMA ,SignalSMA , PRICE_CLOSE , MODE_MAIN , i+1);
buy = 0; sell = 0;
if (Macd0 > 0 && Macd1 < 0)
{
buy = Low - 5 * Point;
if (Period () >= PERIOD_M30) buy -= 8 * Point;
if (Period () >= PERIOD_H1) buy -= 8 * Point;
if (Period () >= PERIOD_H4) buy -= 8 * Point;
if (Period () >= PERIOD_D1) buy -= 8 * Point;
if (Period () >= PERIOD_W1) buy -= 12 * Point;
if (Period () >= PERIOD_MN1) buy -= 60 * Point;
}
if (Macd0 < 0 && Macd1 > 0)
{
sell = High + 5 * Point;
if (Period () >= PERIOD_M30) sell += 8 * Point;
if (Period () >= PERIOD_H1) sell += 8 * Point;
if (Period () >= PERIOD_H4) sell += 8 * Point;
if (Period () >= PERIOD_D1) sell += 8 * Point;
if (Period () >= PERIOD_W1) sell += 12 * Point;
if (Period () >= PERIOD_MN1) sell += 60 * Point;
}
}
}
这样对吗
韬客社区www.talkfx.co
发表于:2013-10-08 09:14只看该作者
7楼
if (报警== false)
{
...
报警= true;
}
8楼
谢谢
韬客社区www.talkfx.co