新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 487 1...480481482483484485486487488489490491492493494...1953 新评论 Alexey Viktorov 2018.03.06 05:55 #4861 igrok333:如何读取文件的第8行? 问题与文件操作有关https://docs.mql4.com/ru/files mql中的一切都由蛮力完成,有人曾告诉我? 你就不能用其他方法吗?所有的数据类型都有一定的占用内存的大小,单位是字节。相应地,在编写代码时,你可以使用它,将文件指针转移到一个字符串的数据所占用的字节数上。 如果一行包含4个双数类型的值,则需要4*8=32个字节。分别来说,为了读取文件的第9行,我们需要将文件指针移到256字节的位置。 bool FileSeek( int file_handle, // handle файла long offset, // в байтах ENUM_FILE_POSITION origin // позиция для отсчета ); bool FileSeek(file_handle, 265, SEEK_SET);如果从文件的末尾移位,那么该值必须是负值。 但是,这并不是那么顺利。前段时间,我处理了这个问题,发现.txt和.csv文件不能正常使用,但.bin文件不会出错。也许这个问题已经被解决了,你可能会很幸运。 igrok333 2018.03.06 09:30 #4862 Alexey Viktorov: 如果有4个类型为double的值csv文件中的所有数值不都是字符串吗? 我为文件中的每一行都准备了一个词。 所以我有大小为12字节的字符串值。 因此,为了到达第8行,我需要将马车移位84字节。 bool FileSeek(file_handle, 84, SEEK_SET); 谢谢你提供的信息。 Roman Sharanov 2018.03.06 09:31 #4863 我如何在mql 5中循环查看所有未结头寸? igrok333 2018.03.06 09:32 #4864 Roman Sharanov: 在mql 5中如何对所有未结头寸 进行循环? 这就是mql4的主题 Artyom Trishkin 2018.03.06 10:33 #4865 igrok333: 这就是mql4的主题不,这个话题既是mql4又是mql5 [删除] 2018.03.06 10:37 #4866 Roni Iron:下午好!问题:如何在终端 加快测试器的速度?我让它只使用4个CPU线程中的1个,而且只有150mb的内存。(即它不使用我的电脑的所有功率)。有哪些选择?如果这个问题已经讨论过了,请放下链接。如果是MT4,那么只有CPU频率在这里起作用。使用一条线?你可以同时启动4个MT4终端,进行不同的测试或优化任务。你将得到与一个终端相同的CPU负载。 Artyom Trishkin 2018.03.06 10:40 #4867 Roman Sharanov: 我怎样才能在mql5中循环浏览所有未结头寸?mql5对头寸和订单进行了区分。仓位是交易的结果。而交易是订单触发的结果。 首先,一个交易请求被发送到服务器,然后出现一个挂单(如果请求是为了设置一个)或一个市场订单(如果请求是为了开仓)。 如果市价单被触发(发生了交易),就会出现一个头寸(或现有头寸被修改),作为这个交易的结果。 在对冲账户上,可以有许多独立的头寸(包括多方向的),在净额结算账户上,只能有一个头寸。 所以,要循环浏览所有的位置,你需要按照它们的数量来组织循环--分别使用PositionsTotal()而不是通常的mql4 OrdersTotal()。 如果你想在mql5中循环所有订单,那么(在mql5中)使用通常的mql4 OrdersTotal()。 Ihor Herasko 2018.03.06 11:14 #4868 igrok333:但是,csv文件中的所有数值不都是字符串吗? 我为文件中的每一行都准备了一个词。 所以我有大小为12字节的字符串值。 因此,为了到达第8行,我需要将马车移位84字节。 谢谢你提供的信息。该文本文件只能逐行读取。没有其他方法来计算行数。所以--是的,只有通过使用FileReadString在循环中连续读取。 Maxim Khrolenko 2018.03.06 11:24 #4869 我使用ObjectCreate(name,OBJ_FIBO,...)在图表中创建斐波那契水平,然后使用ObjectSetFiboDescription(name,0,"...")并设置水平描述,但名称应远离右边缘。我增加了留白,但它不仅把文字移开,而且还覆盖了行。另外,如果你添加更多的空格,文本就会停止向后移动。 问题:我可以在文本中添加一个 "隐形 "符号,这样它就不会覆盖它下面的线? Konstantin Erin 2018.03.06 12:07 #4870 Maxim Khrolenko:我使用ObjectCreate(name,OBJ_FIBO,...)在图表中创建斐波那契水平,然后使用ObjectSetFiboDescription(name,0,"...")并设置水平描述,但名称应远离右边缘。我增加了留白,但它不仅把文字移开,而且还覆盖了行。另外,如果你添加更多的空格,文本就会停止向后移动。 问题:我能否在文本中添加一个 "隐形 "符号,使其不覆盖其下的线? 尝试点和一个代码为0的字符 1...480481482483484485486487488489490491492493494...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
如何读取文件的第8行?
问题与文件操作有关
https://docs.mql4.com/ru/files
mql中的一切都由蛮力完成,有人曾告诉我?
你就不能用其他方法吗?
所有的数据类型都有一定的占用内存的大小,单位是字节。相应地,在编写代码时,你可以使用它,将文件指针转移到一个字符串的数据所占用的字节数上。
如果一行包含4个双数类型的值,则需要4*8=32个字节。分别来说,为了读取文件的第9行,我们需要将文件指针移到256字节的位置。
如果从文件的末尾移位,那么该值必须是负值。
但是,这并不是那么顺利。前段时间,我处理了这个问题,发现.txt和.csv文件不能正常使用,但.bin文件不会出错。也许这个问题已经被解决了,你可能会很幸运。
如果有4个类型为double的值
csv文件中的所有数值不都是字符串吗?
我为文件中的每一行都准备了一个词。
所以我有大小为12字节的字符串值。
因此,为了到达第8行,我需要将马车移位84字节。
谢谢你提供的信息。
在mql 5中如何对所有未结头寸 进行循环?
这就是mql4的主题
不,这个话题既是mql4又是mql5
下午好!
问题:如何在终端 加快测试器的速度?
我让它只使用4个CPU线程中的1个,而且只有150mb的内存。(即它不使用我的电脑的所有功率)。
有哪些选择?
如果这个问题已经讨论过了,请放下链接。
如果是MT4,那么只有CPU频率在这里起作用。使用一条线?你可以同时启动4个MT4终端,进行不同的测试或优化任务。你将得到与一个终端相同的CPU负载。
我怎样才能在mql5中循环浏览所有未结头寸?
mql5对头寸和订单进行了区分。仓位是交易的结果。而交易是订单触发的结果。
首先,一个交易请求被发送到服务器,然后出现一个挂单(如果请求是为了设置一个)或一个市场订单(如果请求是为了开仓)。
如果市价单被触发(发生了交易),就会出现一个头寸(或现有头寸被修改),作为这个交易的结果。
在对冲账户上,可以有许多独立的头寸(包括多方向的),在净额结算账户上,只能有一个头寸。
所以,要循环浏览所有的位置,你需要按照它们的数量来组织循环--分别使用PositionsTotal()而不是通常的mql4 OrdersTotal()。
如果你想在mql5中循环所有订单,那么(在mql5中)使用通常的mql4 OrdersTotal()。
但是,csv文件中的所有数值不都是字符串吗?
我为文件中的每一行都准备了一个词。
所以我有大小为12字节的字符串值。
因此,为了到达第8行,我需要将马车移位84字节。
谢谢你提供的信息。
该文本文件只能逐行读取。没有其他方法来计算行数。所以--是的,只有通过使用FileReadString在循环中连续读取。
我使用ObjectCreate(name,OBJ_FIBO,...)在图表中创建斐波那契水平,然后使用ObjectSetFiboDescription(name,0,"...")并设置水平描述,但名称应远离右边缘。我增加了留白,但它不仅把文字移开,而且还覆盖了行。另外,如果你添加更多的空格,文本就会停止向后移动。
问题:我可以在文本中添加一个 "隐形 "符号,这样它就不会覆盖它下面的线?
我使用ObjectCreate(name,OBJ_FIBO,...)在图表中创建斐波那契水平,然后使用ObjectSetFiboDescription(name,0,"...")并设置水平描述,但名称应远离右边缘。我增加了留白,但它不仅把文字移开,而且还覆盖了行。另外,如果你添加更多的空格,文本就会停止向后移动。
问题:我能否在文本中添加一个 "隐形 "符号,使其不覆盖其下的线?
尝试点和一个代码为0的字符