[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 895 1...888889890891892893894895896897898899900901902...1145 新评论 Artyom Trishkin 2010.10.08 17:34 #8941 belck: 我告诉你不要太在意,我们不是来打架的。我也不喜欢有人拒绝帮助--也就是说,它为我决定,我需要建议或需要读一本书。就像他们说的那样--聪明! 再一次,各位,请不要咄咄逼人,否则这是我的要求还是矛盾的,如果是这样,那我就不写了。 没有人有权禁止你写信和提问......。但是,读一读你们中的许多人的出发点是很有用的。我们也问问题,但是,IMHO,相当不同的问题...... 你没有被拒绝帮助--你得到的是一个知识来源。SC书中有什么不能帮助你的??????????????? 你不喜欢伊戈尔-金的全面工作特点是什么?????????? 首先我给了你一个伊戈尔主题的链接--要么接受,要么离开......使用它,把它插入你的代码中。你可以从他们那里组装,就像从砖头,YUMO不同的完全工作的专家顾问。 你已经开始用它们做什么了? 你的下一个帖子是一个完全无法理解的构造.........堆积如山的代码,其中iniit、start和deinit以及所有的函数几乎都是用一行写的... 我建议你熟悉模块化编程,给了你一个教程的链接...... !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!你在回复中要求我把这个教程贴在这里(!),在这个主题中!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!。 WHY???????????????????? 你面前有大量不同的教程...。 但是,按照你的说法,每个人都应该紧急放下他们正在做的事情,排队等待你的问题的答案。而事实上,答案就在你的眼前 alexalex 2010.10.08 17:34 #8942 谢谢你。 [删除] 2010.10.08 18:07 #8943 artmedia70: 没有人有权利禁止你写信问...但值得一读的是,你们中的许多人都是从什么开始的。我们也问问题,但是,IMHO,相当不同的问题...... 你没有被拒绝帮助--你得到的是一个知识来源。为什么SC的书不能帮助你???????????????答案是帮助!!!。 你不喜欢伊戈尔-金的全面工作职能??????????。答案是,把它们放在一起并全部看完需要很长的时间。 首先我给了你一个伊戈尔主题的链接--要么接受,要么离开......使用它,把它粘贴到你的代码中。你可以从他们那里组装,就像从砖头,各种完全工作的专家顾问的UYMU。 你已经开始用它们做什么了? 你的下一个帖子是一个完全不可理解的设计,...堆积如山的代码,其中iniit、start和deinit以及所有的函数几乎都是用一行写的...... 我建议你熟悉模块化编程,并给了你一个教程的链接......答案是--我读过了,但没有完全理解。 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!你的回答是让我在这里(!)将这个教程发布在这个主题中!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!。 WHY????????????????????你为什么这么想!? 你面前有大量不同的教程...。答案是你的。 但是,在你看来,每个人都应该紧急放弃他们的案件,排队等待你的问题的答案。答案--全靠你 而答案,事实上,就在你身上 答案--再次,在你眼前 Vladimir Pastushak 2010.10.08 18:18 #8944 artmedia70: 你从票面上选择一个位置。但你没有检查它到底是在哪里。该位置可以在已经关闭的。 bool OrderSelect(int index,int select,int pool=MODE_TRADES) 该功能选择一个订单进行进一步操作。如果函数成功完成,返回TRUE。如果函数失败,返回FALSE。调用GetLastError()函数,以获得有关错误的信息。 如果订单是由票号选择的,则池子 参数被忽略。票号是订单的唯一标识符。为了确定从哪个列表中选择一个订单,必须分析其关闭时间。如果订单的关闭时间是0,那么该订单是开放的或待定的,并从终端的开放位置列表中取出。未结头寸可以通过其类型 与挂单区分开来。如果收盘时间 不等于0,那么该订单已关闭 或待定,并已从终端的历史记录中选择。已关闭的订单和已删除的待处理订单之间的区别也可以通过订单 类型来实现。 4051的错误信息说,功能不正确 !!!!! int total=OrdersTotal()。 int n=0。 for (int i=total-1; i>=0; i--) { 如果(OrderSelect(i, SELECT_BY_POS)) { 如果(OrderSymbol()==Symbol()) n++; } } 如果(total == 1) { for (int k=total-1; k>=0; k--) { 如果(OrderSelect(k,SELECT_BY_POS, MODE_TRADES)) { //Alert("order is", k)。 如果((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderStopLoss()==0))。 { OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue)。 Alert("error", GetLastError())。 } } } }} return(0); 如果不解决这个问题,我很快就会白发人送黑发人。 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 [WARNING CLOSED!] Any newbie Basic questions ... Artyom Trishkin 2010.10.08 18:31 #8945 VOLDEMAR: 错误4051是用一个无效的函数写入的!!!!!。 int total=OrdersTotal()。 int n=0。 for (int i=total-1; i>=0; i--) { 如果(OrderSelect(i, SELECT_BY_POS)) { 如果(OrderSymbol()==Symbol()) n++; } } 如果(total == 1) { for (int k=total-1; k>=0; k--) { 如果(OrderSelect(k,SELECT_BY_POS, MODE_TRADES)) { //Alert("order is", k)。 如果((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderStopLoss()==0))。 { OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue)。 Alert("error", GetLastError())。 } } } }} return(0); 如果不解决这个问题,我很快就会白发人送黑发人。 错误的函数值 4051 无效的函数参数值 lagriv 2010.10.08 18:36 #8946 artmedia70: 你会有很多这样的机会 :) 非常感谢你,我没有猜到要在常数中寻找。 Igor Makanu 2010.10.08 18:37 #8947 VOLDEMAR: 错误 4051 错误的功能 !!!!! 为什么 如果(total == 1) { for (int k=total-1; k>=0; k--) { ???? 我没有看到任何逻辑--条件内的循环并不总是有效的 Artyom Trishkin 2010.10.08 18:43 #8948 VOLDEMAR:错误 4051 错误的功能 !!!!!int total=OrdersTotal(); int n=0; for (int i=total-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS) ) { if(OrderSymbol()==Symbol()) n++; } } if(total == 1) { for(int k=total-1; k>=0; k--) { if(OrderSelect(k,SELECT_BY_POS, MODE_TRADES) ) { //Alert("order exists", k); if ((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderStopLoss()==0) { OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue); Alert("error " , GetLastError()); } } } }return(0);如果我不解决这个问题,我就会变得灰暗和死亡。你在变量k中有位置号,你需要将订单TICKET 作为第一个参数传递给OrderModify()函数。 在修改之前,先取位置的票,例如,int ticket = OrderTicket(); 并传递ticket而不是k 像这样的地方。我把它写在膝盖上,没有检查任何东西--只是一个想法......。甚至没有进入你的代码。 int i, k, n=0, ticket=0, total=OrdersTotal(); for(i=total-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS)) { if(OrderSymbol()==Symbol()) n++; } } if (total == 1) { for (k=total-1; k>=0; k--) { if(OrderSelect(k,SELECT_BY_POS, MODE_TRADES)) { Alert("ордер есть ", k); if (OrderType()==OP_BUY && OrderTakeProfit()==0 && OrderStopLoss()==0) { ticket = OrderTicket(); OrderModify(ticket,OrderOpenPrice(),slb,tpb,0,Blue); Alert("ошибка ", GetLastError()); } } } } return(0); Artyom Trishkin 2010.10.08 19:50 #8949 IgorM:为什么 if (total == 1) { for (int k=total-1; k>=0; k-) { ???? 我看不出其中有什么逻辑--条件内的循环并不总是成立。伊戈尔,这里的意思并不清楚...... 如果订单 总数为1(总数==1),则从零(总数-1)到零的循环k>=0 你是否明白什么?????我也是...:)) [删除] 2010.10.09 09:26 #8950 你好。 我有个问题,我想这样获利。 double TakeProfit = ((LineIndicator - Ask)/2); // но мне нужно указать, что если эта цифра меньше допустимого значение, то выставляется автоматом минимальное допустимое значение, а это 10 пунктов. 这是第一点,但现在是另一点。 指标线在一段时间后改变了位置。我如何确保止盈 不改变,而保持与我打开时设置的相同? 1...888889890891892893894895896897898899900901902...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我告诉你不要太在意,我们不是来打架的。我也不喜欢有人拒绝帮助--也就是说,它为我决定,我需要建议或需要读一本书。就像他们说的那样--聪明!
再一次,各位,请不要咄咄逼人,否则这是我的要求还是矛盾的,如果是这样,那我就不写了。
没有人有权禁止你写信和提问......。但是,读一读你们中的许多人的出发点是很有用的。我们也问问题,但是,IMHO,相当不同的问题......
你没有被拒绝帮助--你得到的是一个知识来源。SC书中有什么不能帮助你的???????????????
你不喜欢伊戈尔-金的全面工作特点是什么??????????
首先我给了你一个伊戈尔主题的链接--要么接受,要么离开......使用它,把它插入你的代码中。你可以从他们那里组装,就像从砖头,YUMO不同的完全工作的专家顾问。
你已经开始用它们做什么了?
你的下一个帖子是一个完全无法理解的构造.........堆积如山的代码,其中iniit、start和deinit以及所有的函数几乎都是用一行写的...
我建议你熟悉模块化编程,给了你一个教程的链接......
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!你在回复中要求我把这个教程贴在这里(!),在这个主题中!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!。
WHY????????????????????

你面前有大量不同的教程...。
但是,按照你的说法,每个人都应该紧急放下他们正在做的事情,排队等待你的问题的答案。而事实上,答案就在你的眼前
谢谢你。
没有人有权利禁止你写信问...但值得一读的是,你们中的许多人都是从什么开始的。我们也问问题,但是,IMHO,相当不同的问题......
你没有被拒绝帮助--你得到的是一个知识来源。为什么SC的书不能帮助你???????????????答案是帮助!!!。
你不喜欢伊戈尔-金的全面工作职能??????????。答案是,把它们放在一起并全部看完需要很长的时间。
首先我给了你一个伊戈尔主题的链接--要么接受,要么离开......使用它,把它粘贴到你的代码中。你可以从他们那里组装,就像从砖头,各种完全工作的专家顾问的UYMU。
你已经开始用它们做什么了?
你的下一个帖子是一个完全不可理解的设计,...堆积如山的代码,其中iniit、start和deinit以及所有的函数几乎都是用一行写的......
我建议你熟悉模块化编程,并给了你一个教程的链接......答案是--我读过了,但没有完全理解。
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!你的回答是让我在这里(!)将这个教程发布在这个主题中!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!。
WHY????????????????????你为什么这么想!?
你面前有大量不同的教程...。答案是你的。
但是,在你看来,每个人都应该紧急放弃他们的案件,排队等待你的问题的答案。答案--全靠你 而答案,事实上,就在你身上 答案--再次,在你眼前
你从票面上选择一个位置。但你没有检查它到底是在哪里。该位置可以在已经关闭的。
bool OrderSelect(int index,int select,int pool=MODE_TRADES)
该功能选择一个订单进行进一步操作。如果函数成功完成,返回TRUE。如果函数失败,返回FALSE。调用GetLastError()函数,以获得有关错误的信息。
如果订单是由票号选择的,则池子 参数被忽略。票号是订单的唯一标识符。为了确定从哪个列表中选择一个订单,必须分析其关闭时间。如果订单的关闭时间是0,那么该订单是开放的或待定的,并从终端的开放位置列表中取出。未结头寸可以通过其类型 与挂单区分开来。如果收盘时间 不等于0,那么该订单已关闭 或待定,并已从终端的历史记录中选择。已关闭的订单和已删除的待处理订单之间的区别也可以通过订单 类型来实现。4051的错误信息说,功能不正确 !!!!!
int total=OrdersTotal()。
int n=0。
for (int i=total-1; i>=0; i--)
{
如果(OrderSelect(i, SELECT_BY_POS))
{
如果(OrderSymbol()==Symbol())
n++;
}
}
如果(total == 1)
{
for (int k=total-1; k>=0; k--)
{
如果(OrderSelect(k,SELECT_BY_POS, MODE_TRADES))
{
//Alert("order is", k)。
如果((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderStopLoss()==0))。
{
OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue)。
Alert("error", GetLastError())。
}
}
}
}}
return(0);
如果不解决这个问题,我很快就会白发人送黑发人。
错误4051是用一个无效的函数写入的!!!!!。
int total=OrdersTotal()。
int n=0。
for (int i=total-1; i>=0; i--)
{
如果(OrderSelect(i, SELECT_BY_POS))
{
如果(OrderSymbol()==Symbol())
n++;
}
}
如果(total == 1)
{
for (int k=total-1; k>=0; k--)
{
如果(OrderSelect(k,SELECT_BY_POS, MODE_TRADES))
{
//Alert("order is", k)。
如果((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderStopLoss()==0))。
{
OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue)。
Alert("error", GetLastError())。
}
}
}
}}
return(0);
如果不解决这个问题,我很快就会白发人送黑发人。
你会有很多这样的机会 :)
非常感谢你,我没有猜到要在常数中寻找。
错误 4051 错误的功能 !!!!!
为什么
如果(total == 1)
{
for (int k=total-1; k>=0; k--)
{
????
我没有看到任何逻辑--条件内的循环并不总是有效的
错误 4051 错误的功能 !!!!!
int total=OrdersTotal();
int n=0;
for (int i=total-1; i>=0; i--)
{
if(OrderSelect(i, SELECT_BY_POS) )
{
if(OrderSymbol()==Symbol())
n++;
}
}
if(total == 1)
{
for(int k=total-1; k>=0; k--)
{
if(OrderSelect(k,SELECT_BY_POS, MODE_TRADES) )
{
//Alert("order exists", k);
if ((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderStopLoss()==0)
{
OrderModify(k,OrderOpenPrice(),slb,tpb,0,Blue);
Alert("error " , GetLastError());
}
}
}
}
return(0);
如果我不解决这个问题,我就会变得灰暗和死亡。
你在变量k中有位置号,你需要将订单TICKET 作为第一个参数传递给OrderModify()函数。
在修改之前,先取位置的票,例如,int ticket = OrderTicket(); 并传递ticket而不是k
像这样的地方。我把它写在膝盖上,没有检查任何东西--只是一个想法......。甚至没有进入你的代码。
为什么
if (total == 1)
{
for (int k=total-1; k>=0; k-)
{
????
我看不出其中有什么逻辑--条件内的循环并不总是成立。
伊戈尔,这里的意思并不清楚......
如果订单 总数为1(总数==1),则从零(总数-1)到零的循环k>=0
你是否明白什么?????我也是...:))
你好。
我有个问题,我想这样获利。
double TakeProfit = ((LineIndicator - Ask)/2); // но мне нужно указать, что если эта цифра меньше допустимого значение, то выставляется автоматом минимальное допустимое
значение, а это 10 пунктов.
这是第一点,但现在是另一点。
指标线在一段时间后改变了位置。我如何确保止盈 不改变,而保持与我打开时设置的相同?