在MQL5中一起学习和写作 - 页 37

 
Dimka-novitsek:
谢谢你!目前的买卖价格为零。交易票.购票顺序。对了,那是爸爸。
那么,retcode是什么? 它是什么意思?
 

谢谢!!!我会看一下改写代码的!

谢谢你!!!!我知道了!没有你,哪里都不行。

 

你好。

我遇到了这个问题,我一点也不明白。你能解释一下为什么在这种情况下NormalizeDouble()并不总是工作?

   for ( x = .... ) {
      close = tf_rates[x].close;
      close = NormalizeDouble(close, 4 );
   }

我正在将 价格和其他数据添加到 当前时间框架的文件中。所有条目中约有10%是字符串,如。

1971.01.07,00:00,0.5368000000000001,0.5368000000000001,0.5368000000000001,0.5368000000000001,1

结果与归一化顺序无关,我用1、2、3、4、5、数字代替--都一样。问题出在哪里?

Документация по MQL5: Файловые операции / FileWrite
Документация по MQL5: Файловые операции / FileWrite
  • www.mql5.com
Файловые операции / FileWrite - Документация по MQL5
 
wtvirtual:

你好。

我遇到了这个问题,我一点也不明白。你能解释一下为什么在这种情况下NormalizeDouble()并不总是工作?

我正在将价格和其他数据添加 当前时间框架的文件中。所有条目中约有10%是字符串,如。

1971.01.07,00:00,0.5368000000000001,0.5368000000000001,0.5368000000000001,0.5368000000000001,1

结果并不取决于归一化的顺序,我用1、2、3、4、5、数字代替--都一样。问题出在哪里?

没有埋伏。这就是一些规范化的数值的样子。请看《参考手册》中关于这个函数的章节。
 
Yedelkin:
没有埋伏。这就是一些规范化的数值的样子。请看《参考手册》中关于这个函数的章节。
在《参考手册》中,有一个关于打印输出的说明。让我们假设不仅是这个函数,而且所有其他的函数也都 "正常化 "了。那么,我们应该如何在挂单 中把这个值显示为价格?
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 
wtvirtual:
在手册中,只有一个关于打印输出的注释。

那么,你用什么函数来输出这些规范化的数值?:)- 啊,明白了。从一个文件中读取。在《参考手册》的例子中,Print()函数只是 "按原样 "打印出数字。

wtvirtual
假设不仅是这个函数,而且所有其他函数也都 "正常化"。那么,我们应该如何以价格的形式将这样的数值发送到挂单 中呢?

而这正是它应该呈现的方式。订单有什么要求?- 正常化的价格。所以我们把它们正常化,然后提交。而这些正常化的价格在印刷时是什么样子,不是我们的问题)。

此外,如果你输出 "当前时间段的价格",这意味着这些带有大量小数点的价格可以作为服务器上的正常化价格被接受......这算是我的结论,但我找不到任何反驳的理由。

 
wtvirtual:

你好。

我遇到了这个问题,我一点也不明白。你能解释一下为什么在这种情况下NormalizeDouble()并不总是工作?

我正在将 价格和其他数据添加到 当前时间框架的文件中。所有条目中约有10%是字符串,如。

1971.01.07,00:00,0.5368000000000001,0.5368000000000001,0.5368000000000001,0.5368000000000001,1

结果并不取决于归一化的顺序,我用1、2、3、4、5、数字代替--都一样。问题出在哪里?

你可以这样解释,试着用小数形式写下数字1/3--这是不可能的(纸张、浆糊和生活不够)。
迟早你会接受一个小的不准确,把数值四舍五入。
同样的事情发生在以二进制形式书写的实数上(如计算机所呈现的)。
如果不能用52位的尾数来表示这个数字(例如0.53680),就会有 "轻微 "的不准确...
 

你好,请你告诉我如何正确地将一个变量声明为一个类型?下面是一个函数命名惯例的例子。

string OrderType() {
string Si=";
POSITION_TYPE Type; bool Bull=false。
Bull =PositionGetInteger(POSITION_TYPE,Type)。
如果 ( 公牛 ) {
if ( Type==POSITION_TYPE_BUY) Si="OP_BUY"。
if ( Type==POSITION_TYPE_SELL) Si="OP_SELL"。
返回(Si); }

ORDER_TYPE ORType。
Bull =OrderGetInteger(ORDER_TYPE,ORType)。
如果 ( 公牛 ) {
如果 ( Type==ORDER_TYPE_BUY_LIMIT ) Si = OP_BUY_LIMIT;
if ( Type==ORDER_TYPE_SELL_LIMIT) Si="OP_SELL_LIMIT"。
if ( Type==ORDER_TYPE_BUY_STOP) Si="OP_BUY_STOP"。
if ( Type==ORDER_TYPE_SELL_STOP) Si="OP_SELL_STOP"。
返回(Si); }

}

也许根本就有问题,比如说,我还没有尝试过用这种方式获得PositionGetInteger和OrderGetInteger函数的值。

 
Dimka-novitsek:

下午好!请您告诉我如何正确地将一个变量声明为一个类型?这里有一个函数叠加的样本。

也许根本就有问题,比如说,我还没有尝试过用这种方式获得PositionGetInteger和OrderGetInteger函数的值。

我们谈论的是哪个变量?
 
POSITION_TYPE Type 哦,我的电脑变慢了,我花了近40秒才把它放进去!