错误、漏洞、问题 - 页 131

 
Dmitriy2:

插入了代码,但没有附上文件


已经进行了更正。

请再试一次。

 
alexvd:

它挂起的原因是无限循环。

你有唯一的出路--通过休息。但你的断裂是在满足某个条件的情况下发生的。其中一个组成部分

你每次都在函数中获得指标句柄,并复制它,而不检查数据是否准备好。

建议。

1.把手柄变量带到全局水平。

2.在OnInit时接收指标句柄(反正你不改变抛物线参数)。

3.在从指标缓冲区 复制数据之前,检查其准备情况(可计算性)--函数BarsCalculated(抛物线)将帮助你。

4) 组织退出循环,如果你不做第3项,将需要调用BarsCalculated(Parabolic)函数。3没有得到满足。

2.在测试例子中没有变化,事实上这个函数一直在使用,参数也不同,这就是为什么我在OnInit中没有得到句柄的原因。

3.我会检查的,只是我不太明白我需要它做什么,条件是不能失败,一系列抛物线点是最近的条状物,它们肯定应该被上传(一般来说,我知道历史记录是在指定的测试开始日期前一年上传给测试者)。它真的很好用。在MQL4中,它在实际和测试器中都能工作(虽然没有单独的抛物线函数,但它是内置的...)。

 
alexvd:

已经进行了更正。

再试一次。

是的,成功了,谢谢你。
 
Dmitriy2:

2.在测试例子中没有变化,事实上这个函数一直在使用,参数也不一样,所以我得到的句柄不是在OnInit中。

3.好的,我会进行检查,只是我不太明白这一点,条件是不能失败的,一系列抛物线点是最近的条状物,它们肯定应该被上传(一般来说,我知道历史记录是在指定测试开始日期前一年上传给测试者的)。它真的很好用。在MQL4中,它在实际和测试器中都能工作(虽然没有单独的抛物线函数,但它是内置的...)。

3.在参考文献(https://www.mql5.com/ru/docs/series/barscalculated) 中已经讨论和描述了为什么需要这样做。

注意事项

当你想在指标创建后立即获得指标数据(获得指标句柄)时,这个函数很有用。

这是你的案子。

该指标是根据条形数据计算的。条形图在那里,但计算的数据可能没有。

Документация по MQL5: Доступ к таймсериям и индикаторам / BarsCalculated
Документация по MQL5: Доступ к таймсериям и индикаторам / BarsCalculated
  • www.mql5.com
Доступ к таймсериям и индикаторам / BarsCalculated - Документация по MQL5
 
Rosh:
这意味着这个位置是这个工具的几个交易的结果。因此,你可以看到头寸的加权平均价格
我以为加权平均价格 只指技术指标......我想我在测试器中不能总是让它在运行过程中为0......有时仍有几分钱被伸出来。
 
alexvd:

3.为什么需要这样做已经讨论过很多次了,在帮助中也有描述(https://www.mql5.com/ru/docs/series/barscalculated)

这是你的案子。

该指标是根据条形数据计算的。条形图在那里,但计算的数据可能不在那里。

是的,我已经用BarsCalculated了,谢谢你。

但无论如何,它在测试器中工作和不工作在逻辑上是错误的。你需要在测试器中已经建立了所有的检查,如果请求到一些数据,而这些数据不在那里,那么就会出现错误。 但是测试器有条,但由于某些原因,它不能计算数据,一直沉默不语...

 
maryan.dirtyn:
我以为加权平均价 只是一个技术指标......我在策略测试器中运行时,并不总是得到0......有时可能出现几分钱。

按数量 加权平均。例如,在欧元兑美元上有三笔交易。

交易
卷宗
价格
买入欧元兑美元
0.1手
1.2800
买入欧元兑美元0.2手
1.3400
买入欧元兑美元0.3手
1.2000
总计:欧元兑美元的多头头寸
0.6地段
?


结果,我们有一个欧元兑美元的头寸,成交量为0.6手,但价格是多少?

 
Rosh:

按数量 加权平均。例如,在欧元兑美元上有三笔交易。

交易
卷宗
价格
买入欧元兑美元
0.1手
1.2800
买入欧元兑美元0.2手
1.3400
买入欧元兑美元0.3手
1.2000
总计:欧元兑美元的多头头寸
0.6地段
?


我们最终持有0.6手的欧元兑美元头寸,但在什么价位?

在服务器层面将价格四舍五入到货币的精确程度,不是更容易吗?毕竟,专家顾问将不得不处理精度和每点价格的调整问题......
 
Interesting:
在服务器层面将价格四舍五入到货币的精确程度,不是更容易吗?毕竟,任何EA都要承受精度和每点价格的调整......。
为什么EA会这么做呢?这个加权平均价格 将是计算平仓的必要条件。专家顾问将不需要它。该头寸必须以正常价格平仓,并有该符号的必要数字。
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
Rosh:
为什么专家顾问应该受到影响?这个加权平均价格 需要用来计算平仓。它对专家顾问没有用处。它将不得不以正常的价格平仓,并为这个符号提供必要的字符数。

在某些情况下,你必须有一个正常化的价格值,不管价格是如何被接受的。

反正只要服务器重新计算开盘价,做服务器端的归一化就比较容易(至少在我看来是这样)。


顺便说一下,既然我们在谈论加权平均价格和净值平台。

据我所知,有两种修剪(部分平仓)之前平仓的亏损头寸的模式。

1.不要修复部分收盘时的损失,而只是重新计算开盘价(如果我没弄错的话,FC就是这么做的)。

2.保持开盘价不变,固定损失。

同样适用于扭转亏损的头寸


我想知道开发者对什么方法最终会在MT5中被标准化的看法,如果可能的话,为什么...

原因: