如何创建一个神奇的数字阵列?

 

是否可以创建一个神奇的数字数组?

例如。我打算做5个订单,每个订单都有一个独特的魔法号码。

int ticket=OrderSend(Symbol(),OP_BUY,LotSize,MarketInfo(Symbol(),MODE_ASK),3,0,0,"My EA",12345,0,Green) 
而不是12345,也许OrderMagic [x][0]为每个新的订单做?如何做到这一点?

然后,当关闭时,我将通过每一个订单,用其独特的魔法号码关闭特定的订单?

for (int i=0; i<OrdersTotal(); i+=1)
{
           if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) 
           {
                     if (OrderType()==OP_BUY && OrderSymbol()==Symbol() && OrderMagicNumber() == 12345)

而不是12345,我如何通过阵列中的每一个独特的魔法号码?

谢谢你。

 

是否可以创建一个神奇的数字阵列?

是的

例如:我准备做5个订单,每个订单都有一个独特的数字。我准备做5个订单,每个订单都有一个独特的魔法号码。

int magicArray = { 1, 3, 5, 7, 9 };

if(OrderMagicNumber() == magicArray[3]) { // 本例中指的是7

 
phy:

是否可以创建一个神奇的数字阵列?

是的

例如:我准备做5个订单,每个订单都有一个独特的数字。我准备做5个订单,每个订单都有一个独特的魔法号码。

int magicArray = { 1, 3, 5, 7, 9 };

if(OrderMagicNumber() == magicArray[3]) { // 本例中指的是7


谢谢!

我如何用唯一的魔法号码数组来发送每个新订单?magicArray[x]而不是12345,这样能行吗?

OrderSend是在一个函数 中,而不是在一个循环中。它如何知道如何为每个新订单分配新的魔法号码。难道只是在OrderSend后面加上x++?

我需要初始化一个全局数组吗?

如何做一个动态数组,因为我不知道最终会有多少个订单?

int  magicArray[x];

...
int ticket=OrderSend(Symbol(),OP_BUY,LotSize,MarketInfo(Symbol(),MODE_ASK),3,0,0,"My EA",magicArray[x],0,Green);
x++;
 

为什么你首先要给每个订单分配一个不同的魔法号码?魔法号码是为了将属于同一类别的交易分组,整个要点是,你将有一个魔法用于许多交易(属于同一类别)。

你不应该把它们用在它们不应该用的地方。其他EA用它们来识别自己的交易。我们最近有一个主题,一个EA的作者试图变得超级聪明,滥用魔法来进行某种反击,开始干扰其他EA的交易,仅在一个晚上就给购买这个EA的无辜受害者带来了5000美元的损失,因为他在同一交易中进入了开平仓-开平仓-"战斗"。该EA确实悄悄地开始改变其分配的魔法数字,没有明显的原因,也没有通知,直到冲突发生。一个神奇的数字应该是保持不变的!

如果你需要一个独特的号码用于*每个*交易,那么就使用票据号码。

 
7bit:

为什么你首先要给每个订单分配一个不同的魔法号码?魔法号码是为了将属于同一类别的交易分组,整个要点是,你将有一个魔法用于许多交易(属于同一类别)。

你不应该把它们用在它们不应该用的地方。其他EA用它们来识别自己的交易。我们最近有一个主题,一个EA的作者试图变得超级聪明,滥用魔法来进行某种反击,开始干扰其他EA的交易,仅在一个晚上就给购买这个EA的无辜受害者带来了5000美元的损失,因为他在同一交易中进入了开平仓-开平仓-"战斗"。该EA确实悄悄地开始改变其分配的魔法数字,没有明显的原因,也没有通知,直到冲突发生。一个神奇的数字应该是保持不变的!

如果你需要一个独特的号码用于*每个*交易,那么就使用票据号码。



谢谢,确切地说,我需要将属于我的订单分组。

int ticket=OrderSend(Symbol(),OP_BUY,LotSize,MarketInfo(Symbol(),MODE_ASK),3,0,0,"My EA",12345,0,Green)
&   ticket=OrderSend(Symbol(),OP_BUY,LotSize,MarketInfo(Symbol(),MODE_ASK),3,0,0,"My EA",12345,0,Green);
我是以2对开仓的,我想先开2对然后再关2对。有一个独特的神奇数字可以帮助我打开和关闭相关的2对。我不希望关闭错误的一对。
 
想法:你可以像往常一样始终使用相同的魔法数字,使其与其他所有使用魔法数字的交易兼容,但也可以通过在评论中加入每个交易对独有的数字,将其与评论字符串相结合。然后,你可以通过简单地寻找具有相同魔法 注释的交易来找到每对交易中的另一个交易。
 
7bit:
想法:你可以像往常一样使用相同的魔法数字,使其与其他使用魔法数字的东西兼容,但也可以将其与评论字符串结合起来,在评论中包含一个对每对交易都是唯一的数字。然后,你可以通过简单地寻找具有相同魔法 注释的交易来找到每对交易中的另一个交易。

谢谢!

基本上,我需要为每份订单(每份2对)设置一个独特的标签,以便我可以同时关闭它们。

我不希望关闭错误的一对。

如果没有神奇的数字,我怎样才能为每个订单添加这个独特的注释?

我需要某种动态数组吗?

 

你可以使用许多组合

例如,如果你在不同的分钟内打开它们,你可以使用

OrderMagicNumber() == Minute();

如果你在不同的小时内打开它们,你可以使用

OrderMagicNumber() == Hour();

或者如果你在不同的时间打开它们,你可以使用

OrderMagicNumber() == Period();
 
qjol:

你可以使用许多组合

例如,如果你在不同的分钟内打开它们,你可以使用

如果你在不同的小时内打开它们,你可以使用

或者如果你在不同的时间打开它们,你可以使用

请不要推荐这种无稽之谈 神奇的数字不是用来存储已经包含在订单本身的值。
 
qjol:

你可以使用许多组合

例如,如果你在不同的分钟内打开它们,你可以使用

如果你在不同的小时内打开它们,你可以使用

或者如果你在不同的时间打开它们,你可以使用



谢谢!但如果我在同一分钟或同时间段内有订单,它可能会关闭错误的订单。我需要独特的标签,如神奇的数字。

我需要知道如何给每个新的订单分配一个新的神奇数字,然后比较所有的订单,在关闭时找到它们。

 
请大致描述一下你的EA将做什么。有多少种不同类型的订单 需要单独 管理。如果我们知道你究竟想达到什么目的,也许你的问题根本就不是问题。