基本问题... - 页 2 123456789...11 新评论 yaniv_av 2005.11.05 19:02 #11 我试着解释一下我自己。 假设我有3个不同的系统。 系统1在EUR/USD 1M图表上效果最好。 系统2在EUR/USD 5M图上效果最好。 系统 3 在 EUR/USD 1H 图表上效果最好。 现在我想让我的专家顾问在每个图表 上开一个头寸,不能再多了。换句话说,我想只为系统1打开1个位置,为系统2打开1个位置,为系统3打开1个位置。 你之前写的解决方案是限制每个符号1个头寸,现在我想限制每个图表类型1个头寸... AlexPiechFinGeR 2005.11.06 12:20 #12 .换句话说,我想只为系统1开1个仓,为系统2开1个仓,为系统3开1个仓。 好的 那么你在每个系统中使用MAGIC号码 #property copyright "system 1" #property link "" #define MAGIC 01901 . . . if ( ExistPosition() == False) { OrderSend(Symbol(),op,Lots,pp,SLIPPAGE,ldStop,ldTake,lsComm,MAGIC,0,clOpen); // MAGIC = system 1 } // if open 1 position only for system 1 MAGIC ? bool ExistPosition() { bool Exist=False; for (int i=0; i<OrdersTotal(); i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if (OrderSymbol()==Symbol() && OrderMagicNumber()==MAGIC) Exist=True; } } return(Exist); } 你可以发布你的系统吗? Basic questions ... EA请求 Please HELP!! with this yaniv_av 2005.11.06 19:20 #13 10x! 我没有具体的系统。这只是一个例子。 我是metaTrader的新手,这是我的一些基本问题 ... 一旦我写出好的东西,我会把它上传到这里征求意见... brumsey 2007.03.22 11:57 #14 如何使EA每支蜡烛交易一次? 我想知道是否有一段代码可以添加到EA中,使其每个蜡烛只交易一次。 谢谢 ra300z 2007.03.23 00:08 #15 basza: 我想知道是否有一段代码可以添加到EA中,使其在每个蜡烛上只交易一次。 提前感谢 静态数据时间timeprev。 if(timeprev==Time[0]) { return(0); //只在新条上执行。 } else if (timeprev==0) { timeprev=Time[0]; //如果刚加入到图表中,什么都不做。 return(0); } else { timeprev=Time[0]; //在这里进行条形处理 } brumsey 2007.03.23 00:35 #16 ra300z: static datetime timeprev;if(timeprev==Time[0]) { return(0); //只在新条上执行。 } else if (timeprev==0) { timeprev=Time[0]; //如果刚加入到图表中则不做任何操作 return(0); } else { timeprev=Time[0]; //在这里进行条形处理 } 谢谢你ra300z brumsey 2007.05.29 03:21 #17 显示百分比目标? 你好 我想在EA中以注释的形式显示百分比目标。 我有这样一段代码,以注释的形式显示当前余额。 "百分比目标:" + AccountBalance()"/n" 在EA的开始,我有以下内容。 extern int ProfitPercentage=25; 现在我想做的是: 例如,5675.69美元*25%=1418.92美元,只显示1418.69美元。 预先感谢 dreamer 2007.07.06 11:13 #18 hi guyss.... 1:如何使EA只进行一次持续性的交易...(我指的是代码)。 例如,ma cross EA......当ma cross up并且目标为20点时,它将关闭,但当趋势继续时,它将尝试打开另一笔交易,因为fast ma仍然在slow ma之上。它只需要在ma cross down时打开另一笔交易。 快马>慢马=只需要一个交易信号 快马<慢马=也只需要一个交易信号 2:是否有办法在交叉点上设置时间延迟?我只知道pip seperation(不管他们怎么称呼它)意味着它将在穿越后等待10-15个点,然后才开启交易。 我只是一个试图学习MQ4语言的新手:) ralphronnquist 2007.07.06 11:48 #19 一种方法是让EA查看历史上的MA读数,而不是当前的读数。原则上是这样的。 // Recognise past crossing (up or down) if ( fast( past+1 ) slow( past ) ) then cmd = OP_BUY; else if ( fast( past+1 ) >= slow( past+1 ) && fast( past ) < slow( past ) ) then cmd = OP_SELL; else return; // If processing reaches this point, then a trade decision of either OP_BUY // or OP_SELL has been made, due to recognising a supporting MA crossing // at "past" number of bars in history. // Limit to only one trade in a direction static int last_trade = -1; if ( last_trade == cmd ) return; last_trade = cmd; // If processing reaches this point, then this processing is the first time // that the supporting MA crossing is recognised. 这将在交叉点发生后的 "过去 "的条数 上做出决定,并且只允许在第一次检测到交叉点时进行交易。 Basic questions ... Script to close all Close Function on Strategy dreamer 2007.07.13 01:45 #20 感谢兄弟提供的代码... 123456789...11 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我试着解释一下我自己。
假设我有3个不同的系统。
系统1在EUR/USD 1M图表上效果最好。
系统2在EUR/USD 5M图上效果最好。
系统 3 在 EUR/USD 1H 图表上效果最好。
现在我想让我的专家顾问在每个图表 上开一个头寸,不能再多了。换句话说,我想只为系统1打开1个位置,为系统2打开1个位置,为系统3打开1个位置。
你之前写的解决方案是限制每个符号1个头寸,现在我想限制每个图表类型1个头寸...
.换句话说,我想只为系统1开1个仓,为系统2开1个仓,为系统3开1个仓。
好的
那么你在每个系统中使用MAGIC号码
#property link ""
#define MAGIC 01901
.
.
.
if ( ExistPosition() == False) {
OrderSend(Symbol(),op,Lots,pp,SLIPPAGE,ldStop,ldTake,lsComm,MAGIC,0,clOpen); // MAGIC = system 1
}
// if open 1 position only for system 1 MAGIC ?
bool ExistPosition() {
bool Exist=False;
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==Symbol() && OrderMagicNumber()==MAGIC) Exist=True;
}
}
return(Exist);
}你可以发布你的系统吗?
10x!
我没有具体的系统。这只是一个例子。
我是metaTrader的新手,这是我的一些基本问题 ...
一旦我写出好的东西,我会把它上传到这里征求意见...
如何使EA每支蜡烛交易一次?
我想知道是否有一段代码可以添加到EA中,使其每个蜡烛只交易一次。
谢谢
我想知道是否有一段代码可以添加到EA中,使其在每个蜡烛上只交易一次。 提前感谢
静态数据时间timeprev。
if(timeprev==Time[0]) {
return(0); //只在新条上执行。
} else if (timeprev==0) {
timeprev=Time[0]; //如果刚加入到图表中,什么都不做。
return(0);
} else {
timeprev=Time[0];
//在这里进行条形处理
}
static datetime timeprev;
if(timeprev==Time[0]) {
return(0); //只在新条上执行。
} else if (timeprev==0) {
timeprev=Time[0]; //如果刚加入到图表中则不做任何操作
return(0);
} else {
timeprev=Time[0];
//在这里进行条形处理
}谢谢你ra300z
显示百分比目标?
你好
我想在EA中以注释的形式显示百分比目标。
我有这样一段代码,以注释的形式显示当前余额。
"百分比目标:" + AccountBalance()"/n"
在EA的开始,我有以下内容。
extern int ProfitPercentage=25;
现在我想做的是: 例如,5675.69美元*25%=1418.92美元,只显示1418.69美元。
预先感谢
hi guyss....
1:如何使EA只进行一次持续性的交易...(我指的是代码)。
例如,ma cross EA......当ma cross up并且目标为20点时,它将关闭,但当趋势继续时,它将尝试打开另一笔交易,因为fast ma仍然在slow ma之上。它只需要在ma cross down时打开另一笔交易。
快马>慢马=只需要一个交易信号
快马<慢马=也只需要一个交易信号
2:是否有办法在交叉点上设置时间延迟?我只知道pip seperation(不管他们怎么称呼它)意味着它将在穿越后等待10-15个点,然后才开启交易。
我只是一个试图学习MQ4语言的新手:)
一种方法是让EA查看历史上的MA读数,而不是当前的读数。原则上是这样的。
if ( fast( past+1 ) slow( past ) )
then cmd = OP_BUY;
else if ( fast( past+1 ) >= slow( past+1 ) && fast( past ) < slow( past ) )
then cmd = OP_SELL;
else return;
// If processing reaches this point, then a trade decision of either OP_BUY
// or OP_SELL has been made, due to recognising a supporting MA crossing
// at "past" number of bars in history.
// Limit to only one trade in a direction
static int last_trade = -1;
if ( last_trade == cmd ) return;
last_trade = cmd;
// If processing reaches this point, then this processing is the first time
// that the supporting MA crossing is recognised.这将在交叉点发生后的 "过去 "的条数 上做出决定,并且只允许在第一次检测到交叉点时进行交易。
感谢兄弟提供的代码...