[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 909

 
请告知是否有一个指标可以显示未结头寸 的总数量,因为当有很多不同的订单未结时,可能懒得计算。 谢谢。
 

我需要帮助。我有一个教程中的专家顾问,但它只适用于一个市场订单,我想让它适用于几个市场订单,只是在不同的金融工具上进行交易,同时对它们进行开仓和平仓。下面我抛出了一个例子,但在第一个订单的价值被分配到会计订单的变量上时,我放慢了速度。我怎样才能对第二个订单(来自另一个货币对)做同样的事情? 如果我想不仅是一个订单对这些货币对起作用,而且,例如,在一天中,指标显示有几个开盘,但还没有关闭,3或5个订单在这两个货币对上开盘。请告知如何实现这一点。


// 订单数 Symb1=SymbolN1(外部变量); // 金融工具的名称。Symb2=SymbolN2(外部变量); // 金融工具的名称。Total=0; //


订单数量
for(int i=1; i<=OrdersTotal(); i++) // 订单循环 { if (OrderSelect(i-1,SELECT_BY_POS)==true) // 如果以下 { // 订单分析: if (OrderSymbol()!=Symb1 $$ OrderSymbol()!=Symb2)continue; // 不是我们的金融工具 if (OrderType()>1) // 挂单被抓 { Alert("Pending order detected. Expert Advisor not working."); return; // Exit start() } Total++; // 市场计数器。订单 if (Total>2) // 不超过两个订单 { Alert("超过2个市场订单。 Expert Advisor不工作。"); return; // Exit start() } 下面这个值被设置为变量,要在第二次迭代时做一些事情,因为会有2个订单(第二个是另一个货币对)他们会改变第二个订单的值,但我需要提交第一个和第二个订单的信息。 Ticket=OrderTicket(); // 所选订单的编号。Tip =OrderType(); // 所选订单的类型。Price =OrderOpenPrice(); // 所选订单的价格。SL =OrderStopLoss(); //选定订单的SL。TP =OrderTakeProfit(); // 所选订单的TP。Lot =OrderLots(); // 手数 我们能不能对第二个订单使用同样的变量,只是前缀为1?Ticket1=OrderTicket(); // 所选订单的编号。Tip1 =OrderType(); // 所选订单的类型。Price1 =OrderOpenPrice(); // 所选订单的价格。SL1 =OrderStopLoss(); //选定订单的SL。TP1 =OrderTakeProfit(); // 所选订单的TP。Lot1 =OrderLots(); // Lot的数量 } }






























 
artmedia70:

ERR_LONGS_NOT_ALLOWED4110 不允许做多头。必须检查专家属性。

ERR_SHORTS_NOT_ALLOWED4111 不允许做空头。必须检查专家属性。


你说的多头和空头是什么意思,它们是什么样子的?
 
artmedia70:

大致正确的思维。

这些绝大部分都是bool类型的变量。

而且它只能有两个值。

(true)和(false)。

因此,如果该标志被设置(值为),就意味着 一个订单,如果它被清除(值为),就意味着没有 订单。

true和 false 并不一定意味着存在/不存在

有时false 表示 条件存在,而true表示 没有 条件存在。

这完全取决于程序的逻辑和程序员检查的标准。

在任何情况下,如果你自己设置这些标志,你可以指定哪个标志值(真或假)。

将对应于一个或另一个数据状态。

同时,还有一些标准函数,根据函数的结果返回真或假。

这些值可以在函数参考中找到。

Artyom,谢谢你。
 
gheka:

长和短是什么意思? 它们看起来像什么?

长=长=买

空头=空头=卖出


 

谢谢你

 

我在寻找一个脚本,只有当条形图高于或低于指定水平时才关闭订单。

当然,应该有一个tf设置。

.如果有,请给我一个链接。预先感谢

 

我有买入 和卖出的订单,几乎50-100个头寸都以相同的价格打开。

如果我没有弄错的话,我应该如何使一个订单开放, - OrdersTotal()

如果是这样,我应该如何使用它,应该把它放在哪里? 我觉得如果没有这个功能,我需要输入整个代数

 
gheka:

我有买入和卖出的订单,几乎50-100个头寸都以相同的价格打开。

如果我没有弄错的话,我应该如何使一个订单开放, - OrdersTotal()

如果是这样,我应该如何使用它,应该把它放在哪里? 我觉得如果没有这个功能,我需要输入整个代数


你应该附上你自己的代码。
 
gheka:

我有买入和卖出的订单,几乎50-100个头寸都以相同的价格打开。

如果我没有弄错的话,我应该如何使一个订单开放, - OrdersTotal()

如果是这样,我应该如何使用它,我应该把它放在哪里?

OrderSend()函数对每个tick都 有效(我想是的)。为了解决这个问题,你需要在启动函数之前创建一个变量,例如int H=0

进一步的代码。

..........

如果 ( H==0)

{

OrderSend(blah blah blah)。

}

H=1;

而且不需要代数。而OrdersTotal() 最好不要用于约束。

原因: