Características del lenguaje mql5, sutilezas y técnicas - página 230

 

begDayBar= iBarShift(_Symbol,_Period,begDayTime,false) según la documentación la función devuelve -1 o el desplazamiento de barra más cercano dependiendo del parámetro exacto.

pero hoy por alguna razón si begDayTime=2023.01.26 00:00:00 devuelve -1 aunque existen tales barras y no son las últimas.

2023.02.15 15:19:23.254 !indDAY_WSOWROhLine (EURRUB_TOM,M15) begDayTime=2023.01.26 00:00:00 endDayTime=2023.01.27 00:00:00 begDayBar=-2 endDayBar=-1 indATR=0 Q5days=0

puede devolver -1 o puede devolver la barra correcta.

Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
  • www.mql5.com
iBarShift - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
IuriiPrugov #:

hoy por alguna razón si begDayTime=2023.01.26 00:00:00 devuelve -1aunque existen tales barras y no son las últimas

Proporcione todos los datos para la reproducción.
 
fxsaber #:
Proporcione todos los datos para la reproducción.

begDayTime=iTime(Symbol(),Inp_period,bar);begDayBar=iBarShift(_Símbolo,_Periodo,begDayTime,false)-1;

Periodo_entrada = M15

2023.02.19 13:02:42.517 !indDAY_WSOWROhLine (EURRUB_TOM,M15) bar=14 begDayTime=2023.01.30 00:00:00 endDayTime=2023.01.31 00:00:00 begDayBar=-2 endDayBar=673 indATR=0 Q5days=0
si inserta

if (begDayBar<0) { k=0; do {k++;} while(begDayTime<time[k] && !IsStopped()); begDayBar=k; }

entonces todo está bien (es decir, arreglar iBarShift cuando falla)

 
IuriiPrugov #:

No son datos.

 
fxsaber #:

No son datos.

¿qué otros datos? ¡Inp_period = D1 se buscan 15 días en un ciclo! begDayTime= bar= bar =14

begDayTime=iTime(Symbol(),Inp_period,bar); _Symbol= EURRUB_TOM; _Period= M15; después de eso

iBarShift(_Symbol,_Period,begDayTime,false) puede producir una barra normal o -1 o no tiene tiempo de contar barras o algo asi.

en general, funciona de forma inestable si se cambia de indicador (basta con pulsar otro periodo en el panel "chart period"), por ejemplo, en M30 puede producir una barra normal o -1.

¡lo mismo en otro instrumento si no se inserta if (begDayBar<0) { k=0; do {k++;} while(begDayTime<time[k] && !IsStopped()); begDayBar=k; } entonces aparecerá un error

2023.02.20 07:58:01.698 !indDAY_WSOWROhLine (CNYRUB_TOM,M15) array out of range in '!indDAY_WSOWROhLine.mq5' (202,148)

y así sucesivamente después de una o dos veces. Puede probarlo usted mismo.

Inserte esta pieza en el indicador más simple y cambie a un período diferente en el panel "período del gráfico".

 
IuriiPrugov #:

¿y qué otros datos?

Código fuente completo y datos del entorno para la reproducción. Es decir, cualquiera podría reproducir el problema en un minuto después de leerlo.
 

ok

nuevo en MQL4 y ahora MQL5.

Sólo tratando de conseguir mi mente alrededor de las cosas. Yo solía ser un programador en Visual C / C ++ así que sé CÓMO código.

pero no estoy familiarizado con las bibliotecas y tal aquí. así el lenguaje .

Mi primera pregunta es si me carga una plantilla y produce un gráfico en Oanda, ¿cómo puedo configurar el código y tal?

Quiero usar mi cuenta de comercio de papel y desarrollar código para probar algunas estrategias de negociación.

Ahora no quiero volver a inventar la rueda, así que, si puedo conseguir algunos fragmentos de código que hace "estándar" cosas como

-Obtener la cuenta y el servidor / conexiones de base de datos

-Configurar un proyecto

-Ejecutar tal vez un código preexistente primero y luego practicar haciendo mods y "compilar" si es así como funciona o ejecutar una compilación de mi proyecto.

Tengo la intención de ser activo en esta comunidad una vez que consiga mis rodamientos tan tan contento de encontrar esto. Estoy cansado de tratar de comercio de forma manual

oh, ¿puedo usar esto para el comercio de cripto?

disculpas si no he preparado mejor - acaba de hacer este comentario después de mirar a su alrededor un poco - acaba de unirse hoy.

Gracias

RayRay

RR

 
@rrb1002 #: nuevo en MQL4 y ahora MQL5....

Tienes Artículos que describen cómo hacer las cosas con más detalle.

Tienes la CodeBase con ejemplos de código escritos por usuarios que van desde principiantes absolutos a desarrolladores altamente cualificados.

Y tienes la versión en línea de la Documentación (también disponible en MetaEditor).

rrb1002 #: ¿puedo usar esto para operar con criptomonedas?

Puedes operar con lo que tu broker te ofrezca, y eso incluye criptomonedas.

 
Ok estoy confundido aquí. Soy nuevo. Pensé que como lenguaje MQL4. ¿Es el nuevo lenguaje próximo MQL5? ¿Será MQL4 compatible hacia arriba a MQL5 y con suerte y sólo ampliar el lenguaje MQL4?
 
@rrb1002 #: Ok, estoy confundido aquí. Soy nuevo. Pensé que como lenguaje MQL4. ¿Es el nuevo lenguaje próximo MQL5? ¿Será MQL4 compatible hacia arriba a MQL5 y con suerte y sólo ampliar el lenguaje MQL4?

MQL5 existe desde hace más de una década. No es "nuevo". Es maduro.

MetaTrader 4 y MQL4 no ha sido desarrollado desde hace varios años (probablemente 6-8 años, creo) . Sólo las actualizaciones críticas se llevan a cabo de forma esporádica.

Los lenguajes son muy similares y mucha de la funcionalidad es algo compatible, pero la funcionalidad de trading es completamente diferente y nada compatible.