我是mql4的新手,并且对基础知识感到困惑。我想准备退出策略。这是条件。如果它是买入交易,我们必须卖出以关闭订单:
以下是我准备的代码部分。
i=1;
if (Close[i]<st)
{
low=close[1];
a=checkt1();
if (a==True)
{
OrderClose()
}
}
else if(Close[i]>st)
{
return(EMPTY_VALUE);
}
bool check1t()
{
if (Ask<a && Bid<a)
{
CloseOrder();
}
return True
}
这里close的值不断变化,因为我已将其设置为关闭[1]。是否有任何功能或任何方式可以存储仅削减超级趋势的蜡烛的关闭值?而不是接受任何其他价值观?
答案 0 :(得分:0)
因此您需要检查之前的蜡烛是否低于之前的蜡烛,以及关闭之前蜡烛的指标。
`void Check4closeBuy(){
double low1 = iLow(_Symbol,0,1), low2 = iLow(_Symbol,0,2),
close2 = iClose(_Symbol,0,2), ind2 = iCustom(_Symbol,0,ind_name,***,buffer,2);
if (ind2>close2 && low2>low1){
//close here
}
}`
关于比较双打 - 因为它们是双倍而不是整数,所以最好比较半嘀嗒之下的差异或类似的东西,但需要小心。
所以在基本情况下:double1&gt; double2 - &gt; double1-double2>Point/2
但这取决于你的指标,它可以有_Digits或更多(就像不同的MA可能有更多的数字后点,然后只有5)。