如何编码? - 页 198 1...191192193194195196197198199200201202203204205...347 新评论 drhouse7 2009.08.06 07:50 #1971 arshadFX: 1, 在交易标准触发后添加bool标志2,在下订单前检查bool标志 3,下单后,bool标志应该被重置。 4,在init()中也重置这个标志。 谢谢 liew_stanley 2009.08.06 09:41 #1972 需要MQL指南 =^_^= #属性 indicator_chart_window #属性 indicator_buffers 2 #属性 indicator_color1 白色 #属性 indicator_color2 白色 extern int Fast.MA.Period = 5; extern int Slow.MA.Period = 34; extern int Signal.period = 5; //---- 缓冲区 double Buffer1[], Buffer2[]。 b2[], b3[]; //+------------------------------------------------------------------+ //|自定义指标 初始化函数 //+------------------------------------------------------------------+ int init() { //---- 指标 //两个额外的缓冲区用于计数 IndicatorBuffers(4); IndicatorShortName("MA3_54")。 SetIndexStyle(0,DRAW_ARROW,STYLE_SOLID,3); SetIndexArrow(0,242); //向下 226 234 242 SetIndexBuffer(0,b2); SetIndexStyle(1,DRAW_ARROW,STYLE_SOLID,3); SetIndexArrow(1,241); //向上 225 233 241 SetIndexBuffer(1,b3); //这些缓冲区不会被绘制出来,只是用来确定箭头。 SetIndexBuffer(2,Buffer1); SetIndexBuffer(3,Buffer2); //---- return(0); } //+------------------------------------------------------------------+ //|Custor指示器的去初始化功能| //+------------------------------------------------------------------+ int deinit() { //---- return(0); } //+------------------------------------------------------------------+ //|自定义指标迭代函数| //+------------------------------------------------------------------+ int start() { int i, counted_bars=IndicatorCounted(); 双重MA5,MA34; int limit=Bars-counted_bars; Print(" print limit = ", limit); 如果(counted_bars>0) limit++; // 主线 for(i=0; i<limit; i++) { MA5=iMA(NULL,0,Fast.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。 MA34=iMA(NULL,0,Slow.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。 Buffer1=MA5-MA34。 } // 信号线 for(i=0; i<limit; i++) { Buffer2=iMAOnArray(Buffer1,Bars,Signal.period,0,MODE_LWMA,i) 。 } // 箭头 for(i=0; i<limit; i++) { if(Buffer1 > Buffer2 && Buffer1 < Buffer2) b2 = High+10*Point; 如果(Buffer1 Buffer2) b3 = Low-10*Point。 } //---- 返回(0)。 } 你能教我如何根据这个指数创建EA吗? 当箭头出现在屏幕上时,就是EA自动进场的时候,能做到吗? 请指导我,因为我很想学习 =^_^= How to code? Need guide for mql4 顾比多重移动平均线 Arshed Qureshi 2009.08.06 10:01 #1973 好的参考 liew_stanley:#属性 indicator_chart_window#property indicator_buffers 2 ............指导我,因为我热衷于学习 =^_^= 请参阅本指南,这真的是很好的材料MQL4教程 liew_stanley 2009.08.06 10:07 #1974 该指数看起来像这样 这是上面提到的箭头信号,需要有人来指导我的EA编码。 谢谢你,任何人都有=^_^= 附加的文件: untitled.jpg 80 kb liew_stanley 2009.08.06 14:40 #1975 谁能帮我把这个代码编入一个简单的EA? 嗨,谁能帮我把这个指数编入EA?只有一个简单的EA,当箭头出现在屏幕上时,就会进入位置,如果能帮助我做一个简单的EA,非常感谢。 =^_^= 谢谢 #property indicator_chart_window #属性 indicator_buffers 2 #属性 indicator_color1 White #属性 Indicator_color2 White extern int Fast.MA.Period = 5; extern int Slow.MA.Period = 34; extern int Signal.period = 5; //---- 缓冲区 double Buffer1[], Buffer2[]。 b2[], b3[]; //+------------------------------------------------------------------+ //|自定义指标 初始化函数 //+------------------------------------------------------------------+ int init() { //---- 指标 // 两个额外的缓冲区用于计数 IndicatorBuffers(4); IndicatorShortName("Elliott Wave Oscillator")。 SetIndexStyle(0,DRAW_ARROW,STYLE_SOLID,3); SetIndexArrow(0,242); //向下 226 234 242 SetIndexBuffer(0,b2); SetIndexStyle(1,DRAW_ARROW,STYLE_SOLID,3); SetIndexArrow(1,241); //向上 225 233 241 SetIndexBuffer(1,b3); // SetIndexBuffer(2,Buffer1); SetIndexBuffer(3,Buffer2); //---- return(0); } //+------------------------------------------------------------------+ //|Custor指示器的去初始化功能| //+------------------------------------------------------------------+ int deinit() { // //---- return(0); } //+------------------------------------------------------------------+ //|自定义指标迭代函数| //+------------------------------------------------------------------+ int start() { int i, counted_bars=IndicatorCounted(); 双重MA5,MA34; int limit=Bars-counted_bars; Print(" print limit = ", limit); 如果(counted_bars>0) limit++; // 主线 for(i=0; i<limit; i++) { MA5=iMA(NULL,0,Fast.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。 MA34=iMA(NULL,0,Slow.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。 Buffer1=MA5-MA34。 } // 信号线 for(i=0; i<limit; i++) { Buffer2=iMAOnArray(Buffer1,Bars,Signal.period,0,MODE_LWMA,i) 。 } // 箭头 for(i=0; i<limit; i++) { if(Buffer1 > Buffer2 && Buffer1 < Buffer2) b2 = High+10*Point; 如果(Buffer1 Buffer2) b3 = Low-10*Point。 } //---- 返回(0)。 } //+------------------------------------------------------------------+ How to code? Need guide for mql4 顾比多重移动平均线 Jason 2009.08.07 03:05 #1976 多订单代码? 有没有人有好的代码,可以在遇到最大手数障碍时交易多个订单? IE Broker只允许5手,而你想交易10手,所以该函数 将交易2 x 5手的订单。 我在寻找的不仅仅是一个简单的循环。问题是,一个简单的循环并不总是完全完成,你可能只留下部分订单。 Jorged23 2009.08.11 19:27 #1977 如何消除OrderModify错误1 你好。 我无法避免OrderModify的错误1:总是出现,甚至试图控制 修改前的数据是不同的我也试过doublenormalize......没有用......。 这就是代码。 如果(Bid-OrderOpenPrice() >= VPoint*BreakEvenAtProfit) { 如果(OrderStopLoss() != OrderOpenPrice() + BreakEvenShift*VPoint) { Vresult = OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+ BreakEvenShift*VPoint,OrderTakeProfit(),0,Green) 。 有什么建议吗? 谢谢。 Arshed Qureshi 2009.08.12 10:38 #1978 liew_stanley: 嗨,谁能帮我把这个指数编入EA?只有一个简单的EA,进入位置//+------------+。 这些航空器显示在两个移动平均线上,即5-34,你可以找到许多EA "MA的交叉EA "搜索,希望你会找到一个。 V-Force 2009.08.13 08:21 #1979 我如何设置警报频率? 我是mq4的新手,我试图在屏幕上创建一个显示MACD 的交叉点。以下是我的代码,但警报每隔几分钟就会弹出。 我如何编写代码使其每小时只显示一次警报?或者每条街有一个警报? int start() { string MACD1=""。 color colt9; double MACDM_S10 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_MAIN, 0); double MACDS_S10 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_SIGNAL,0); double MACDM_S11 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_MAIN, 1); double MACDS_S11 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_SIGNAL,1); 如果((MACDM_S11 < MACDS_S11 && MACDM_S10 < MACDS_S10)) { MACD1="IN UPTREND"; colt9=LimeGreen; } 如果((MACDM_S11 > MACDS_S11 && MACDM_S10 > MACDS_S10)) { MACD1="下降趋势"; colt9=红色; } 如果(MACDM_S11 > MACDS_S11 && MACDM_S10 > MACDS_S10)) 如果((MACDM_S11 > MACDS_S11 && MACDM_S10 < MACDS_S10)) { MACD1="新上升交叉点"; colt9=石灰绿; } 如果((MACDM_S11 MACDS_S10)) { MACD1="新的下跌横盘"; colt9=红色; }. 字符串MACD2=""。 颜色 colt14; double MACDM_L10 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_MAIN, 0); double MACDS_L10 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_SIGNAL,0); double MACDM_L11 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_MAIN, 1); double MACDS_L11 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_SIGNAL,1); 如果((MACDM_L11 < MACDS_L11 && MACDM_L10 < MACDS_L10)) { MACD2="IN UPTREND"; colt14=LimeGreen; } 如果((MACDM_L11 > MACDS_L11 && MACDM_L10 > MACDS_L10)) { MACD2="下降趋势"; colt14=红色; } 如果((MACDM_L11 > MACDS_L11 && MACDM_L10 < MACDS_L10)) { MACD2="新上升交叉点"; colt14=石灰绿色; } 如果((MACDM_L11 MACDS_L10)) { MACD2="新的下跌横盘"; colt14=红色; } 如果(MACD1=="新上升交叉点"&&MACD2=="上升中") Alert(Symbol()," - ", "H1:"," MACD MAIN UPTREND MOVEMENT"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS))。 如果(MACD1=="新的下降交叉点"&&MACD2=="下降中") Alert(Symbol()," - ", "H1:"," MACD主要下跌走势"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS)); 如果(MACD2=="新上升交叉点"&MACD1=="上升中") Alert(Symbol()," - ", "H1:"," MACD, MAIN TREND CHANGE TO UPTREND"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS) )。 如果(MACD2=="新的下降交叉点"&MACD1=="处于下降趋势") Alert(Symbol()," - ", "H1:"," MACD, MAIN TREND CHANGE TO DOWNTREND"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS))。 返回(0)。 } 问吧! How to code? Ask! crn 2009.08.14 22:57 #1980 以什么方式配对? 1...191192193194195196197198199200201202203204205...347 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
1, 在交易标准触发后添加bool标志
2,在下订单前检查bool标志
3,下单后,bool标志应该被重置。
4,在init()中也重置这个标志。谢谢
需要MQL指南 =^_^=
#属性 indicator_chart_window
#属性 indicator_buffers 2
#属性 indicator_color1 白色
#属性 indicator_color2 白色
extern int Fast.MA.Period = 5;
extern int Slow.MA.Period = 34;
extern int Signal.period = 5;
//---- 缓冲区
double Buffer1[],
Buffer2[]。
b2[],
b3[];
//+------------------------------------------------------------------+
//|自定义指标 初始化函数
//+------------------------------------------------------------------+
int init()
{
//---- 指标
//两个额外的缓冲区用于计数
IndicatorBuffers(4);
IndicatorShortName("MA3_54")。
SetIndexStyle(0,DRAW_ARROW,STYLE_SOLID,3);
SetIndexArrow(0,242); //向下 226 234 242
SetIndexBuffer(0,b2);
SetIndexStyle(1,DRAW_ARROW,STYLE_SOLID,3);
SetIndexArrow(1,241); //向上 225 233 241
SetIndexBuffer(1,b3);
//这些缓冲区不会被绘制出来,只是用来确定箭头。
SetIndexBuffer(2,Buffer1);
SetIndexBuffer(3,Buffer2);
//----
return(0);
}
//+------------------------------------------------------------------+
//|Custor指示器的去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//|自定义指标迭代函数|
//+------------------------------------------------------------------+
int start()
{
int i, counted_bars=IndicatorCounted();
双重MA5,MA34;
int limit=Bars-counted_bars;
Print(" print limit = ", limit);
如果(counted_bars>0) limit++;
// 主线
for(i=0; i<limit; i++)
{
MA5=iMA(NULL,0,Fast.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。
MA34=iMA(NULL,0,Slow.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。
Buffer1=MA5-MA34。
}
// 信号线
for(i=0; i<limit; i++)
{
Buffer2=iMAOnArray(Buffer1,Bars,Signal.period,0,MODE_LWMA,i) 。
}
// 箭头
for(i=0; i<limit; i++)
{
if(Buffer1 > Buffer2 && Buffer1 < Buffer2)
b2 = High+10*Point;
如果(Buffer1 Buffer2)
b3 = Low-10*Point。
}
//----
返回(0)。
}
你能教我如何根据这个指数创建EA吗? 当箭头出现在屏幕上时,就是EA自动进场的时候,能做到吗? 请指导我,因为我很想学习 =^_^=
好的参考
#属性 indicator_chart_window
#property indicator_buffers 2
............指导我,因为我热衷于学习 =^_^=请参阅本指南,这真的是很好的材料MQL4教程
该指数看起来像这样
这是上面提到的箭头信号,需要有人来指导我的EA编码。
谢谢你,任何人都有=^_^=
谁能帮我把这个代码编入一个简单的EA?
嗨,谁能帮我把这个指数编入EA?只有一个简单的EA,当箭头出现在屏幕上时,就会进入位置,如果能帮助我做一个简单的EA,非常感谢。 =^_^= 谢谢
#property indicator_chart_window
#属性 indicator_buffers 2
#属性 indicator_color1 White
#属性 Indicator_color2 White
extern int Fast.MA.Period = 5;
extern int Slow.MA.Period = 34;
extern int Signal.period = 5;
//---- 缓冲区
double Buffer1[],
Buffer2[]。
b2[],
b3[];
//+------------------------------------------------------------------+
//|自定义指标 初始化函数
//+------------------------------------------------------------------+
int init()
{
//---- 指标
// 两个额外的缓冲区用于计数
IndicatorBuffers(4);
IndicatorShortName("Elliott Wave Oscillator")。
SetIndexStyle(0,DRAW_ARROW,STYLE_SOLID,3);
SetIndexArrow(0,242); //向下 226 234 242
SetIndexBuffer(0,b2);
SetIndexStyle(1,DRAW_ARROW,STYLE_SOLID,3);
SetIndexArrow(1,241); //向上 225 233 241
SetIndexBuffer(1,b3);
//
SetIndexBuffer(2,Buffer1);
SetIndexBuffer(3,Buffer2);
//----
return(0);
}
//+------------------------------------------------------------------+
//|Custor指示器的去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{
//
//----
return(0);
}
//+------------------------------------------------------------------+
//|自定义指标迭代函数|
//+------------------------------------------------------------------+
int start()
{
int i, counted_bars=IndicatorCounted();
双重MA5,MA34;
int limit=Bars-counted_bars;
Print(" print limit = ", limit);
如果(counted_bars>0) limit++;
// 主线
for(i=0; i<limit; i++)
{
MA5=iMA(NULL,0,Fast.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。
MA34=iMA(NULL,0,Slow.MA.Period,0,MODE_SMA,PRICE_MEDIAN,i)。
Buffer1=MA5-MA34。
}
// 信号线
for(i=0; i<limit; i++)
{
Buffer2=iMAOnArray(Buffer1,Bars,Signal.period,0,MODE_LWMA,i) 。
}
// 箭头
for(i=0; i<limit; i++)
{
if(Buffer1 > Buffer2 && Buffer1 < Buffer2)
b2 = High+10*Point;
如果(Buffer1 Buffer2)
b3 = Low-10*Point。
}
//----
返回(0)。
}
//+------------------------------------------------------------------+
多订单代码?
有没有人有好的代码,可以在遇到最大手数障碍时交易多个订单?
IE Broker只允许5手,而你想交易10手,所以该函数 将交易2 x 5手的订单。
我在寻找的不仅仅是一个简单的循环。问题是,一个简单的循环并不总是完全完成,你可能只留下部分订单。
如何消除OrderModify错误1
你好。
我无法避免OrderModify的错误1:总是出现,甚至试图控制 修改前的数据是不同的我也试过doublenormalize......没有用......。
这就是代码。
如果(Bid-OrderOpenPrice() >= VPoint*BreakEvenAtProfit)
{
如果(OrderStopLoss() != OrderOpenPrice() + BreakEvenShift*VPoint)
{
Vresult = OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+ BreakEvenShift*VPoint,OrderTakeProfit(),0,Green) 。
有什么建议吗?
谢谢。
嗨,谁能帮我把这个指数编入EA?只有一个简单的EA,进入位置//+------------+。
这些航空器显示在两个移动平均线上,即5-34,你可以找到许多EA "MA的交叉EA "搜索,希望你会找到一个。
我如何设置警报频率?
我是mq4的新手,我试图在屏幕上创建一个显示MACD 的交叉点。以下是我的代码,但警报每隔几分钟就会弹出。
我如何编写代码使其每小时只显示一次警报?或者每条街有一个警报?
int start()
{
string MACD1=""。
color colt9;
double MACDM_S10 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_MAIN, 0);
double MACDS_S10 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_SIGNAL,0);
double MACDM_S11 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_MAIN, 1);
double MACDS_S11 = iCustom(NULL, PERIOD_H1, "MACD", 8,17,9, MODE_SIGNAL,1);
如果((MACDM_S11 < MACDS_S11 && MACDM_S10 < MACDS_S10)) { MACD1="IN UPTREND"; colt9=LimeGreen; }
如果((MACDM_S11 > MACDS_S11 && MACDM_S10 > MACDS_S10)) { MACD1="下降趋势"; colt9=红色; } 如果(MACDM_S11 > MACDS_S11 && MACDM_S10 > MACDS_S10))
如果((MACDM_S11 > MACDS_S11 && MACDM_S10 < MACDS_S10)) { MACD1="新上升交叉点"; colt9=石灰绿; }
如果((MACDM_S11 MACDS_S10)) { MACD1="新的下跌横盘"; colt9=红色; }.
字符串MACD2=""。
颜色 colt14;
double MACDM_L10 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_MAIN, 0);
double MACDS_L10 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_SIGNAL,0);
double MACDM_L11 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_MAIN, 1);
double MACDS_L11 = iCustom(NULL, PERIOD_H1, "MACD", 12,26,9, MODE_SIGNAL,1);
如果((MACDM_L11 < MACDS_L11 && MACDM_L10 < MACDS_L10)) { MACD2="IN UPTREND"; colt14=LimeGreen; }
如果((MACDM_L11 > MACDS_L11 && MACDM_L10 > MACDS_L10)) { MACD2="下降趋势"; colt14=红色; }
如果((MACDM_L11 > MACDS_L11 && MACDM_L10 < MACDS_L10)) { MACD2="新上升交叉点"; colt14=石灰绿色; }
如果((MACDM_L11 MACDS_L10)) { MACD2="新的下跌横盘"; colt14=红色; }
如果(MACD1=="新上升交叉点"&&MACD2=="上升中")
Alert(Symbol()," - ", "H1:"," MACD MAIN UPTREND MOVEMENT"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS))。
如果(MACD1=="新的下降交叉点"&&MACD2=="下降中")
Alert(Symbol()," - ", "H1:"," MACD主要下跌走势"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS));
如果(MACD2=="新上升交叉点"&MACD1=="上升中")
Alert(Symbol()," - ", "H1:"," MACD, MAIN TREND CHANGE TO UPTREND"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS) )。
如果(MACD2=="新的下降交叉点"&MACD1=="处于下降趋势")
Alert(Symbol()," - ", "H1:"," MACD, MAIN TREND CHANGE TO DOWNTREND"," at ", Bid, " - ",TimeToStr(CurTime(),TIME_SECONDS))。
返回(0)。
}
以什么方式配对?