#include <Trade\Trade.mqh>
voidOnTick()
{
static CTrade Trade;
constdatetime NowTime = TimeCurrent();
if (Trade.Buy(1) && Trade.PositionClose(_Symbol) && HistorySelect(NowTime, NowTime))
{
Print(HistoryDealsTotal()); // 0 - это при том, что мы открыли и закрыли позицию в NowTime-времяExpertRemove();
}
}
//--- отправка запросаif ( !OrderSend(request,result) )
PrintFormat("OrderSend error %d",GetLastError());
else
{ Sleep(9999); // Time to get result
..... // Здесь мне нужен result
}
现在不可能确定专家顾问是在交易模式 还是在帧接收模式下运行。请在EA名称中加入适当的提法,因为它已经在Debug-start中完成。
关于交易、自动交易系统和交易策略测试的论坛
虫子,虫子,问题
A100, 2017.07.11 17:50
给我一个这种使用情况的例子
我们需要一个类似于EA的IndicatorParameters -ExpertParameters。
由于它的缺失,在OnTesterPass中不可能了解计算出的通行证的哪些输入参数已经到达。
FrameInputs函数 没有帮助吗?或者说我不明白它应该用什么和怎么用。
FrameInputs函数没有帮助吗?或者说我不明白它应该用什么和怎么用。
是的,这就是你需要的!我看不出来。
以前你可以把一个DLL拖到我这里,然后看到可用的功能列表,现在你不能这样做了,还是有什么变化?
测试器中再次出现HistorySelect 错误。在1626年,我不认为有一个。在1629年,有。
测试器中再次出现HistorySelect错误。在1626年,我不认为有一个。在1629年--有。
现在完成的行动需要一些时间(少于10秒)来显示。
1.你的终端向服务器发送了一个请求
2.服务器处理它。
3) 更新你的终端信息
4.之后,你将收到正确的HistorySelect和HistoryDealsTotal。
意思是:要看到历史上的最后一个动作,你需要在Trade之后和HistorySelect之前执行Sleep。
...或以某种方式检查历史是否过期。
(与报价相同 - 你有这些报价,但它们与下载时的报价相同)
测试器中 再次出现HistorySelect错误。在1626年,我不认为有一个。在1629年,有。
这里有一个例子。
在没有睡眠的情况下,它对我来说不起作用,但当有10秒钟的时候,它就很好。
https://www.mql5.com/ru/docs/trading/ordersend下面是一个例子。