[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 299
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
//-----------------------------------------------------------------------------+
//Kim ¡Respeto y respeto!! |
//+----------------------------------------------------------------------------+
Esta fue sin duda la parte más estresante del código ))))
De acuerdo. No entiendo nada. Tengo la segunda TF en funcionamiento. Todo debería funcionar como un reloj. Pero no es así. No, está funcionando, pero no es como se esperaba. Lo he comprobado mil veces. Yo mismo no veo ningún error sintáctico o algorítmico. Intentaré explicarlo, adjunto el código completo. Así que:
Al principio de start() pongo un manejador para el número de segundos transcurridos desde el último start(). Las secciones repetidas se han trasladado a funciones definidas por el usuario. El nuevo valor time=TimeCurrent() se asigna allí, en las funciones de usuario.
La función trabaja en dos modos: en la primera rama, AtFirst=true, sólo capta un tick y pone a cero previamente el array-almacenamiento, mientras que en la segunda rama, AtFirst=false, funciona exactamente como un almacén de tick. Es decir, o bien ponemos a cero y truncamos la unidad y cogemos la oferta y la demanda en una celda cero, o bien alargamos la unidad y cogemos la oferta y la demanda. La alerta se estableció sólo con fines de depuración. Más adelante describiré la condición de puesta a cero del acumulador.
La función de "dibujar" la vela (añadir una vela a .hst abierta en el gráfico autónomo). Del mismo modo, pongo alertas para la depuración. La primera alerta señala a dos ticks capturados en un segundo (el tamaño del array es igual a dos, y en idea el volumen debería ser igual a dos), mientras que la segunda señala al bit igual a ack en el tick capturado (alerta similar en drive: pero funcionan de forma no sincronizada por alguna razón), y el volumen de la vela. Todo esto es en teoría, de hecho, cuando se introduce en el archivo (por alerta), por ejemplo, dos (o 0x00 00 00 00 00 00 40, doble 2,0) de alguna manera todavía resulta ser uno (0x00 00 00 00 F0 3F, doble 1,0 en formato BigEndian). Suelo anular esa alerta en el variador, pita a menudo, trabajo con estos dos.
La función "dibuja" una raya en caso de que no haya habido ningún tick en qué segundo. Funciona según el siguiente algoritmo:
Δtime=0: captura (copia) de ticks.
Δtime=1: Dibuja un candelabro en el tic que fue capturado antes, luego captura el tic (con un acumulador preliminarmente puesto a cero).
Δtime>1: Dibuja una vela en el tick capturado antes, dibuja guiones en la línea Close[0] en la cantidad deΔtime-1, captura un tick (con acumulador preliminarmente a cero). En todos los casos, el acumulador debe ponerse a cero cuando ya se ha dibujado una vela en él y significa que el acumulador ya no es necesario. Esto ocurre cuandoΔtime>0.
Vamos a repasarlo:
Con la flecha he dibujado los momentos en los que la oferta es supuestamente igual al asc y el volumen debería ser supuestamente igual a uno. No capturé el fondo con volúmenes, de todas formas no se ve nada ahí, es poco profundo. Pero todos están nivelados, es decir, o bien cero o bien uno, ninguno sube a dos (aunque la alerta está señalando). Dos garrapatas por segundo - todavía en un ratón hover irónicamente muestra el volumen = 1, y la oferta es igual a asku también irónicamente muestra el volumen = 0. ¿Por qué? Entiendo que en algún lugar hay un error, pero lo más probable es que no me dé cuenta del error, o que busque en el lugar equivocado. Adjunto el código, he comentado bien mi parte del código, he comprobado las sangrías por todas partes, he eliminado los inluders, sólo he seleccionado las funciones a utilizar, para que compile más rápido. La única observación - no funciona fuera de línea, es decir, con TimeLocal, a diferencia de colector de garrapatas original, porque he escrito en if(tickTimeLocal==true) allí desde el principio (ya que no lo necesitaba mucho). Intenté traducirlo en Expert Advisor siguiendo el consejo de Taras - las velas no se muestran en el gráfico autónomo (pero la línea de la cotización actual se mueve bien).
tus zapatillas.
Hola
He aquí una pregunta. Digamos que hoy es lunes. Necesito saber el precio de cierre del viernes. Necesito saber el precio de cierre del viernes.
Hice esta pregunta porque veo las barras del sábado y del domingo en el Probador de Estrategias. No he negociado en estos días. ¿Sobre la línea escrita está el precio de cierre del viernes o del domingo?Hola
He aquí una pregunta. Digamos que hoy es lunes. Necesito saber el precio de cierre del viernes. ¿Puedo escribir
Tengo esta pregunta porque en el Probador de Estrategias veo barras en sábado y domingo. No negocio en esos días. ¿La línea escrita arriba da el precio de cierre del viernes o del domingo?¡Dame el precio del viernes! Si el servidor cierra no más tarde de las 24.00 horas del viernes y comienza no antes de las 0.00 horas del domingo
Utilice el indicador DailyPivotPoints.
No, no lo entiendo en absoluto. Claramente ya está escribiendo
En las alertas iguales a 2, saco el indicador de los minutos, arrastro el ratón sobre la vela... Volumen=1.
Mirado RateInfo en hst a través de FileInsight (como depurador), creo que tal vez hay int, pero no doble en el volumen - no, el mismo doble ...
Buenas noches.
Gracias por la respuesta a mi pregunta))
Por favor, dígame si coloco una orden de compra como esta OrderSend (Symbol(),OP_BUY,Lot,Ask,3,0,0, "Buy",0,0,Green);
Si es una orden de ventaOrderSend (Symbol(),OP_SELL,Lot,Ask,3,0,0, "Sell",0,0,Red);
¿la diferencia es azul o tiene que cambiar también el color rojo? es decir, donde OP_BUY es el precio de la oferta
donde OP_SELL tiene el precio de venta
También quería comprobar si mi orden no ha cambiado y no quería cambiarla, así que por qué está bien en el Probador de Estrategias, pero en el REAL "Error al abrir la orden 129" - ¡por favor, ayuda!
Buenas noches.
Gracias por la respuesta a mi pregunta))
Por favor, dígame si coloco una orden de compra como esta OrderSend (Symbol(),OP_BUY,Lot,Ask,3,0,0, "Buy",0,0,Green);
Si es una orden de ventaOrderSend (Symbol(),OP_SELL,Lot,Ask,3,0,0, "Sell",0,0,Red);
¿la diferencia es azul o tiene que cambiar también el color rojo? es decir, donde OP_BUY es el precio de la oferta
donde OP_SELL tiene el precio de venta
También quería comprobar si mi orden no ha cambiado y no quería cambiarla, ¿por qué todo fue bien en el Probador de Estrategias y en la Demo, pero me dio un error de 129 cuando intenté abrirla en el Mercado REAL?
Buenas noches.
Gracias por responder a mi pregunta))
Me pueden decir si abro una orden de compra como esta OrderSend (Symbol(),OP_BUY,Lot,Ask,3,0,0, "Buy",0,0,Green);
Si es una orden de ventaOrderSend (Symbol(),OP_SELL,Lot,Ask,3,0,0, "Sell",0,0,Red);
...Vender:
Recomiendo actualizar los presupuestos antes de enviar un pedido:
RefreshRates(); OrderSend (...);
Y tenga en cuenta que su deslizamiento =3, para cotizaciones de 4 dígitos será =3 pips y para cotizaciones de 5 dígitos se calculará como 0,3 pips. Así que si su EA va a trabajar con cotizaciones de 5 dígitos, entonces establezca slipage = 30.No, no lo entiendo en absoluto. Claramente ya está escribiendo
En las alertas iguales a 2, saco el indicador de los minutos, arrastro el ratón sobre la vela... Volumen=1.
Mirado RateInfo en hst a través de FileInsight (como depurador), creo que tal vez hay int, pero no doble en el volumen - no, el mismo doble ...
He mirado su código.... Lo tienes todo demasiado confundido))))
No entiendo muy bien, por qué necesitamos acumular ticks, porque es suficiente almacenar en la memoria (o incluso no almacenar, porque la barra actual debe ser escrita en HST - de lo contrario el gráfico no se actualizará) los parámetros de la barra actual - seis números TOHLCV, y actualizarlos según sea necesario en la recepción de ticks, y hacer el corte de la barra en la condición especificada(TimeCurrent()-O>1).
Intenta rehacer el código de esta manera, se reducirá en 8 veces, te lo garantizo (lo he comprobado:)