[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 346 1...339340341342343344345346347348349350351352353...1145 新评论 [删除] 2009.12.10 10:41 #3451 歉意 [删除] 2009.12.10 13:37 #3452 Stepan241 >> : 在剧本的开头,你写道 #property show_inputs 外置双倍数Lot=0.1 之后,当脚本被附加到符号窗口时,会出现一个对话框。 我明白。但这不是我所需要的。有了这些命令,就会出现一个对话框--有一般的EA设置和当前的脚本设置,我问是否有这样的功能,可以用来一次性输出DO ONLY与脚本设置。 [删除] 2009.12.10 16:01 #3453 你能告诉我如何使所有未平仓的订单在指定时间平仓吗? Alexander 2009.12.10 17:49 #3454 JackaLrus писал(а)>> 我明白。但这不是我所需要的。有了这些命令,就会出现一个对话框--有一般的EA设置和当前的脚本设置,我问是否有这样的功能,可以用来一次性输出DO ONLY与脚本设置。 那就只有MetaEditor了。 Stepan241 2009.12.10 18:17 #3455 vik-777 >> : 请告诉我们如何在指定时间关闭所有未结订单? 如果(HourTime[0]=12)_CloseAllOrder 参见前一页或前一页的_CloseAllOrder函数。 [删除] 2009.12.10 19:04 #3456 Stepan241 >> : 如果(HourTime[0]=12)_CloseAllOrder 关于_CloseAllOrder函数本身,请参见最后一页或之前的页面。 谢谢你,这个功能非常方便 Евгений 2009.12.10 20:36 #3457 亲爱的专家们。 请告知造成这种结果的原因是什么。 gist: int start() { //---- double c; int q; c=0.3/0.1; q=c; Print("c=",c," q=",q); //---- return(0); } 它打印出 "c=3 q=2" 问题:怎么会有三分之二的成绩? 问题是,如果我把0.3换成0.4或任何其他分数,它就能如期解决问题。 比如说 int start() { //---- double c,v; int q,w; c=0.3/0.1; v=0.4/0.1; q=c; w=v; Print("c=",c," q=",q," v=",v," w=",w); //---- return(0); }"c=3 q=2 v=4 w=4" 问题:怎么会有三分之二的成绩? 试着编译,也许我的电脑不能计算(只是愚蠢的......)。 Всеволод 2009.12.10 21:09 #3458 mukata >> : 亲爱的专家们。 请告知造成这种结果的原因是什么。 gist: int start() { //---- double c; int q; c=0.3/0.1; q=c; Print("c=",c," q=",q); //---- return(0); } 它打印出 "c=3 q=2" 问题:怎么会有三分之二的成绩? 问题是,如果我把0.3换成0.4或任何其他分数,它就能如期解决问题。 比如说 int start() { //---- double c,v; int q,w; c=0.3/0.1; v=0.4/0.1; q=c; w=v; Print("c=",c," q=",q," v=",v," w=",w); //---- return(0); }"c=3 q=2 v=4 w=4" 问题:怎么会有三分之二的成绩? 试着编译一下,也许我的电脑不知道如何计算(这很傻......)。 这不是胡说八道,只是在处理实数时常见的四舍五入错误。 在第一种情况下,例如c等于2.999999999,输出是四舍五入的,即3,但当分配到一个整数类型时,小数部分被丢弃了。 Евгений 2009.12.10 21:26 #3459 splxgf >> : 这不是胡说八道,是处理实数时常见的四舍五入错误。 例如,在第一种情况下,c等于2.99999999999......。 2.99999999怎么会是2.9999?0.3/0.1=3正好,这不像是我用1除以3,应该是0.33333...... 但当分配给一个整数类型时,小数部分被丢弃。 一个整数类型被分配了一个值c,显然等于3,没有任何小数部分。 没有什么可以丢弃... 答案是100%的错误。 有其他选择吗? Yury Reshetov 2009.12.10 21:58 #3460 mukata >> : 我不明白2.9999怎么会是2.9999?0.3/0.1=3就算了,又不是我用1除以3,应该是0.33333...。 这只是看起来很确切,而机器表示可以采取不同的值。即2.9999,3或3.00000001 为了摆脱这种误解,MQL有NormalizeDouble()函数 1...339340341342343344345346347348349350351352353...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
在剧本的开头,你写道
#property show_inputs
外置双倍数Lot=0.1
之后,当脚本被附加到符号窗口时,会出现一个对话框。
我明白。但这不是我所需要的。有了这些命令,就会出现一个对话框--有一般的EA设置和当前的脚本设置,我问是否有这样的功能,可以用来一次性输出DO ONLY与脚本设置。
我明白。但这不是我所需要的。有了这些命令,就会出现一个对话框--有一般的EA设置和当前的脚本设置,我问是否有这样的功能,可以用来一次性输出DO ONLY与脚本设置。
那就只有MetaEditor了。
请告诉我们如何在指定时间关闭所有未结订单?
如果(HourTime[0]=12)_CloseAllOrder
参见前一页或前一页的_CloseAllOrder函数。
如果(HourTime[0]=12)_CloseAllOrder
关于_CloseAllOrder函数本身,请参见最后一页或之前的页面。
谢谢你,这个功能非常方便
亲爱的专家们。
请告知造成这种结果的原因是什么。
gist:
int start()
{
//----
double c;
int q;
c=0.3/0.1;
q=c;
Print("c=",c," q=",q);
//----
return(0);
}
它打印出 "c=3 q=2"
问题:怎么会有三分之二的成绩?
问题是,如果我把0.3换成0.4或任何其他分数,它就能如期解决问题。
比如说
{
//----
double c,v;
int q,w;
c=0.3/0.1;
v=0.4/0.1;
q=c;
w=v;
Print("c=",c," q=",q," v=",v," w=",w);
//----
return(0);
}
"c=3 q=2 v=4 w=4"
问题:怎么会有三分之二的成绩?
试着编译,也许我的电脑不能计算(只是愚蠢的......)。
亲爱的专家们。
请告知造成这种结果的原因是什么。
gist:
int start()
{
//----
double c;
int q;
c=0.3/0.1;
q=c;
Print("c=",c," q=",q);
//----
return(0);
}
它打印出 "c=3 q=2"
问题:怎么会有三分之二的成绩?
问题是,如果我把0.3换成0.4或任何其他分数,它就能如期解决问题。
比如说
{
//----
double c,v;
int q,w;
c=0.3/0.1;
v=0.4/0.1;
q=c;
w=v;
Print("c=",c," q=",q," v=",v," w=",w);
//----
return(0);
}
"c=3 q=2 v=4 w=4"
问题:怎么会有三分之二的成绩?
试着编译一下,也许我的电脑不知道如何计算(这很傻......)。
这不是胡说八道,只是在处理实数时常见的四舍五入错误。
在第一种情况下,例如c等于2.999999999,输出是四舍五入的,即3,但当分配到一个整数类型时,小数部分被丢弃了。
这不是胡说八道,是处理实数时常见的四舍五入错误。
例如,在第一种情况下,c等于2.99999999999......。
2.99999999怎么会是2.9999?0.3/0.1=3正好,这不像是我用1除以3,应该是0.33333......
但当分配给一个整数类型时,小数部分被丢弃。
一个整数类型被分配了一个值c,显然等于3,没有任何小数部分。 没有什么可以丢弃...
答案是100%的错误。
有其他选择吗?
我不明白2.9999怎么会是2.9999?0.3/0.1=3就算了,又不是我用1除以3,应该是0.33333...。
这只是看起来很确切,而机器表示可以采取不同的值。即2.9999,3或3.00000001
为了摆脱这种误解,MQL有NormalizeDouble()函数