编码帮助 - 页 372

 
AtApi:
谢谢mladen!这样做的问题是,它并没有真正从数组中删除字符串,它只是将原始和重复值的字符串值改为 "删除"......所以如果我以后想过滤它们,我也会删除原始值......我希望我很清楚。

它并没有

这就是为什么if (myArray != "remove")条件是在该代码的最后一行。在调整了新的数组大小(增加了一个新元素)后,只有与 "删除 "不同的值被复制到新的数组中。

 

好的,我将测试它,并让你知道!

衷心感谢您!!!"。

 
mladen:
这就是为什么if (myArray != "remove") 条件在该代码的最后一行。在调整新数组大小(添加新元素)后,只有与 "删除 "不同的值被复制到新数组中。
 

姆拉登

nicetrader1.03 ea的错误已经消失.....,所以我把它带回了测试器。它不能交易,但给出了错误。我把日志中的部分错误附在下面。

我想这是我们添加的追踪止损功能的结果,因为我之前在交易,,,,,只是想为我们这里的所有人完善模板....,请帮助我重新调整追踪止损以与模板一起工作。我为追踪订单创建了3个外部变量,Trailingstop、Trailingstart和Trailingstep。TrailingStart,是在激活追踪止损前需要达到的利润阈值;TrailingStop,是我们将从新的利润高点追踪的点数;TrailingStep,是在止损被增加之前需要获得的新点数的数量。

mladen:
删除的那些警告:newnicetrader_1.03.mq4
附加的文件:
errorimage.png  212 kb
 
Mastercash:
姆拉登

nicetrader1.03 ea的错误已经消失.....so,我把它带回了测试器。它不能交易,但出现了错误。我把日记中的部分错误附在下面。

我想这是我们添加的跟踪止损功能的结果,因为我之前在交易,,,,,只是想为我们这里的所有人完善模板....,请帮助我重新调整跟踪止损,使其与模板一起工作。我为跟踪订单创建了3个外部变量,Trailingstop、Trailingstart和Trailingstep。TrailingStart,是在激活追踪止损之前需要达到的利润阈值;TrailingStop,是我们将从新的利润高点追踪的点数;TrailingStep,是在止损点增加之前需要获得的新点数的数量。

错误134意味着:没有足够的资金。这不是添加任何交易功能的结果,因为我根本没有在该EA中添加任何交易功能--如果你确实添加了这些功能,请修改它们,因为我不知道你对代码做了什么修改。

 

如何计算当前开仓订单的总利润?

 
apprentice coder:
如何计算当前开仓订单的总利润?

编码学徒

你可以这样做(包括掉期和佣金,所以结果是准确的利润):

double colectProfit()

{

double profitSoFar=0;

//

//

//

//

//

for (int i=OrdersTotal()-1; i>=0; i--)

{

OrderSelect(i, SELECT_BY_POS,MODE_TRADES);

if (!TrailAllSymbols)

if (OrderSymbol()!=Symbol()) continue;

if (OrderMagicNumber() < magicNumberfrom) continue;

if (OrderMagicNumber() > magicNumberto) continue;

if (OrderType()==OP_BUY || OrderType()==OP_SELL)

profitSoFar += (OrderProfit()+OrderSwap()+OrderCommission());

}

return(profitSoFar);

}

 
mladen:
编码学徒

你可以这样做(包括交换和佣金,所以结果是准确的利润)。

double colectProfit()

{

double profitSoFar=0;

//

//

//

//

//

for (int i=OrdersTotal()-1; i>=0; i--)

{

OrderSelect(i, SELECT_BY_POS,MODE_TRADES);

if (!TrailAllSymbols)

if (OrderSymbol()!=Symbol()) continue;

if (OrderMagicNumber() < magicNumberfrom) continue;

if (OrderMagicNumber() > magicNumberto) continue;

if (OrderType()==OP_BUY || OrderType()==OP_SELL)

profitSoFar += (OrderProfit()+OrderSwap()+OrderCommission());

}

return(profitSoFar);

}

明白了

我在想这行的东西,但交换有时会造成错误的结果。谢谢

 

是的,但是当我添加追踪止损时开始出现这个错误,我花了时间解释。这个EA需要追踪止损,对我来说,这就像我添加的那个函数,也就是代码上部的第一个函数,没有发挥作用。请帮助添加一个更好的追踪函数。

mladen:
错误134意味着:没有足够的资金。这不是添加任何交易功能的结果,因为我根本没有在该EA中添加任何交易功能--如果你确实添加了这些功能,请修改它们,因为我不知道你在代码中做了什么修改。
 

这个帖子是给Mladen的,嗨,先生,这是我在元编辑器中编译专家时得到的,fisher m11 ea,这是什么意思?谢谢你!

Fisher M11 ea.mq4' Fisher M11 ea.mq4 1 1

'stdlib.mqh' stdlib.mqh 1 1

'stderror.mqh' stderror.mqh 1 1

函数 必须返回一个值 Fisher M11 ea.mq4 94 5

变量'cerrada'未被使用 Fisher M11 ea.mq4 78 8

变量'价格'未被使用 Fisher M11 ea.mq4 77 10

变量'ticket'未被使用 Fisher M11 ea.mq4 76 7

声明'c'隐藏了第57行的全局声明 Fisher M11 ea.mq4 191 82

未使用变量'i'费舍尔M11 ea.mq4 356 18

声明'slippage'隐藏了第60行的全局声明 Fisher M11 ea.mq4 531 12

声明'magic'时隐藏了第14行的全局声明 Fisher M11 ea.mq4 532 28

应该检查'OrderSelect'的返回值 Fisher M11 ea.mq4 684 4

应该检查'OrderSelect'的返回值 Fisher M11 ea.mq4 791 4

不是所有的控制路径都会返回一个值 Fisher M11 ea.mq4 801 1

声明'slippage'隐藏了第60行的全局声明 Fisher M11 ea.mq4 841 12

声明'magic'隐藏了第14行的全局声明 Fisher M11 ea.mq4 842 28

应该检查'OrderSelect'的返回值 Fisher M11 ea.mq4 1010 4

不是所有的控制路径都会返回一个值 Fisher M11 ea.mq4 1020 1

应该检查'OrderSelect'的返回值 Fisher M11 ea.mq4 1093 4

应该检查'OrderSelect'的返回值 Fisher M11 ea.mq4 1187 3

slippage "的声明隐藏了第60行的全局声明 Fisher M11 ea.mq4 1267 11

应该检查'OrderSelect'的返回值 Fisher M11 ea.mq4 1401 3

0个错误,19个警告 1 20

原因: