阿列克谢,请告诉我为什么我在图表上看不到您的指标,我已经试过所有指标了
你应该在图表上看到什么吗?请阅读说明,上面写着:该工具用于记录文本 (CSV) 和二进制 (BIN) 格式的刻度报价。
你应该在图表上看到什么吗?请阅读说明,上面写着:该工具用于记录文本 (CSV) 和二进制 (BIN) 格式的刻度报价。
尤金,谢谢你,由于某些原因,我没有收到 KB 中新评论的私人消息。现在我偶然看到了。
阿列克谢,我有几点意见。
1.您没有通过 "符号选择"(SymbolSelect)进行符号选择,而这是获得所有符号报价所必需的。
2.在设置文件名(或路径)时,最好能考虑到当前的交易服务器。这样当切换到另一个经纪商账户时,就不会写入相同的文件。或者在更换交易服务器时停止工作。
3.添加交易服务器连接 检查也无妨。否则,当连接中断时,它将继续写入文件,而你却不知道连接中断了。
4.在 mql 中,同时打开的文件数量有白痴般的限制(不超过 64 个文件),因此请记住,代码必须很复杂。阿列克谢,谢谢你的意见,我应该改正。但我对 "符号选择 "不是很确定。帮助中的示例并没有使用它,而且描述也很模糊。就数据更新而言,感觉它好像被关闭了,只有在 MarketWatch 中才会删除-选择符号。
下面是帮助中的一个示例。但 SymbolIsSynchronised 可能应该设置。
它检查终端中指定符号的数据是否与交易服务器上的数据同步。
void OnStart() { //--- int attempts=0; // 尝试计数器 bool success=false; // 标记复制成功执行 MqlTick tick_array[]; // 用于接收刻度的数组 MqlTick lasttick; // 获取最后一个刻度的数据 SymbolInfoTick(_Symbol,lasttick); //--- 进行 3 次尝试以获得刻度线
***
阿列克谢,谢谢你的意见,我需要改正。但我对 "符号选择 "不是很确定。帮助中的示例没有使用它,描述也很模糊。就数据更新而言,感觉它好像被关闭了,只有在 MarketWatch 中才会删除-选择符号。
下面是帮助中的一个示例。但 SymbolIsSynchronised 可能应该设置。
它检查终端中指定符号的数据是否与交易服务器上的数据同步。
***
为什么要猜呢?一切都很容易检查。试着获取市场观察中没有的任何符号的报价。您会得到零。这就是为什么您必须先选择它。
而 "符号是否同步"(SymbolIsSynchronised)则另当别论。老实说,我不太明白它的意思,因为报价总是与服务器同步的(如果有连接 的话)。虽然现在周末它给出的是假值。也许它指的不是服务器,而是接收报价的交易平台。那么这确实是一个应该考虑的必要功能。
我不需要猜测。一切都很容易查到。试着获取市场观察中没有的任何符号的报价。你会得到零。这就是为什么你必须先选择它。
SymbolIsSynchronised(符号同步)则是另外一回事。老实说,我不太明白它的意思,因为报价总是与服务器同步的(如果有连接 的话)。虽然现在周末它给出的是假值。也许它指的不是服务器,而是接收报价的交易平台。那么这确实也是一个需要考虑的必要功能。
我明白了,我总是将所有符号保留在 "概览 "中,我没有考虑过这个选项。这显然是社区的一个好处,一个人会错过一些东西,而另一个人会注意到它。
我记得很久以前,我还是学生的时候,和一个朋友--电子工程师--一起开发一个项目,当时我是一个相当不错的电子工程师。
我们注意到错误少了很多,速度也提高了很多。他漏掉了什么,我就指出来,反之亦然。
注:网站用红色标出了 "电子技术员"(Electronics Technician)一词,这是该职业的正式名称,我很久以前就把它写在了我的工作履历中。不要与电影 "电子历险记 "混淆。))
由于包含刻度线数据的文件很容易变得很大,我希望能有一个打包数据的选项。
我很好奇,你会用(打包的)数据做什么?
根据我的经验,这种数据收集器的限制因素不是数据大小,而是保存数据的质量(完整性)。数据流经常被中断,可能是由于代理,也可能是由于连接,但主要是在重启/更新终端、安排终端窗口内容或终端暂时冻结时。
SaveTicks:
作者: Alexey Volchanskiy