Ema Cross! - 页 12 1...5678910111213141516171819...86 新评论 dedywind 2006.02.16 05:06 #111 @codersguru: 谢谢你的努力... 附上您的EA(https://www.mql5.com/en/forum/173468/page7) 后,在4个货币对eur/usd、gbp/usd、usd/chf、gbp/jpy....,三个货币对立即开始交易(gbp/usd、usd/chf、gbp/jpy),所有这些都有好的结果.... 我对编程一窍不通......但根据这个建议。 gkozlyk: 对于箭头反转的问题,只需在代码中调换两个箭头数字,问题就解决了。 之后再进行编译,就可以在指标应用的所有图表上生效了,格雷厄姆 我在EA中做了一些小改动。 if(line1>line2)current_direction = 1; //up 如果(line1<line2)current_direction = 2; //向下 对 if(line1>line2)current_direction = 2; //向上 如果(line1<line2)current_direction = 1; //down 昨天,我在neuimex演示账户TF30上安装了这个EA,有四个交易对....,所有这些交易都有很好的结果....。 我将继续对这些EA进行2/3周的测试,....。 Ema Cross! 欢迎来到MQL4课程 如何编码? gkozlyk 2006.02.16 05:22 #112 在下一次修改中,我可能会加入另一个开关,这样如果用户想在交叉点上做反向交易,他们可以(比如如果快速EMA高于慢速,你就做卖出)。 在我的视觉回测中,这似乎比立即进行交叉交易,然后随着交易时间的推移寻找反向交易的利润要低。 我的另一个想法是,也许可以在交叉后等待一个小节来进行交易(这可能会防止货币戳穿然后走向另一个方向)。 我发现这个网站上的另一个EMA交叉程序有一些好主意。 https://www.mql5.com/en/forum/173445 radicalmoses 2006.02.16 10:29 #113 Codersguru, 关于交易的MM部分。 从10,000美元的账户开始。 (账户资产*风险%)/最大损失=交易手数 (10,000*10%)/50=2手 这是假设SL是50点。 所以账户必须用这个公式调整每笔交易。 我希望这有帮助。 但在你采用这个公式之前,请告诉我什么是 赢/输比率和风险/回报比率,你对这个系统的期望。 一旦我们知道这一点,我们就可以建立。 因此,我们可以将风险%调整为10%或15%。 另外,你典型的最大损失将等于你的SL,因为这将是你在任何一次交易中的最大损失。风险%也必须考虑到最大的跌幅或最大的连续损失,这样我们就可以渡过跌幅。 希望这有帮助。如果有人不同意这个MM的观点,请指出来,以便我们改进。 我们在回溯测试中得到的结果通常只是对每笔交易进行标准的1手交易。因此,如果我们加入了MM,股票的增长就会乘以几倍。这就是MM的神奇之处。 大多数人专注于寻找最好的系统,但真正的圣杯是MM。你可以通过MM本身将一个普通系统变成一个超级系统。 正如我在之前的文章中指出的那样,下面的例子会让你明白。 赢 - 74% 没有资金管理 初始权益 - 20,000美元 最终权益 - 251,813美元 有MM 初始权益 - 30,000美元 最终权益 - 582,930,624 $$$$$$$$$$$$$$$ 这就对了!那是582万美元 这些价值是理论性的,但是信息是非常清楚的。 Ahmed Soliman 2006.02.16 18:06 #114 dedywind:@codersguru:谢谢你的努力... 在附上您的EA(https://www.mql5.com/en/forum/173468/page7) 在4个货币对eur/usd, gbp/usd, usd/chf, gbp/jpy....,三个货币对立即开始交易(gbp/usd, usd/chf, gbp/jpy),所有这些都有好结果....。 我对编程一窍不通......但根据这个建议。 我在EA中做了一些小改动。 if(line1>line2)current_direction = 1; //up 如果(line1<line2)current_direction = 2; //向下 对 if(line1>line2)current_direction = 2; //向上 如果(line1<line2)current_direction = 1; //down 昨天,我在neuimex演示账户TF30上安装了这个EA,在四个对....,都有很好的效果,....。 我将继续对这些EA进行2/3周的前向测试....。 你颠倒了交叉的方向,EMA CROSS在两个方向上都能工作,但它最初是基于采取市场的反向方向。 Ahmed Soliman 2006.02.16 23:05 #115 新版本 大家好。首先,我想感谢大家的分享和有用的评论 其次,我已将EMA CROSS专家顾问更新到第2版。 我希望你觉得它有用 附加的文件: ema_cross_2.mq4 7 kb strategytester_2.htm 201 kb strategytester_1.gif 6 kb Audio 2006.02.17 03:46 #116 我试图做1和2 codersguru ea,测试在欧元/美元,D1它打开.5手。我不知道我点击了什么,我失去了结果,在前进的演示账户上测试 了1个星期,它上升了$# 1025 #。 附加的文件: testergraph.gif 8 kb 2_1.gif 9 kb masoudk 2006.02.17 04:10 #117 一个问题 嗨,编码大师和所有成员 我有个问题,我是外汇新手。 我们可以在离线状态下使用EA吗?还是必须在线才能使用EA? cockeyedcowboy 2006.02.17 04:13 #118 编码员 Guru 我迅速看了一下你的新版本的代码,对代码有几个问题。 第一个问题与下面的代码块有关。 static int TimeFrame; ... ... ... int init() { TimeFrame=Period(); return(0); } ... ... ... int Crossed (double line1 , double line2) { static int last_direction = 0; static int current_direction = 0; if(TimeFrame!=Period()) { TimeFrame=Period(); return (0); } if(line1>line2)current_direction = 1; //up if(line1<line2)current_direction = 2; //down ... ... ... [/CODE] What is the purpose of the TimeFrame Parameter in this content? The second code block that is giving me some questions is the purpose of the function isNewSymbol? [CODE] bool isNewSumbol(string current_symbol) { //loop through all the opened order and compare the symbols int total = OrdersTotal(); for(int cnt = 0 ; cnt < total ; cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); string selected_symbol = OrderSymbol(); if (current_symbol == selected_symbol) return (False); } return (True); } ... ... ... total = OrdersTotal(); if(total < 1 || isNewSumbol(Symbol())) { if(isCrossed == 1) ... ... ... 我知道你很忙,但你能不能解释一下这些代码的目的以及为什么需要它们。 谢谢你的时间。 冰冷的牛仔 Ema Cross! How can I define Lesson 16 - Your Ahmed Soliman 2006.02.17 13:52 #119 块状的代码! cockeyedcowboy: 编译员 Guru我迅速看了一下你的新版本的代码,对代码有几个问题。 第一个问题是关于下面这个代码块的。 static int TimeFrame; ... ... ... int init() { TimeFrame=Period(); return(0); } ... ... ... int Crossed (double line1 , double line2) { static int last_direction = 0; static int current_direction = 0; if(TimeFrame!=Period()) { TimeFrame=Period(); return (0); } if(line1>line2)current_direction = 1; //up if(line1<line2)current_direction = 2; //down ... ... ... [/code] What is the purpose of the TimeFrame Parameter in this content? The second code block that is giving me some questions is the purpose of the function isNewSymbol? [code] bool isNewSumbol(string current_symbol) { //loop through all the opened order and compare the symbols int total = OrdersTotal(); for(int cnt = 0 ; cnt < total ; cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); string selected_symbol = OrderSymbol(); if (current_symbol == selected_symbol) return (False); } return (True); } ... ... ... total = OrdersTotal(); if(total < 1 || isNewSumbol(Symbol())) { if(isCrossed == 1) ... ... ... 我知道你很忙,但你能不能解释一下这些代码的目的以及为什么需要它们。 谢谢你的时间。 牛郎织女 CockeyedCowboy。 我使用第一个代码块是为了确保图表周期 的改变不会影响程序。 例如:如果您将专家顾问连接到M30图表,并且在M30图表中短EMA线在长EMA线之上,然后您点击D1按钮并将时间框架改为每日时间框架,您很不走运,D1图表中的短EMA线在此图表中的长EMA线之下。专家顾问会认为这是一个交叉点,并打开交易。但通过上述代码,我给它一个机会,让它记住上一个时间框架,并等待另一个刻度。 我使用第二个代码块来检查当前打开的交易,并防止专家顾问在同一货币对中交易两次。 Ahmed Soliman 2006.02.17 13:58 #120 谢谢! Audio: 我试着对1号和2号codersguru ea进行回调,在eur/usd上测试,D1开了.5手。我不知道我点击了什么,我失去了结果,在前向模拟账户上测试了1个星期,它上升了$# 1025 # ...只在eur/usa上。 音频。 非常感谢 ,我希望很快就能看到你在真实账户 中赚取1025 x Million。 1...5678910111213141516171819...86 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
@codersguru:
谢谢你的努力...
附上您的EA(https://www.mql5.com/en/forum/173468/page7) 后,在4个货币对eur/usd、gbp/usd、usd/chf、gbp/jpy....,三个货币对立即开始交易(gbp/usd、usd/chf、gbp/jpy),所有这些都有好的结果....
我对编程一窍不通......但根据这个建议。
对于箭头反转的问题,只需在代码中调换两个箭头数字,问题就解决了。 之后再进行编译,就可以在指标应用的所有图表上生效了,格雷厄姆
我在EA中做了一些小改动。
if(line1>line2)current_direction = 1; //up
如果(line1<line2)current_direction = 2; //向下
对
if(line1>line2)current_direction = 2; //向上
如果(line1<line2)current_direction = 1; //down
昨天,我在neuimex演示账户TF30上安装了这个EA,有四个交易对....,所有这些交易都有很好的结果....。
我将继续对这些EA进行2/3周的测试,....。
在下一次修改中,我可能会加入另一个开关,这样如果用户想在交叉点上做反向交易,他们可以(比如如果快速EMA高于慢速,你就做卖出)。 在我的视觉回测中,这似乎比立即进行交叉交易,然后随着交易时间的推移寻找反向交易的利润要低。
我的另一个想法是,也许可以在交叉后等待一个小节来进行交易(这可能会防止货币戳穿然后走向另一个方向)。
我发现这个网站上的另一个EMA交叉程序有一些好主意。
https://www.mql5.com/en/forum/173445
Codersguru,
关于交易的MM部分。
从10,000美元的账户开始。
(账户资产*风险%)/最大损失=交易手数
(10,000*10%)/50=2手
这是假设SL是50点。
所以账户必须用这个公式调整每笔交易。
我希望这有帮助。
但在你采用这个公式之前,请告诉我什么是
赢/输比率和风险/回报比率,你对这个系统的期望。
一旦我们知道这一点,我们就可以建立。
因此,我们可以将风险%调整为10%或15%。
另外,你典型的最大损失将等于你的SL,因为这将是你在任何一次交易中的最大损失。风险%也必须考虑到最大的跌幅或最大的连续损失,这样我们就可以渡过跌幅。
希望这有帮助。如果有人不同意这个MM的观点,请指出来,以便我们改进。
我们在回溯测试中得到的结果通常只是对每笔交易进行标准的1手交易。因此,如果我们加入了MM,股票的增长就会乘以几倍。这就是MM的神奇之处。
大多数人专注于寻找最好的系统,但真正的圣杯是MM。你可以通过MM本身将一个普通系统变成一个超级系统。
正如我在之前的文章中指出的那样,下面的例子会让你明白。
赢 - 74%
没有资金管理
初始权益 - 20,000美元
最终权益 - 251,813美元
有MM
初始权益 - 30,000美元
最终权益 - 582,930,624 $$$$$$$$$$$$$$$
这就对了!那是582万美元
这些价值是理论性的,但是信息是非常清楚的。
@codersguru:
谢谢你的努力...
在附上您的EA(https://www.mql5.com/en/forum/173468/page7) 在4个货币对eur/usd, gbp/usd, usd/chf, gbp/jpy....,三个货币对立即开始交易(gbp/usd, usd/chf, gbp/jpy),所有这些都有好结果....。
我对编程一窍不通......但根据这个建议。
我在EA中做了一些小改动。
if(line1>line2)current_direction = 1; //up
如果(line1<line2)current_direction = 2; //向下
对
if(line1>line2)current_direction = 2; //向上
如果(line1<line2)current_direction = 1; //down
昨天,我在neuimex演示账户TF30上安装了这个EA,在四个对....,都有很好的效果,....。
我将继续对这些EA进行2/3周的前向测试....。你颠倒了交叉的方向,EMA CROSS在两个方向上都能工作,但它最初是基于采取市场的反向方向。
新版本
首先,我想感谢大家的分享和有用的评论
其次,我已将EMA CROSS专家顾问更新到第2版。
我希望你觉得它有用我试图做1和2 codersguru ea,测试在欧元/美元,D1它打开.5手。我不知道我点击了什么,我失去了结果,在前进的演示账户上测试 了1个星期,它上升了$# 1025 #。
一个问题
嗨,编码大师和所有成员
我有个问题,我是外汇新手。
我们可以在离线状态下使用EA吗?还是必须在线才能使用EA?
编码员 Guru
我迅速看了一下你的新版本的代码,对代码有几个问题。
第一个问题与下面的代码块有关。
static int TimeFrame;
...
...
...
int init()
{
TimeFrame=Period();
return(0);
}
...
...
...
int Crossed (double line1 , double line2)
{
static int last_direction = 0;
static int current_direction = 0;
if(TimeFrame!=Period())
{
TimeFrame=Period();
return (0);
}
if(line1>line2)current_direction = 1; //up
if(line1<line2)current_direction = 2; //down
...
...
...
[/CODE]
What is the purpose of the TimeFrame Parameter in this content?
The second code block that is giving me some questions is the purpose of the function isNewSymbol?
[CODE]
bool isNewSumbol(string current_symbol)
{
//loop through all the opened order and compare the symbols
int total = OrdersTotal();
for(int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
string selected_symbol = OrderSymbol();
if (current_symbol == selected_symbol)
return (False);
}
return (True);
}
...
...
...
total = OrdersTotal();
if(total < 1 || isNewSumbol(Symbol()))
{
if(isCrossed == 1)
...
...
...
我知道你很忙,但你能不能解释一下这些代码的目的以及为什么需要它们。
谢谢你的时间。
冰冷的牛仔
块状的代码!
编译员 Guru
我迅速看了一下你的新版本的代码,对代码有几个问题。
第一个问题是关于下面这个代码块的。
static int TimeFrame;
...
...
...
int init()
{
TimeFrame=Period();
return(0);
}
...
...
...
int Crossed (double line1 , double line2)
{
static int last_direction = 0;
static int current_direction = 0;
if(TimeFrame!=Period())
{
TimeFrame=Period();
return (0);
}
if(line1>line2)current_direction = 1; //up
if(line1<line2)current_direction = 2; //down
...
...
...
[/code]
What is the purpose of the TimeFrame Parameter in this content?
The second code block that is giving me some questions is the purpose of the function isNewSymbol?
[code]
bool isNewSumbol(string current_symbol)
{
//loop through all the opened order and compare the symbols
int total = OrdersTotal();
for(int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
string selected_symbol = OrderSymbol();
if (current_symbol == selected_symbol)
return (False);
}
return (True);
}
...
...
...
total = OrdersTotal();
if(total < 1 || isNewSumbol(Symbol()))
{
if(isCrossed == 1)
...
...
...
我知道你很忙,但你能不能解释一下这些代码的目的以及为什么需要它们。
谢谢你的时间。
牛郎织女CockeyedCowboy。
我使用第一个代码块是为了确保图表周期 的改变不会影响程序。
例如:如果您将专家顾问连接到M30图表,并且在M30图表中短EMA线在长EMA线之上,然后您点击D1按钮并将时间框架改为每日时间框架,您很不走运,D1图表中的短EMA线在此图表中的长EMA线之下。专家顾问会认为这是一个交叉点,并打开交易。但通过上述代码,我给它一个机会,让它记住上一个时间框架,并等待另一个刻度。
我使用第二个代码块来检查当前打开的交易,并防止专家顾问在同一货币对中交易两次。
谢谢!
我试着对1号和2号codersguru ea进行回调,在eur/usd上测试,D1开了.5手。我不知道我点击了什么,我失去了结果,在前向模拟账户上测试了1个星期,它上升了$# 1025 # ...只在eur/usa上。
音频。
非常感谢
,我希望很快就能看到你在真实账户 中赚取1025 x Million。