CPositionInfo PositionInfoKotiryemii,PositionInfoVedygii;
double Volume1=0; Volume2=0;
string Symbol1=""; Symbol2="";
if ( PositionInfoVedygii.Select("SBRF-12.17") ) // Select 1
{ Volume1=PositionInfoVedygii.Volume(); Symbol1=PositionInfoVedygii.Symbol(); } // Use 1elsePrint("Не удалось выбрать позицию по символ SBRF-12.17 ");
if ( PositionInfoKotiryemii.Select("SBRF-3.18") ) // Select 2
{ Volume2=PositionInfoKotiryemii.Volume(); Symbol2=PositionInfoKotiryemii.Symbol(); } // Use 2
els Print("Не удалось выбрать позицию по символ SBRF-3.18 ");
Print(Symbol2," Объем ",Volume2," ",Symbol1," Объем ",Volime1);
for(int i=PositionsTotal()-1;i>=0;i--)
if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
{
string str_position_type=(m_position.PositionType()==POSITION_TYPE_BUY)?"buy":"sell";
Print(m_position.Symbol()+" | "+
IntegerToString(m_position.Ticket())+" | "+
TimeToString(m_position.Time(),TIME_DATE|TIME_MINUTES|TIME_SECONDS)+" | "+
str_position_type+" | "+
DoubleToString(m_position.Volume(),2)+" | "+
DoubleToString(m_position.PriceOpen(),2));
我的理解是正确的,CPositionInfo类 的Volume方法返回Select()方法最后被调用的时间点所对应的体积?就是说,你可以找出这个符号一个月前的成交量?
你已经解释了如何准备CPositionInfo。但我仍然不明白两件事。
1) 这个配方是如何从CPositionInfo 类的帮助中得到的?
2)如果你不能正常使用一个以上的对象,为什么我们需要这个类本身,因为在每次访问位置属性之前,我们需要使用选择方法来配置位置,否则我们会突然对其他地方的另一个CPositionInfo 对象使用选择方法。
你已经解释了如何准备CPositionInfo。但我仍然不明白两件事。
1) 这个配方是如何从CPositionInfo 类的帮助中得到的?
2)如果你不能正常使用多个对象,为什么我们需要类本身,因为在每次访问位置属性之前,我们需要使用选择方法来配置它的位置,否则我们会突然在其他地方对另一个CPositionInfo 对象使用选择方法。
我不明白我在使用帮助方面有什么错误。
1)我需要程序中的位置量。
2)通过搜索,我找到了CPositionInfo 类中的Volume方法。
3)它指的是在调用Volume之前使用Select方法。
4) 在 "选择 "方法的描述中没有提及。为了安全起见,我研究了CPositionInfo 类的描述。
5) 我写代码。我得到了一个与参考文献不相符的结果。
错误在哪里?
我又一次知道了在访问属性之前选择一个位置和一个订单。但这种知识和帮助中的CPositionInfo 知识并没有交集。
错在哪里?
如果你学会写得更详细,你就能看到你的错误所在。
试着像这样写。
我不明白我在使用帮助方面有什么错误。
1)我需要程序中的位置量。
2)通过搜索,我找到了CPositionInfo 类中的Volume方法。
3)它指的是在调用Volume之前使用Select方法。
4) 在 "选择 "方法的描述中没有提及。为了安全起见,我研究了CPositionInfo 类的描述。
5) 我写代码。我得到了一个与参考文献不相符的结果。
错在哪里呢?
再一次关于位置选择,顺序,在访问属性之前我知道。但这些知识和帮助中的CPositionInfo 知识并不重叠。
它是一个代码块,可以绕过所有的头寸,并打印出类似于 "交易 "标签中终端的信息。
工作算法:首先我们选择位置(从超市货架上拿一罐果酱),然后我们访问所选位置的属性并打印这些属性(阅读果酱罐上的标签)。
事实证明,CPositionInfo类是没有意义的,因为通常情况下,你只能与这个类的一个对象一起工作。
Ivan Ivanov ,Vladimir Karputov, fxsaber 感谢你们的帮助。
我从专家顾问的指标中检索数据。首先,我计算手柄,然后从指标缓冲区复制最后几个实际值。
问题。
1.这些指标中的历史深度是什么?
2.有没有一种方法可以限制计算的深度?
在这种情况下,我们只需要几个最后的数值来确定拐点或向上/向下的方向。
我的专家顾问是多货币的,有几十个指标,所以我不需要做不必要的计算。
我从专家顾问的指标中检索数据。首先,我计算手柄,然后从指标缓冲区复制最后几个实际值。
问题。
1.这些指标中的历史有多深?
2.是否有办法限制计算的深度?
在这种情况下,我们只需要几个最后的数值来确定拐点或向上/向下的方向。
专家顾问是多货币的,有几十个指标,所以有必要不做不必要的计算。
我希望你在OnInit()中一次性创建指标句柄?
计算深度取决于指标。罕见的指标强行限制了深度--作为一项规则,所有的指标都计算整个历史。因此,也许以下的变体是有用的:在指标中引入负责深度的变量,然后在专家顾问中通过iCustom传递这个参数。