我怎样才能获得订单打开后的最高价。 - 页 2 123456 新评论 Simon Gniadkowski 2011.09.18 10:07 #11 开始学习代码吧,不要再敲打你的主题了。 [删除] 2011.09.18 16:35 #12 我需要一点帮助,然后一切都会好起来的。(我需要知道买入的最新订单,卖出的最新订单和任何买入或卖出的前一个订单)。 谢谢你的帮助。 int LastOpenTicketForBuy(){ datetime lastTime = 0; int lastTicket = -1; // None open. int magi.number=0; //for(int pos=0; pos<OrdersTotal(); i++) { OrderSelect(pos, SELECT_BY_POS); for(int pos = OrdersTotal()-1; pos >= 0 ; pos--) if ( OrderSelect(pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber() == magic.number // my magic number && OrderSymbol() == Symbol() // and my pair. && OrderOpenTime() > lastTime && OrderType()==OP_BUY ){ lastTime = OrderOpenTime(); lastTicket = OrderTicket(); } return(lastTicket); } int LastOpenTicketForSell(){ datetime lastTime = 0; int lastTicket = -1; // None open. int magi.number=0; for(int pos = OrdersTotal()-1; pos >= 0 ; pos--) if ( OrderSelect(pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber() == magic.number // my magic number && OrderSymbol() == Symbol() // and my pair. && OrderOpenTime() > lastTime && OrderType()==OP_SELL ){ lastTime = OrderOpenTime(); lastTicket = OrderTicket(); } return(lastTicket); } int previousorderforbuy(){ datetime lastTime = 0; int lastTicket = -1; // None open. int magi.number=0; for(int pos--; pos >= 0 ; pos--) if ( OrderSelect(pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber() == magic.number // my magic number && OrderSymbol() == Symbol() // and my pair. && OrderOpenTime() > lastTime && OrderType()==OP_BUY ){ lastTime = OrderOpenTime(); lastTicket = OrderTicket(); } return(lastTicket); } int previousorderforsell(){ datetime lastTime = 0; int lastTicket = -1; // None open. int magi.number=0; for(int pos--; pos >= 0 ; pos--) if ( OrderSelect(pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber() == magic.number // my magic number && OrderSymbol() == Symbol() // and my pair. && OrderOpenTime() > lastTime && OrderType()==OP_SELL ){ lastTime = OrderOpenTime(); lastTicket = OrderTicket(); } return(lastTicket); } [删除] 2011.09.20 14:40 #13 伙伴们。 你能不能看一下并告诉我什么是错的。 我需要创建一些函数。 1- 获取并保持最后一个买入 订单的开盘价 的函数。 2- 获取并保持最后卖出 订单的开盘价的函数。 3- 函数获取并保留最后的收盘价,不管是买还是卖。 int LastOpenTicketForBuy(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderType ()==OP_BUY ) { lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket);} int LastOpenTicketForSell() { datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderType ()==OP_SELL ) { lastTime = OrderOpenTime (); lastTicket = OrderTicket (); } return (lastTicket);} int lastcloseorder() { datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderCloseTime () > lastTime && OrderType ()==OP_BUY||OP_SELL ) { lastTime = OrderCloseTime (); lastTicket = OrderTicket (); } return (lastTicket);} 然后我将把如果((LastOpenTicketForBuy()+LastOpenTi cketForSell())/2)<MarketInfo("EURUSD",MODE_BID)Clo se the position Simon Gniadkowski 2011.09.20 14:51 #14 在你看来 ......return (lastTicket);的作用是什么? [删除] 2011.09.20 18:07 #15 你是说我应该 1-将双倍的LastOpenForBuy()改为int 2-输入双倍的orderforbuy然后返回( orderforbuy ) 通过这种方式,我可以得到只为买入而打开的最后一个订单。 double LastOpenForBuy(){ datetime lastTime = 0 ; int lastTicket = - 1 ; // None open. int magi.number= 0 ; double orderforbuy; for ( int pos = OrdersTotal ()- 1 ; pos >= 0 ; pos--) if ( OrderSelect (pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber () == magic.number // my magic number && OrderSymbol () == Symbol () // and my pair. && OrderType ()==OP_BUY ) { orderforbuy = OrderOpenprice (); lastTicket = OrderTicket (); } return (orderforbuy);} Simon Gniadkowski 2011.09.20 18:18 #16 Hand: 你的意思是我应该 这是个问题 . .我没有别的意思,就是......你的答案是什么? 如果你想让我帮忙,你需要回答我的问题......而 "我不知道 "不是一个可接受的答案。 想一想吧。 [删除] 2011.09.21 02:32 #17 在你看来 ......return(lastTicket); 的作用是什么? 返回当前选择的订单 的票号。 blackmore 2011.09.21 02:59 #18 Hand: 谢谢WHRoeder。 如果我需要获得买入的最后一笔订单和卖出的最后一笔订单,然后通过以下方式进行比较。 如果( 最后一笔买入订单 == OOTlastest ) { 做一些事情 } 否则 { }.......,下面的代码将工作。 这真的有用吗? 第一环 for(int pos = OrdersTotal()-1; pos >= 0 ; pos--) if ( 进入第二个循环 for(pos--; pos >= 0 ; pos--) if ( pos递减到0。第二个循环结束-->跳回第一个循环,第一个循环不知道pos在上一次离开后的位置,有可能pos=0。 blackmore 2011.09.21 03:15 #19 这段代码可能会起作用......只是需要改变一件事。 第二个for语句 for(pos--; pos >= 0 ; pos--) if ( 改为一个不同的迭代器,比如 for(int a=pos--; a>=0 ; a--) if(// abort the use of pos again and introduce a new iterator, a 同样地,在所有的第二个循环逻辑中,只需将pos替换为新的迭代器(在本例中为a)。 Simon Gniadkowski 2011.09.21 07:46 #20 Hand: 在你看来 ......return(lastTicket); 的作用是什么? 返回当前选择的订单的票号。 你说 ... "我需要创建一些函数,用于。 1- 获取并保持买入 最后一个订单的开盘价 的函数。 2- 获取并保持最后一个卖出 订单的价格的函数。 3- 功能是获取并保留最后的平仓单,不管是买还是卖" 那么你为什么要返回票号? 阅读你复制和粘贴的代码,理解它,学习 ...... 123456 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我需要一点帮助,然后一切都会好起来的。(我需要知道买入的最新订单,卖出的最新订单和任何买入或卖出的前一个订单)。
谢谢你的帮助。
伙伴们。
你能不能看一下并告诉我什么是错的。
我需要创建一些函数。
1- 获取并保持最后一个买入 订单的开盘价 的函数。
2- 获取并保持最后卖出 订单的开盘价的函数。
3- 函数获取并保留最后的收盘价,不管是买还是卖。
然后我将把如果((LastOpenTicketForBuy()+LastOpenTi cketForSell())/2)<MarketInfo("EURUSD",MODE_BID)Clo se the position
你是说我应该
1-将双倍的LastOpenForBuy()改为int
2-输入双倍的orderforbuy然后返回( orderforbuy )
通过这种方式,我可以得到只为买入而打开的最后一个订单。
你的意思是我应该
这是个问题 . .我没有别的意思,就是......你的答案是什么?
如果你想让我帮忙,你需要回答我的问题......而 "我不知道 "不是一个可接受的答案。 想一想吧。
在你看来 ......return(lastTicket); 的作用是什么?
返回当前选择的订单 的票号。
谢谢WHRoeder。
如果我需要获得买入的最后一笔订单和卖出的最后一笔订单,然后通过以下方式进行比较。
如果( 最后一笔买入订单 == OOTlastest )
{ 做一些事情 }
否则
{ }.......,下面的代码将工作。
这真的有用吗?
第一环
进入第二个循环
pos递减到0。第二个循环结束-->跳回第一个循环,第一个循环不知道pos在上一次离开后的位置,有可能pos=0。
这段代码可能会起作用......只是需要改变一件事。
第二个for语句
改为一个不同的迭代器,比如
同样地,在所有的第二个循环逻辑中,只需将pos替换为新的迭代器(在本例中为a)。
在你看来 ......return(lastTicket); 的作用是什么?
返回当前选择的订单的票号。
你说 ...
"我需要创建一些函数,用于。1- 获取并保持买入 最后一个订单的开盘价 的函数。
2- 获取并保持最后一个卖出 订单的价格的函数。
3- 功能是获取并保留最后的平仓单,不管是买还是卖"
那么你为什么要返回票号? 阅读你复制和粘贴的代码,理解它,学习 ......