[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 469

 
¿Alguien tiene una respuesta o qué?
 
bikrus13:
¿Cuánta potencia de CPU o memoria RAM necesita el Asesor Experto para poder procesar la información y trabajar con 52 pares sin problemas?
bikrus13:
¿Puede alguien darme una respuesta?
O cómo. Las condiciones del problema no contienen datos que nos permitan siquiera estimar el posible resultado. Sólo podemos suponer que necesariamente habrá problemas si abrimos todos los gráficos. Y serán menos, si operamos todos los pares desde una instancia del Asesor Experto (pero habrá problemas con la carga del historial).
Por ejemplo, un problema similar: ¿Cuánto tiempo se tarda en evacuar dos asentamientos y un pueblo de la inundación? Dado que no conocemos la población, el número y el tipo de transporte, y la distancia de la evacuación...
 
rlx:

El archivo no parece pegarse. Probablemente porque es un Rar

Aquí está el archivo ZIP.


¡¡¡Gracias por la ayuda!!! Me haré millonario, no te olvidaré))
 
Pínchame dónde me he equivocado, no puedo sacar los datos de la orden pendiente

if (OrdersHistoryTotal() != orto)
 {
int k1=OrdersTotal();
while
(k1>=1)
{
      OrderSelect(OrderTicket(),SELECT_BY_POS, MODE_HISTORY);
if (OrderProfit()>0)
{
if (OrderStopLoss()>0)
{
Alert("ОРДЕР ПРИБЫЛЕН");
Alert("ордер найден ",k1," шт"," общее количество ",OrdersHistoryTotal());
Alert("врямя бара на катором открыт ", Time[k1]," номер тикета ",OrderTicket());
int h=Time[k1];
Alert("профит ордера = ", OrderProfit()," SL ",OrderStopLoss()," TP ",OrderTakeProfit());
k1--;
break;
}
}
}
for (int k = OrdersTotal() ; k>=0; k--)
  {
   OrderSelect(k, SELECT_BY_POS, MODE_TRADES);
Alert("ОБЩЕЕ КОЛЛИЧЕСТВО ОТКРЫТЫХ И ОТЛОЖЕННЫХ ",OrdersTotal()," вид ордера ",OrderType());
int h1=Time[k];
if (h==h1)
{
Alert("ОРДЕР НАЙДЕН закрываем ",OrderTicket()," SL ",OrderStopLoss()," TP ",OrderTakeProfit()," time ", Time[k]);

//==================================================================================
//здесь не могу вытащить из найденого ордера не чего кроме Time
//данные из журнала
//2011.06.26 12:15:07    2011.06.24 03:00  555 EURUSD,M5: open #2 sell limit 0.30 EURUSD at 1.4290 tp: 1.4275 ok
//2011.06.26 12:15:07    2011.06.24 04:16  555 EURUSD,M5: Alert: ОРДЕР НАЙДЕН закрываем 0 SL 0 TP 0 time 1308888000
//==================================================================================




OrderDelete(OrderTicket());
}
}
orto = OrdersHistoryTotal();
}
 
OrderSelect(OrderTicket(),SELECT_BY_POS, MODE_HISTORY);
Necesita
OrderSelect(OrderTicket(),SELECT_BY_TICKET);

o

for(int i = 0; i <totalHistory; i++)
  {
   OrderSelect(i,SELECT_BY_POS, MODE_HISTORY);
  }
 
vik-777:
Pínchame donde me equivoco, no puedo sacar los datos de la orden pendiente


Muchos errores. Me llamó la atención enseguida:

La línea está mal:

OrderSelect(OrderTicket(),SELECT_BY_POS, MODE_HISTORY);

En el caso de la selección por billete, no sólo hay que especificar que la selección es por billete, sino que además, tras una selección exitosa, hay que comprobar la hora de cierre de la orden. Si es mayor que cero, la orden se selecciona entre las órdenes cerradas. Es necesario:

OrderSelect(OrderTicket(),SELECT_BY_TICKET);

Después de esta línea, debemos comprobar si OrderCloseTime()>0 Si la condición es verdadera, la orden se selecciona de la matriz de órdenes cerradas; si es falsa, la orden sigue en el mercado

... Pero... una mirada más cercana a su código revela esto:

Está intentando seleccionar un pedido por su ticket, utilizando una función estándar OrderTicket() ... Y esta función devuelve el ticket de la orden ya seleccionada. ¿Y en qué parte de su código se selecciona?

----------------------

Un consejo: busque el historial de pedidos cerrados utilizando un índice, en lugar de un ticket.

Una vez que haya encontrado la orden deseada, compruebe los datos que necesita.

Y cuando uno mira su código con más detalle, parece que no entiende en absoluto lo que quiere conseguir.

Las alertas le informan (en su significado) sobre la situación actual del mercado... Y usted está tratando de seleccionar algo de las órdenes que ya han sido ejecutadas y cerradas.

Describa su tarea con claridad.

 
artmedia70:

Muchos errores. Me llamó la atención enseguida:

La línea está mal:

En los casos en los que se selecciona por billete, no sólo se debe especificar que la selección es por billete, sino también, tras una selección exitosa, comprobar la hora de cierre del pedido. Si es mayor que cero, la orden se selecciona entre las órdenes cerradas. Es necesario:

Después de esta línea, debemos comprobar si OrderCloseTime()>0 Si la condición es verdadera, la orden se selecciona de la matriz de órdenes cerradas; si es falsa, la orden sigue en el mercado

... Pero... una mirada más cercana a su código revela esto:

Está intentando seleccionar un pedido por su ticket, utilizando una función estándar OrderTicket() ... Y esta función devuelve el ticket de la orden ya seleccionada. ¿Y en qué parte de su código se selecciona?

----------------------

Un consejo: busque el historial de pedidos cerrados utilizando un índice, en lugar de un ticket.

Una vez que encuentre la orden deseada, compruebe los datos que necesita.

Y cuando uno mira su código con más detalle, parece que no entiende en absoluto lo que quiere conseguir.

Las alertas le informan (en su significado) sobre la situación actual del mercado... Y usted está tratando de seleccionar algo de las órdenes que ya han sido ejecutadas y cerradas.

Describa su tarea con claridad.


Agradezco el consejo, soy un principiante en este negocio.

La idea es abrir una orden de venta en 1,4000 sl 1,4030 tp 1,3985.

después de abrir con éxito una orden de venta, abra una orden selllimit con los siguientes parámetros: precio 1,4030 sl 1,4080 tp 1,4015

este es el problema: si mi orden se cierra en tp 1,3985 entonces selllimit debe ser eliminado

Por favor, dígame si este es el movimiento correcto

en el campo de cierre de la orden de venta busco en el historial la última orden cerrada, averiguo a qué hora se abrió y luego busco una coincidencia en las órdenes pendientes, si la encuentro entonces borro la orden

 
¿Cuál es el principio de funcionamiento del asesor Auto-profit en resumen y dónde se describe en el foro? No estoy seguro de cómo funciona.
 
yosuf:
¿Cuál es el principio de funcionamiento del asesor Auto-profit en resumen y dónde se describe en el foro? No encuentro una descripción de la misma en el foro.

Has sido advertido por publicar un EA descompilado.
 

¡Buenos días!

A menudo veo alguna mención en los foros sobre la depuración de EAs utilizando la optimización. He ejecutado el Asesor Experto en el Probador de Estrategias con la marca de optimización un par de veces, pero no vi ningún resultado tangible.

Por favor, indíqueme dónde puede leer más sobre cómo utilizar esta optimización.

Se lo agradecería mucho.

Razón de la queja: