[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. No puedo ir a ningún sitio sin ti - 4. - página 377
int start()
{
}
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 13.06.2007 |//| Описание : Удаление ордеров. Версия функции для тестов на истории. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента (NULL - текущий символ) |//| op - операция ( -1 - любой ордер) |//| mn - MagicNumber ( -1 - любой магик) |//+----------------------------------------------------------------------------+void DeleteOrders(string sy="", int op=-1, int mn=-1) {
int i, k=OrdersTotal(), ot;
if (sy=="" || sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
ot=OrderType();
if (ot==OP_BUYLIMIT || ot==OP_BUYSTOP || ot==OP_SELLLIMIT || ot==OP_SELLSTOP) {
if (OrderSymbol()==sy && (op<0 || ot==op)) {
if (mn<0 || OrderMagicNumber()==mn) {
OrderDelete(OrderTicket(), CLR_NONE);
}
}
}
}
}
}
int start()
{
DeleteOrders(NULL, -1, -1);
}
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 13.06.2007 |//| Описание : Удаление ордеров. Версия функции для тестов на истории. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента (NULL - текущий символ) |//| op - операция ( -1 - любой ордер) |//| mn - MagicNumber ( -1 - любой магик) |//+----------------------------------------------------------------------------+void DeleteOrders(string sy="", int op=-1, int mn=-1) {
int i, k=OrdersTotal(), ot;
if (sy=="" || sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
ot=OrderType();
if (ot==OP_BUYLIMIT || ot==OP_BUYSTOP || ot==OP_SELLLIMIT || ot==OP_SELLSTOP) {
if (OrderSymbol()==sy && (op<0 || ot==op)) {
if (mn<0 || OrderMagicNumber()==mn) {
OrderDelete(OrderTicket(), CLR_NONE);
}
}
}
}
}
}
creado de nuevo, borró todo, pero dejó la función y la guardó - pero no hay errores
pero en cuanto añado int start hay errores... ¿Cuál puede ser el problema?
no funciona...
como entonces cerrar una orden con esta función bajo la condición_2 cerrar una orden
esta es la condición para abrir una operación en condition_1
DanLett:
Llame al procedimiento así, por ejemplo: