[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 189 1...182183184185186187188189190191192193194195196...1145 新评论 Владимир Варламов 2009.08.15 02:45 #1881 我曾经学习过编程的基础知识(25年前 - Algol 60 :))当时,一切都从创建一个算法(正方形、菱形)开始,然后用一种语言来描述这个算法。现在我没有看到任何算法或命令。 你们有什么好的mql4教程推荐吗?最好是有专家写作的 具体例子,从算法开始。 Victor Nikolaev 2009.08.15 02:54 #1882 v721965 писал(а)>> 我曾经学习过编程的基础知识(25年前 - Algol 60 :))当时,一切都从创建一个算法(正方形、菱形)开始,然后用一种语言来描述这个算法。现在我没有看到任何算法或命令。 你们有什么好的mql4教程推荐吗?最好是有具体的EA写作实例,从算法开始。 https://book.mql4.com/ru/ Oleg 2009.08.15 04:55 #1883 alvish >> : 亲请教,根据mql5语言帮助,没有函数iHighest如何计算N个时期的最大高点? ......我试过copyHigh和fmax,但只针对某个时期,当然不是那个时期,帮助 这里有一个例子。 int shift_Box_Start = iBarShift(NULL, 0, TimeBoxStart); Box_Start_High = High[iHighest(NULL, 0, MODE_HIGH, shift_Box_Start- i, i+1)]; Box_Start_Low = Low[iLowest(NULL, 0, MODE_LOW, shift_Box_Start- i, i+1)]; 只要确保你的换挡器是正确的。 [删除] 2009.08.15 04:56 #1884 1.试图在测试模式 下运行EA的可视化。该EA很简单:它通过Alert生成一个信息。当Alert处于init状态时,信息在开始时就被给出。当它处于启动状态时,EA对新的刻度线没有反应。问题是什么? 2.在同一测试模式下,我也启动了一个脚本,显示Time[1]、Close[1]、...的值。(供参考)。我发现这些数值是基于当前(实际)的时间,而不是基于图表中的点子接收和条形图形成的时间。可以做什么? Vasiliy Orlov 2009.08.15 09:43 #1885 Roger писал(а)>> 对于欧元兑英镑,它的回报是-0(那是Alpari)空头和-0.68多头,这正好是美元。 对于Alpari来说,互换计算类型是0,而我的是1。 虽然我需要知道所有类型的计算方法。 我尝试了所有的组合:乘法、除法或根本没有乘法。 以下是计算所有这些并返回最接近真实交换值的代码。 int a,b,c,d,dd; dd=1; double raznica; for ( j=OrdersHistoryTotal( )-1; j>=OrdersHistoryTotal( )-21; j--) { int a_=0,b_=0,c_=0,d_=0; raznica=1000000; OrderSelect(j, SELECT_BY_POS, MODE_HISTORY); if(OrderSwap()!=0){ if(OrderType()==OP_BUY){ for(a=-dd;a<=dd;a++){ for(b=-dd;b<=dd;b++){ for(c=-dd;c<=dd;c++){ for(d=-dd;d<=dd;d++){ double gg=MathPow(MarketInfo(OrderSymbol(),MODE_SWAPLONG),a)*MathPow(OrderLots(),b)*MathPow(MarketInfo(OrderSymbol(),MODE_TICKVALUE),c)*MathPow(MarketInfo(OrderSymbol(),MODE_BID),d); if(MathAbs(gg-OrderSwap())<raznica){raznica=MathAbs(gg-OrderSwap());a_=a;b_=b;c_=c;} }}}} Alert(" РЕАЛЬНЫЙ СВОП = "+OrderSwap()+"РАСЧЕТНЫЙ СВОП = "+gg+"\n a= "+a_+" b = "+b_+" c = "+c_+" d = "+d_); }//if(OrderType()==OP_BUY){ if(OrderType()==OP_SELL){ for(a=-dd;a<=dd;a++){ for(b=-dd;b<=dd;b++){ for(c=-dd;c<=dd;c++){ for(d=-dd;d<=dd;d++){ gg=MathPow(MarketInfo(OrderSymbol(),MODE_SWAPSHORT),a)*MathPow(OrderLots(),b)*MathPow(MarketInfo(OrderSymbol(),MODE_TICKVALUE),c)*MathPow(MarketInfo(OrderSymbol(),MODE_BID),d); if(MathAbs(gg-OrderSwap())<raznica){raznica=MathAbs(gg-OrderSwap());a_=a;b_=b;c_=c;} }}}} Alert(" РЕАЛЬНЫЙ СВОП = "+OrderSwap()+"РАСЧЕТНЫЙ СВОП = "+gg+"\n a= "+a_+" b = "+b_+" c = "+c_+" d = "+d_); }//if(OrderType()==OP_SELL){ }//if(OrderSwap()!=0){ }//for ( j=OrdersHistoryTotal( )-1; j>=OrdersHistoryTotal( )-21; j--) { 我没有得到Alpari或BROCO的任何结果。 I.e. MarketInfo(OrderSymbol(),MODE_SWAPLONG) OrderLots() MarketInfo(OrderSymbol(),MODE_TICKVALUE) MarketInfo(OrderSymbol(),MODE_BID) 对互换计算来说是不够的。 一定还有别的东西,但它是什么? [WARNING CLOSED!] Any newbie 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 关闭订单的利润计算 "HELP" [删除] 2009.08.15 09:58 #1886 谢谢chief2000,但是你通过标准的iHighest 和iLowest来写,这就是问题所在,而且它们不在mql 5中。 Oleg 2009.08.15 12:15 #1887 alvish >> : 谢谢chief2000,但是你通过标准的iHighest和iLowest来写,这就是mql 5的问题。 现在我明白了,我没有仔细阅读这个问题。 我真的要在第五版中手动描述一切吗?这里有些不对劲--也许文件有问题? [删除] 2009.08.15 13:14 #1888 就这样吧。 igorkaisa 2009.08.15 13:30 #1889 vasya_vasya >> : 对于Alpari来说,互换计算类型是0,而我的是1。 Vasya,你为什么要这么做? 我在这里告诉你"mql4中的交换", 非常简单 我可以详细介绍一下。 一共有4种变体 每个人都有一个不同的公式。 Vasiliy Orlov 2009.08.15 17:12 #1890 kaisa писал(а)>> Vasya,你为什么要这样做呢? 我在这里简单地告诉你"mql4中的交换"。 如果你需要,我可以说得更详细一些。 一共有4种变体 每个人都有一个不同的公式 是的,我可以拥有其他公式吗? 1...182183184185186187188189190191192193194195196...1145 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我曾经学习过编程的基础知识(25年前 - Algol 60 :))当时,一切都从创建一个算法(正方形、菱形)开始,然后用一种语言来描述这个算法。现在我没有看到任何算法或命令。
你们有什么好的mql4教程推荐吗?最好是有专家写作的 具体例子,从算法开始。
我曾经学习过编程的基础知识(25年前 - Algol 60 :))当时,一切都从创建一个算法(正方形、菱形)开始,然后用一种语言来描述这个算法。现在我没有看到任何算法或命令。
你们有什么好的mql4教程推荐吗?最好是有具体的EA写作实例,从算法开始。
https://book.mql4.com/ru/
亲请教,根据mql5语言帮助,没有函数iHighest如何计算N个时期的最大高点? ......我试过copyHigh和fmax,但只针对某个时期,当然不是那个时期,帮助
这里有一个例子。
只要确保你的换挡器是正确的。
1.试图在测试模式 下运行EA的可视化。该EA很简单:它通过Alert生成一个信息。当Alert处于init状态时,信息在开始时就被给出。当它处于启动状态时,EA对新的刻度线没有反应。问题是什么?
2.在同一测试模式下,我也启动了一个脚本,显示Time[1]、Close[1]、...的值。(供参考)。我发现这些数值是基于当前(实际)的时间,而不是基于图表中的点子接收和条形图形成的时间。可以做什么?
对于欧元兑英镑,它的回报是-0(那是Alpari)空头和-0.68多头,这正好是美元。
对于Alpari来说,互换计算类型是0,而我的是1。
虽然我需要知道所有类型的计算方法。
我尝试了所有的组合:乘法、除法或根本没有乘法。
以下是计算所有这些并返回最接近真实交换值的代码。
int a,b,c,d,dd;
dd=1;
double raznica;
for ( j=OrdersHistoryTotal( )-1; j>=OrdersHistoryTotal( )-21; j--) {
int a_=0,b_=0,c_=0,d_=0;
raznica=1000000;
OrderSelect(j, SELECT_BY_POS, MODE_HISTORY);
if(OrderSwap()!=0){
if(OrderType()==OP_BUY){
for(a=-dd;a<=dd;a++){
for(b=-dd;b<=dd;b++){
for(c=-dd;c<=dd;c++){
for(d=-dd;d<=dd;d++){
double gg=MathPow(MarketInfo(OrderSymbol(),MODE_SWAPLONG),a)*MathPow(OrderLots(),b)*MathPow(MarketInfo(OrderSymbol(),MODE_TICKVALUE),c)*MathPow(MarketInfo(OrderSymbol(),MODE_BID),d);
if(MathAbs(gg-OrderSwap())<raznica){raznica=MathAbs(gg-OrderSwap());a_=a;b_=b;c_=c;}
}}}}
Alert(" РЕАЛЬНЫЙ СВОП = "+OrderSwap()+"РАСЧЕТНЫЙ СВОП = "+gg+"\n a= "+a_+" b = "+b_+" c = "+c_+" d = "+d_);
}//if(OrderType()==OP_BUY){
if(OrderType()==OP_SELL){
for(a=-dd;a<=dd;a++){
for(b=-dd;b<=dd;b++){
for(c=-dd;c<=dd;c++){
for(d=-dd;d<=dd;d++){
gg=MathPow(MarketInfo(OrderSymbol(),MODE_SWAPSHORT),a)*MathPow(OrderLots(),b)*MathPow(MarketInfo(OrderSymbol(),MODE_TICKVALUE),c)*MathPow(MarketInfo(OrderSymbol(),MODE_BID),d);
if(MathAbs(gg-OrderSwap())<raznica){raznica=MathAbs(gg-OrderSwap());a_=a;b_=b;c_=c;}
}}}}
Alert(" РЕАЛЬНЫЙ СВОП = "+OrderSwap()+"РАСЧЕТНЫЙ СВОП = "+gg+"\n a= "+a_+" b = "+b_+" c = "+c_+" d = "+d_);
}//if(OrderType()==OP_SELL){
}//if(OrderSwap()!=0){
}//for ( j=OrdersHistoryTotal( )-1; j>=OrdersHistoryTotal( )-21; j--) {
我没有得到Alpari或BROCO的任何结果。
I.e.
MarketInfo(OrderSymbol(),MODE_SWAPLONG)
OrderLots()
MarketInfo(OrderSymbol(),MODE_TICKVALUE)
MarketInfo(OrderSymbol(),MODE_BID)
对互换计算来说是不够的。
一定还有别的东西,但它是什么?
谢谢chief2000,但是你通过标准的iHighest和iLowest来写,这就是mql 5的问题。
现在我明白了,我没有仔细阅读这个问题。
我真的要在第五版中手动描述一切吗?这里有些不对劲--也许文件有问题?
对于Alpari来说,互换计算类型是0,而我的是1。
Vasya,你为什么要这么做? 我在这里告诉你"mql4中的交换", 非常简单
我可以详细介绍一下。
一共有4种变体
每个人都有一个不同的公式。
Vasya,你为什么要这样做呢? 我在这里简单地告诉你"mql4中的交换"。
如果你需要,我可以说得更详细一些。
一共有4种变体
每个人都有一个不同的公式
是的,我可以拥有其他公式吗?