//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 28.11.2006 |//| Описание : Удаление ордеров |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любой ордер) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+void DeleteOrders(string sy="", int op=-1, int mn=-1) {
bool fd;
int err, i, it, k=OrdersTotal(), ot;
if (sy=="0") sy=Symbol();
for (i=k-1; i>=0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
ot=OrderType();
if (ot>1 && ot<6) {
if ((OrderSymbol()==sy || sy=="") && (op<0 || ot==op)) {
if (mn<0 || OrderMagicNumber()==mn) {
for (it=1; it<=NumberOfTry; it++) {
if (!IsTesting() && (!IsExpertEnabled() || IsStopped())) break;
while (!IsTradeAllowed()) Sleep(5000);
fd=OrderDelete(OrderTicket(), clDelete);
if (fd) {
if (UseSound) PlaySound(SoundSuccess); break;
} else {
err=GetLastError();
if (UseSound) PlaySound(SoundError);
Print("Error(",err,") delete order ",GetNameOP(ot),": ",ErrorDescription(err),", try ",it);
Sleep(1000*5);
}
}
}
}
}
}
}
}
你可以这样做:Km=MathMax(i/r,Point); //用除法,它就不会是零了! 你可以这样做。
哇!!!头!非常感谢!经过极其繁琐的四个小时的工作,我终于找到了如何粘住这个功能,使测试者不骂人)出来,大约是这样的。
double a=iLowest(Symbol(),PERIOD_M1,MODE_LOW,m1,0); //返回n个周期的最小价格的柱状指数
double b=iHighest(Symbol(),PERIOD_M1,MODE_HIGH,m1,0); //返回最大价格的n个周期的条形索引。
double MinLOWPeriod=iLow(Symbol(),PERIOD_M1,a); //返回最低价格的条形价格值。
double MaxHIGHPeriod=iHigh(Symbol(),PERIOD_M1,b); //返回最高价格的柱子的价格。
double PriceCloseBar=iClose(Symbol(),PERIOD_M1,0); //返回最后一个柱子的收盘价。
double xm1=(PriceCloseBar-MinLOWPeriod)/(MathMax((MaxHIGHPeriod-MinLOWPeriod)/100,Point)。
打印(xm1)。
而且还使配方更加光滑;)
谢谢你!
sponger:
可惜没有 "谢谢你 "的按钮。
但还有一个神奇的按钮:SRC,当你使用它时,代码(或其片段)在提问者的帖子中变得更整洁、更易读,为提问者的业力加分,并增加那些会看这个代码并决定提供帮助的人的数量。
只是嘘声。.因此,在SRC 按钮的魔法的秘密知识中,一般来说,只有那些阅读网站上的手册的神圣文本 的人是致力于此的。例如,诸如这些。
并在此成功地掌握了 解决进一步问题的秘密知识!哇!!!头!非常感谢!经过极其繁琐的四个小时的工作,我终于找到了如何粘住这个功能,使测试者不至于发誓)得出的结果大约如下。
double xm1=(PriceCloseBar-MinLOWPeriod)/(MathMax((MaxHIGHPeriod-MinLOWPeriod)/100,Point)。
打印(xm1)。
而且还使配方更加光滑;)
谢谢!
大家好)
我试图写一个函数来关闭一部分位置,但当我在测试器中运行时,138号 文件弹出一个错误,我不明白是什么问题。 请帮助。
下面是一个专家顾问,这个功能应该在其中工作)
大家好)
我试图写一个函数来关闭一部分位置,但当我在测试器中运行时,138号文件弹出一个错误,我不明白是什么问题。 请帮助。
我有一个EA,这个功能应该在那里工作)。
你是否在Dock中查看了这个错误的含义!?从那里你会找到答案!
在什么价位买入收盘?那卖家呢?
大家好
我的问题更多的是与methaquotes开发人员有关,但尽管如此...
Сколько баров храниться история? Т.е. с каким максимальным по сдвигу баром можно работать?
代码。
Print(iMA(Symbol(),0,14,0,MODE_SMA,PRICE_CLOSE,1200));
Print(iClose(Symbol(),0,1200));
在测试这一转变时,终端在两种情况下输出0.0
但是
Print(iMA(Symbol(),0,14,0,MODE_SMA,PRICE_CLOSE,120));
Print(iClose(Symbol(),0,120));
在测试中一切正常
是否有可能以某种方式调整可用历史的大小?也许有人遇到过这样的问题,并且已经找到了解决方案?
提前感谢!
大家好。
我试图通过Kim更新一个简单的拖曳式EA,在关闭所有市场订单后删除挂单,但失败了(
我已添加了删除待处理订单的功能。
我还面临另一个问题,我应该无法解决,因为我不太擅长编码。
我想我应该写一个条件,比如说。
这只是另一个EA的一个例子。
请帮助我。