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

 

我坐在这里,不大明白如何实现这个算法。

也许有人可以帮忙。

1.找到一天的开始(我做了这个)。

2.找到一天中的最大值(我做了这个)

3.我需要弄清楚在MA从上到下交叉后的第一个分形 后的条形,在那个最大值之后


我把这个数字附在后面。


 
komposter >> :

与其说是iRSI,不如说是iCCI。

YEPRST......,它完全不在视线范围内.....,谢谢你,我们会修复它。

 
luka >> :

我坐在这里,不大明白如何实现这个算法。

也许有人可以帮忙。

3.你需要计算在这个最大值之后,从上到下越过MA之后的第一个分形 的条形。

"计算一下后面的酒吧......"

简单地写:"我想知道在我打开电脑后,价格会去哪里......" :-)))))

 
mukata >> :

"计算一下后面的酒吧......"

简单地写:"我想知道在我打开电脑后,价格会去哪里......" :-)))))


你不明白。

这些条形图已经在图表上了。或者说,这是当前的条形图。而如果它符合条件--它就是你要找的酒吧。

这首先是。

其次,如果你不明白我们在说什么,又何必去说那些废话呢?

 
Skydiver >> :

你可以试试这个

OrderSelect(1, SELECT_BY_POS)

if(OrderOpenTime()!=0)

{

///необходимая операция

}

但这只是在你只有1个订单的情况下才有的选择!

所以我们只是检查订单是否在等待中?


这个想法是这样的:随着一个订单的停止,例如在买入时,有三个待定订单被设置为

我想要一个条件,即这3个待定订单中的一个成为正常的 "工作订单"

 
luka >> :

你不明白。

这些条形图已经在图表上了。或者我们说这是当前的条形图。而如果它符合条件,就是你要找的酒吧。

这首先是。

其次,如果你不明白我们在说什么,为什么还要浪费你的时间?

"计算出第一条分形后 条形, 计算出第二条分形后的条形。"这意味着他们将遵循 它,而不是说他们 "已经存在于图表上"...

但如果 "而如果它符合条件--它就是你要找的酒吧"--那就是另一回事了。描述一下 "条件",有人会帮助你。

我对水灾表示歉意,它只是溜了出来。



 
mukata >> :

"计算出第一个分形之后 条形,..."如果他们跟随,这意味着他们会,而不是如果他们 "已经在图表上"...

但如果 "而如果它符合条件--它就是你要找的那个酒吧"--那就是另一回事了。描述一下 "条件",有人会帮助你。

对不起,洪水泛滥,它只是滑落。



哦,我正是这样写的。

我不会以寻找我不知道的东西为目标,不知道在哪里或如何。

我对已经存在的具体酒吧感兴趣。更确切地说--他们的转变。

顺便说一下,我已经实施了,事实证明这并不难 :)

 
fima_ >> :

所以我们只是检查订单是否在等待中?


这个想法是这样的:当你停止一个订单时,例如在买入时,会设置三个待定订单

我想要一个条件,即这3个挂单中的一个成为一个正常的 "工作单"。

那么你有3个挂单,如果至少有一个触发了,那么就会设定一些条件?

如果是,那么就像这样

for(int cnt=0;cnt<OrdersTotal();cnt++) // последовательно проверяем все ордера

{

OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0) ///время не равно 0 значит отложка сработала(или как писал Roger if(OrderType()<2) )
{
///необходимая операция
}
}

还是你有1个未结订单+3个挂单?

那么你可以试试这种方式

//в глобальных переменных

int tick[3];

//в функции start

//cначало записываем номера тикетов отложек в переменные

for(int cnt=0;cnt<OrdersTotal();cnt++) // последовательно проверяем все ордера

{

OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0)

{

tick[cnt]=OrderTicket();

}

}

//а далее проверяем выполнился ли отложенный ордер


for(int cnt=0;cnt<OrdersTotal();cnt++)

{

OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0)

{

for(int cnt2=0;cnt2<3;cnt++)

if(tick[cnt]==OrderTicket())

{

//необходимое условие

}

}

或对所有订单使用一个特定的魔法,如果有这个魔法的挂单,你需要像这样使用它。

в глоб перем

int mag=12345;

в ф start

/// При открытии отложки укажите ему в качестве магика mag

///ну а далее идет поиск "бывшей" отложки по Magic

for(int cnt=0;cnt<OrdersTotal();cnt++)

{

OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0&&OrderMagic()==Mag)

{

///необходимая операция

}

}

我还没有检查代码中可能存在的错误!

 
OrderSelect(0,SELECT_BY_POS)函数返回哪个顺序? 哪个先打开?订单不能调换?(我不使用挂单)
 
AndreyK писал(а)>>
OrderSelect(0,SELECT_BY_POS)函数会返回哪个顺序?哪一个先被打开了?订单能不能不被调换?(我不使用挂单)

对,哪一个是最早的。如果你确定你原则上只能有一个订单开仓,这很方便,你可以避免超额交易。订单不是互换的,而是在较早的订单关闭后转移到最小的订单。