[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 620 1...613614615616617618619620621622623624625626627...631 新评论 [Deleted] 2012.12.11 11:50 #6191 lottamer: 是的,这就是我所熟知的这一点...请写一篇文章,要求从历史上的最后一周的票据......我将从中抓住逻辑......int fLastClosetPoz(){int Tot=OrdersHistoryTotal(), Ticket=-1; datetime time=0;如果(Tot>0){for(int i=0;i<OrdersHistoryTotal();i++){如果(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==true){如果(OrderSymbol()==Symbol()){如果(OrderCloseTime()>time){time=OrderCloseTime();Ticket=OrderTicket()。}}}否则继续。}}return(Ticket)。} [Deleted] 2012.12.11 12:07 #6192 lottamer:雾霾!!!。这个 -----------------------------------------------------------------------------pp_sell=(-(PriceOpenLastClosePos()-PriceCloseLastPos())*100000); //适用于欧元维度的货币打印(pp_sell)。------------------------------------------------------------------------------------打印-10,应该是这样的,因为最后一笔卖出交易的利润是10。但如果你在打印和变量之间插入几个不确定的时间,比如说----------------------------------------------------------------------------pp_sell=(-(PriceOpenLastClosePos()-PriceCloseLastPos())*100000); //适用于欧元维度的货币if ( Hour()>=10 && Hour()<20){如果 ( Stoch_1>Stoch_2) 返回(0)。否则 {如果(OrdersTotal()==0){ PlaySound("ok.wav");if ( GetTypeLastClosePos()==1) 打印(pp_sell)。}Print("___")。}}return(0);}------------------------------------------------------------------------------------它可以工作,但打印出-9 !!!! 秘密是什么? 在这种情况下,计算的不准确性不断积累,最终可能变得很重要。 你认为你插入了没有变化的条件,实际上你迫使计算机进行不必要的计算,你的条件没有变化。你确定PriceOpenLastClosePos()和PriceCloseLastPos()是在为同一个位置设置数值? elllfix 2012.12.11 12:21 #6193 rigonich: int fLastClosetPoz(){int Tot=OrdersHistoryTotal(), Ticket=-1; datetime time=0;如果(Tot>0){for(int i=0;i<OrdersHistoryTotal();i++){如果(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==true){如果(OrderSymbol()==Symbol()){如果(OrderCloseTime()>time){time=OrderCloseTime();Ticket=OrderTicket()。}}}否则继续。}}return(Ticket)。} 以if(OrderCloseTime()>time) 开始...那么就不清楚它是从哪里来的......嗯,算了......。它打印了一张票,但只有最后一张。如何处理倒数第二张票呢? 我实在看不出第二张票是怎么印出来的?首先,我只写了Print LastClosetPoz()。采取第二(一)?OrderSelect(2,SELECT_BY_POS,MODE_HISTORY)....?Print LastClosetPoz(2) ? ? 明显的错误,但会是符合逻辑的:))我尝试在Ticket=OrderTicket();行中放入平仓的其他参数( 止损头寸的 平仓价格),而不是OrderTicket,但没有效果。 elllfix 2012.12.11 12:26 #6194 rigonich: 你正在处理像双倍数这样的非标准化 数值。 在这种情况下,计算的不精确性会累积起来,最终可能会变得很重要。 一台计算机在4行中积累了多达10%的错误,这不是很肥吗?:)))))))))))(在大量的不到10%的情况下)1)如果已关闭的订单是固定的,并且其所有参数 "不浮动",那么还有什么可以保存? 2)这些条件与输出参数的计算没有任何关系。他们只是一个障碍--放行--不放行......。3)那为什么结果不是在一个EA的工作范围内浮动,而是从一个EA浮动到另一个? [Deleted] 2012.12.11 12:50 #6195 lottamer: 以if(OrderCloseTime()>time) 开始...那么就不清楚它是从哪里来的了......不过还好......。它打印了一张票,但只有最后一张。我只是不知道如何用第二张票来做这件事?采取第2(i)?OrderSelect(2,SELECT_BY_POS,MODE_HISTORY)....?1.请用历史上的门票要求写一篇文章。- 你的问题。为了找到倒数第二张,我们必须记住最近一张的票(例如在变量A中),然后需要再运行一次循环,并 "跳过 "这个顺序,即,例如,改变行if(OrderSymbol()==Symbol())改为if(OrderSymbol()==Symbol()&& OrderTicket()!=A),或者添加一行if(Ticket()!=A)继续。我已经解释过,订单指数并不总是与账户中已关闭的订单一致,因为市场订单 和挂单 被一起考虑,而后者没有收盘价,这就是为什么所有的订单被循环查找最后关闭的订单,并查看关闭时间最长的订单。 也就是说,最后关闭的订单可能有指数3,而最后但有指数-7。 elllfix 2012.12.11 13:01 #6196 rigonich:1.请写一篇文章,要求在故事的最后一周开票......- 你的问题。为了找到倒数第二张,我们应该记住最后一张票的票据(例如,在变量A中),然后我们应该再运行一次循环,"跳过 "这个顺序,即改变行if(OrderSymbol()==Symbol())改为if(OrderSymbol()==Symbol()&& OrderTicket()!=A),或者增加一行if(Ticket()!=A)继续。 领先的问题。what for(int i=0;i<OrdersHistoryTotal();i++)当我只需要两笔交易时,我们是否需要OrdersHistoryTotal()?这个怎么样or(int i=0;i<2;i++) ?(检查-票=-1....) nda.....tuman...:)) [Deleted] 2012.12.11 13:11 #6197 lottamer: 领先的问题。但为什么我们需要这一行 for(int i=0;i<OrdersHistoryTotal();i++)当我只需要两笔交易时,我们是否需要OrdersHistoryTotal()?这个怎么样or(int i=0;i<2;i++) ?(检查-票=-1....) nda.....tuman...:)) 我完成了前面的评论,见。另外,我给你写了一段代码,寻找当前工具的最后一笔平仓交易。 Alexey Oreshkin 2012.12.11 13:19 #6198 例如,如果我决定用C/C++编写一个机器人,请帮助我。写一个不是问题,但我如何将其与metatrader连接起来?如何获得报价,如何发回买入/卖出信号? [Deleted] 2012.12.11 13:28 #6199 Desead: 例如,如果我决定用C/C++编写一个机器人,请帮助我。写一个不是问题,但我如何将其与metatrader连接起来?如何获得报价,如何发回买入/卖出信号? 我不知道其他语言,但也许可以把你的代码写成DLL,然后就有可能从MQL程序中调用。 elllfix 2012.12.11 13:31 #6200 rigonich: 我已经完成了前面的评论,请看。 是的,我现在明白了为什么在循环中的时间和在General.... 的时间有一个比较。我也明白这个逻辑--标记 "A",然后排除 "A",但首先,在这个 "A "可以被钉住的地方的所有选项我都试过了--而且顾问仍然把最后一张票还给我,而不是倒数第二张。.我输入了2个循环(2个函数)--第一个是你的原文,第二个是除 "A "以外的。一个接一个地运行。打印0....----------------------------------------------------------------------------------------------------if ( Hour()>=10 && Hour()<20){LastClosetPoz();Sec_LastClosetPoz()。打印( ticket2,ticket)。}return(0);}//--------------------------------------------+int LastClosetPoz(){int Tot=OrdersHistoryTotal(), Ticket=-1; datetime time=0;如果(Tot>0){for(int i=0;i<OrdersHistoryTotal();i++){如果(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==true){如果(OrderSymbol()==Symbol()){如果(OrderCloseTime()>time){time=OrderCloseTime();Ticket=OrderTicket(); A=Ticket;}}}否则继续。}}return(Ticket)。}//--------------------------------------------int Sec_LastClosetPoz(){int Tott=OrdersHistoryTotal(),Ticket2=-1; datetime time2=0;如果(Tott>0){for(int i=0;i<OrdersHistoryTotal();i++){如果(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==true){如果(OrderSymbol()==Symbol()&&OrderTicket()!=A){如果(OrderCloseTime()>time2){time2=OrderCloseTime();Ticket2=OrderTicket()。}}}否则继续。}}return(Ticket2);} [ARCHIVE!] Any rookie question, 问吧! 如何编码? 1...613614615616617618619620621622623624625626627...631 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
是的,这就是我所熟知的这一点...
请写一篇文章,要求从历史上的最后一周的票据......我将从中抓住逻辑......
雾霾!!!。
这个
-----------------------------------------------------------------------------
pp_sell=(-(PriceOpenLastClosePos()-PriceCloseLastPos())*100000); //适用于欧元维度的货币
打印(pp_sell)。
------------------------------------------------------------------------------------
打印-10,应该是这样的,因为最后一笔卖出交易的利润是10。
但如果你在打印和变量之间插入几个不确定的时间,比如说
----------------------------------------------------------------------------
pp_sell=(-(PriceOpenLastClosePos()-PriceCloseLastPos())*100000); //适用于欧元维度的货币
if ( Hour()>=10 && Hour()<20)
{
如果 ( Stoch_1>Stoch_2) 返回(0)。
否则 {
如果(OrdersTotal()==0)
{ PlaySound("ok.wav");
if ( GetTypeLastClosePos()==1) 打印(pp_sell)。
}
Print("___")。
}
}
return(0);
}
------------------------------------------------------------------------------------
它可以工作,但打印出-9 !!!!
秘密是什么?
在这种情况下,计算的不准确性不断积累,最终可能变得很重要。 你认为你插入了没有变化的条件,实际上你迫使计算机进行不必要的计算,你的条件没有变化。
你确定PriceOpenLastClosePos()和PriceCloseLastPos()是在为同一个位置设置数值?
{
以if(OrderCloseTime()>time) 开始...那么就不清楚它是从哪里来的......嗯,算了......。
它打印了一张票,但只有最后一张。如何处理倒数第二张票呢? 我实在看不出第二张票是怎么印出来的?
首先,我只写了Print LastClosetPoz()。
采取第二(一)?OrderSelect(2,SELECT_BY_POS,MODE_HISTORY)....?
Print LastClosetPoz(2) ? ? 明显的错误,但会是符合逻辑的:))
我尝试在Ticket=OrderTicket();行中放入平仓的其他参数( 止损头寸的 平仓价格),而不是OrderTicket,但没有效果。
你正在处理像双倍数这样的非标准化 数值。 在这种情况下,计算的不精确性会累积起来,最终可能会变得很重要。
一台计算机在4行中积累了多达10%的错误,这不是很肥吗?:)))))))))))(在大量的不到10%的情况下)
1)如果已关闭的订单是固定的,并且其所有参数 "不浮动",那么还有什么可以保存?
2)这些条件与输出参数的计算没有任何关系。他们只是一个障碍--放行--不放行......。
3)那为什么结果不是在一个EA的工作范围内浮动,而是从一个EA浮动到另一个?
以if(OrderCloseTime()>time) 开始...那么就不清楚它是从哪里来的了......不过还好......。
它打印了一张票,但只有最后一张。我只是不知道如何用第二张票来做这件事?
采取第2(i)?OrderSelect(2,SELECT_BY_POS,MODE_HISTORY)....?
1.请用历史上的门票要求写一篇文章。- 你的问题。
为了找到倒数第二张,我们必须记住最近一张的票(例如在变量A中),然后需要再运行一次循环,并 "跳过 "这个顺序,即,例如,改变行
if(OrderSymbol()==Symbol())改为if(OrderSymbol()==Symbol()&& OrderTicket()!=A),或者添加一行if(Ticket()!=A)继续。
我已经解释过,订单指数并不总是与账户中已关闭的订单一致,因为市场订单 和挂单 被一起考虑,而后者没有收盘价,这就是为什么所有的订单被循环查找最后关闭的订单,并查看关闭时间最长的订单。 也就是说,最后关闭的订单可能有指数3,而最后但有指数-7。
1.请写一篇文章,要求在故事的最后一周开票......- 你的问题。
为了找到倒数第二张,我们应该记住最后一张票的票据(例如,在变量A中),然后我们应该再运行一次循环,"跳过 "这个顺序,即改变行
if(OrderSymbol()==Symbol())改为if(OrderSymbol()==Symbol()&& OrderTicket()!=A),或者增加一行if(Ticket()!=A)继续。
领先的问题。
what for(int i=0;i<OrdersHistoryTotal();i++)当我只需要两笔交易时,我们是否需要OrdersHistoryTotal()?
这个怎么样
or(int i=0;i<2;i++) ?(检查-票=-1....) nda.....tuman...:))
领先的问题。
但为什么我们需要这一行 for(int i=0;i<OrdersHistoryTotal();i++)当我只需要两笔交易时,我们是否需要OrdersHistoryTotal()?
这个怎么样
or(int i=0;i<2;i++) ?(检查-票=-1....) nda.....tuman...:))
我完成了前面的评论,见。另外,我给你写了一段代码,寻找当前工具的最后一笔平仓交易。
例如,如果我决定用C/C++编写一个机器人,请帮助我。写一个不是问题,但我如何将其与metatrader连接起来?如何获得报价,如何发回买入/卖出信号?
我不知道其他语言,但也许可以把你的代码写成DLL,然后就有可能从MQL程序中调用。
我已经完成了前面的评论,请看。
是的,我现在明白了为什么在循环中的时间和在General.... 的时间有一个比较。
我也明白这个逻辑--标记 "A",然后排除 "A",但首先,在这个 "A "可以被钉住的地方的所有选项我都试过了--而且顾问仍然把最后一张票还给我,而不是倒数第二张。
.
我输入了2个循环(2个函数)--第一个是你的原文,第二个是除 "A "以外的。一个接一个地运行。
打印0....
----------------------------------------------------------------------------------------------------
if ( Hour()>=10 && Hour()<20)
{
LastClosetPoz();Sec_LastClosetPoz()。
打印( ticket2,ticket)。
}
return(0);
}
//--------------------------------------------+
int LastClosetPoz()
{
int Tot=OrdersHistoryTotal(), Ticket=-1; datetime time=0;
如果(Tot>0)
{
for(int i=0;i<OrdersHistoryTotal();i++)
{
如果(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==true)
{
如果(OrderSymbol()==Symbol())
{
如果(OrderCloseTime()>time)
{
time=OrderCloseTime();Ticket=OrderTicket(); A=Ticket;
}
}
}
否则继续。
}
}
return(Ticket)。
}
//--------------------------------------------
int Sec_LastClosetPoz()
{
int Tott=OrdersHistoryTotal(),Ticket2=-1; datetime time2=0;
如果(Tott>0)
{
for(int i=0;i<OrdersHistoryTotal();i++)
{
如果(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==true)
{
如果(OrderSymbol()==Symbol()&&OrderTicket()!=A)
{
如果(OrderCloseTime()>time2)
{
time2=OrderCloseTime();Ticket2=OrderTicket()。
}
}
}
否则继续。
}
}
return(Ticket2);
}