为什么获取的值异常 新评论 dvarlife 2023.06.02 17:50 写法是这样的 //+------------------------------------------------------------------+ int OnumberB() { double PRICE = 0; int number = 0; for(int i=0; i<OrdersTotal(); i++) if(OrderSelect(i,SELECT_BY_POS)) if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == 0){ if(OrderComment() == 注释1 || OrderComment() == 注释2){ if(PRICE == 0 || PRICE < OrderOpenPrice()) { PRICE = OrderOpenPrice(); number= OrderTicket(); } } } return(number); } //+------------------------------------------------------------------+ double OnumberBp() { double PRICE = 0; for(int i=0; i<OrdersTotal(); i++) if(OrderSelect(i,SELECT_BY_POS)) if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == 0){ if(OrderComment() == 注释1 || OrderComment() == 注释2){ if(PRICE == 0 || PRICE < OrderOpenPrice()) { PRICE = OrderOpenPrice(); } } } return(PRICE); } //+------------------------------------------------------------------+ int TwonumberB() { double PRICE = 0; int number = 0; for(int i=0; i<OrdersTotal(); i++) if(OrderSelect(i,SELECT_BY_POS)) if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == 0) { if(OrderComment() == 注释1 || OrderComment() == 注释2) { if(PRICE == 0 || (PRICE < OrderOpenPrice() && OrderOpenPrice() < OnumberBp())) { PRICE = OrderOpenPrice(); number= OrderTicket(); } } } return(number); } //+------------------------------------------------------------------+ double TwonumberBp() { double PRICE = 0; for(int i=0; i<OrdersTotal(); i++) if(OrderSelect(i,SELECT_BY_POS)){ if(OrderSymbol() == Symbol()){ if(OrderMagicNumber() == Magic){ if(OrderType() == 0){ if(OrderComment() == 注释1 || OrderComment() == 注释2){ if(PRICE == 0 || (PRICE < OrderOpenPrice() && OrderOpenPrice() < OnumberBp())) { PRICE = OrderOpenPrice(); } } } } } } return(PRICE); } 分别为,计算多头最高价订单,多头最高价,多头次高价订单,多头次高价 现在就出现一个问题,要么计算的最高价订单,最高价,与次高价订单,以及次高价是同一个 要不又跳转成 OrderComment() 不是注释1 与注释2中的任意一个,而把其他的注释的计算进来了 MT4 计算的订单最高价与次高价异常 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 [警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
写法是这样的
//+------------------------------------------------------------------+
int OnumberB()
{
double PRICE = 0;
int number = 0;
for(int i=0; i<OrdersTotal(); i++)
if(OrderSelect(i,SELECT_BY_POS))
if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == 0){
if(OrderComment() == 注释1 || OrderComment() == 注释2){
if(PRICE == 0 || PRICE < OrderOpenPrice())
{
PRICE = OrderOpenPrice();
number= OrderTicket();
}
}
}
return(number);
}
//+------------------------------------------------------------------+
double OnumberBp()
{
double PRICE = 0;
for(int i=0; i<OrdersTotal(); i++)
if(OrderSelect(i,SELECT_BY_POS))
if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == 0){
if(OrderComment() == 注释1 || OrderComment() == 注释2){
if(PRICE == 0 || PRICE < OrderOpenPrice())
{
PRICE = OrderOpenPrice();
}
}
}
return(PRICE);
}
//+------------------------------------------------------------------+
int TwonumberB()
{
double PRICE = 0;
int number = 0;
for(int i=0; i<OrdersTotal(); i++)
if(OrderSelect(i,SELECT_BY_POS))
if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == 0)
{
if(OrderComment() == 注释1 || OrderComment() == 注释2)
{
if(PRICE == 0 || (PRICE < OrderOpenPrice() && OrderOpenPrice() < OnumberBp()))
{
PRICE = OrderOpenPrice();
number= OrderTicket();
}
}
}
return(number);
}
//+------------------------------------------------------------------+
double TwonumberBp()
{
double PRICE = 0;
for(int i=0; i<OrdersTotal(); i++)
if(OrderSelect(i,SELECT_BY_POS)){
if(OrderSymbol() == Symbol()){
if(OrderMagicNumber() == Magic){
if(OrderType() == 0){
if(OrderComment() == 注释1 || OrderComment() == 注释2){
if(PRICE == 0 || (PRICE < OrderOpenPrice() && OrderOpenPrice() < OnumberBp()))
{
PRICE = OrderOpenPrice();
}
}
}
}
}
}
return(PRICE);
}
分别为,计算多头最高价订单,多头最高价,多头次高价订单,多头次高价
现在就出现一个问题,要么计算的最高价订单,最高价,与次高价订单,以及次高价是同一个
要不又跳转成 OrderComment() 不是注释1 与注释2中的任意一个,而把其他的注释的计算进来了