嗨,我如何存储和获取前一个封闭蜡烛的高价和开盘价的价值,因为该价格会在每个前一个封闭蜡烛的价格上不断变化?想法是当条件真正存储“打开”和“高”的值时,从某个条件获得“高”和“打开”。 技术术语称为回撤区域。
double high=0,open=0,
AskPrice=MarketInfo(OrderSymbol(),MODE_ASK),
BidPrice=MarketInfo(OrderSymbol(),MODE_BID);
bool sellcondition = Open[1] > Close[1] && High[1] > Open[1] && Close[1] > Low[1];
if( sellcondition )
{
open=Open[1];
high=High[1];
}
if(Bid > open && Bid < high)
{
OrderSend(Symbol(),OP_SELL,0.01,BidPrice,3,0, 0,"",0,0,clrRed);
}
答案 0 :(得分:0)
如果您将high
和open
声明为全局范围或静态变量,然后仅在条件满足时才为其分配值满足,则在任何将来的柱上,它们将包含上次满足条件的“高”和“开盘”值。例如,您的代码段可以进行如下修改:
static double high=0,open=0,
AskPrice=MarketInfo(OrderSymbol(),MODE_ASK),
BidPrice=MarketInfo(OrderSymbol(),MODE_BID);
bool sellcondition = Open[1] > Close[1] && High[1] > Open[1] && Close[1] > Low[1];
if( sellcondition )
{
open=Open[1];
high=High[1];
}
if(Bid > open && Bid < high)
{
OrderSend(Symbol(),OP_SELL,0.01,BidPrice,3,0, 0,"",0,0,clrRed);
}