SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
ROBOT PARA METATRADER 4
WT_DANTIUM
IMPORTE OBJETIVO
[tipoValorImporteObjetivo]
Aquí debes indicar qué tipo de dato o valor vas a definir en el parámetro [valorImporteObjetivo]. Puede
ser el lotaje de la primera orden de todos los ciclos o un importe económico exacto (en la divisa que
definiste en el parámetro [divisaCuenta]).
[valorImporteObjetivo]
Aquí debes indicar el importe que quieres ganar cuando cierre el ciclo o el lotaje de la primera orden de
un ciclo.
Si defines un importe pues ese será el importe objetivo que se usará como profit objetivo del ciclo y
por tanto el importe que se aplica a la hora de calcular el lotaje de las órdenes del ciclo. En caso de que
definas un lotaje pues lo primero que hace el robot es que a partir de ese lotaje y el TP que hayas
definido en el parámetro [tics_Takeprofit] calcula el importe objetivo y será ese el que use el robot
para los cálculos de los lotajes de las órdenes y como objetivo del ciclo. Ese importe objetivo calculado
por el robot, te lo indica el robot en la pestaña "Expertos" del Terminal de tu MT4, que es donde
deberías estar mirando todo el tiempo para ver siempre lo que ocurre.
RANGO TEMPORAL
[rangoTemporalActivo]
Este parámetro es muy importante. Aquí debes indicar al robot si quieres que tenga o no en cuenta el
rango temporal.
Si quieres que lo tenga en cuenta entonces este parámetro debe ser TRUE.
Si en algún momento el robot quiere realizar una acción (como abrir una orden de un ciclo ya iniciado o
iniciar un nuevo ciclo), en caso de que este parámetro sea TRUE el robot comprobará si la fecha/hora
actual del servidor está o no dentro del rango temporal definido (el rango temporal se define en los
parámetros que explico más abajo). Si la fecha/hora actual del servidor está dentro del rango temporal
entonces el robot ejecutará la acción, pero si no es así entonces el robot quedará pausado varios
minutos. Pasado ese tiempo el robot de nuevo comprobará si la fecha/hora actual del servidor está
dentro del rango temporal y si no lo está entonces de nuevo el robot quedará pausado, y así
sucesivamente hasta que la fecha/hora del servidor esté dentro del rango temporal.
ESTO ES MUY ÚTIL PORQUE TE ASEGURA QUE EL ROBOT SOLAMENTE OPERARÁ EN LOS DÍAS Y
HORARIOS QUE TÚ DEFINAS.
Un ejemplo:
Imagina que un ciclo ya está ejecutándose y se ha abierto la orden 4 del ciclo. Supongamos que la
orden se cierra y el profit total alcanzado es de 70 euros, pero el profit total que se debe conseguir es
de 150 euros por lo tanto el robot se dispondrá a abrir otra nueva orden para obtener el profit
restante. Pero si resulta que la fecha/hora actual del servidor ya no está dentro del rango temporal
entonces el robot no creará la nueva orden y dejará el CICLO PAUSADO varios minutos. Una vez acabe
la pausa entonces volverá de nuevo a comprobar si ya se cumple el rango temporal, y si no se cumple
pues de nuevo quedará pausado y así sucesivamente hasta que se cumpla el rango temporal, y cuando
ya se cumpla el rango temporal entonces el robot creará la nueva orden del ciclo.
[inicioRango_horaVela]
Este parámetro sólo se tiene en cuenta cuando el parámetro [rangoTemporalActivo] es igual a TRUE.
Aquí debes indicar la hora de inicio del rango temporal en el que quieres que se permita iniciar ciclos o
crear nuevas órdenes dentro de un ciclo ya abierto.
[finRango_horaVela]
Este parámetro sólo se tiene en cuenta cuando el parámetro [rangoTemporalActivo] es igual a TRUE.
Aquí debes indicar la hora de fin del rango temporal en el que quieres que se permita iniciar ciclos o
crear nuevas órdenes dentro de un ciclo ya abierto.
[rango_DiasSemana]
Este parámetro sólo se tiene en cuenta cuando el parámetro [rangoTemporalActivo] es igual a TRUE.
Aquí debes indicar los días de la semana del rango temporal en el que quieres que se permita iniciar
ciclos o crear nuevas órdenes dentro de un ciclo ya abierto.
Cada día de la semana es una letra mayúscula y van separados por #. El Miércoles se escribe con una X.
Ejemplo 1 --> L#M#X#J#V
Ejemplo 2 --> L#X#V
[rangoMinutosPausaOrden]
Cuando el robot quiere abrir una orden, en caso de que hayas definido un Rango Temporal, si el
día/hora actual no está dentro del rango que has definido, entonces el robot quedará pausado un
tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará
el control de Rango Temporal (y cualquier otro control que hayas activado). El tiempo que quieres que
esté el robot pausado cuando no se cumple el rango temporal que has definido es lo que debes indicar
en este parámetro, debes ponerlo en minutos. El robot no permite que este parámetro sea menor de
1.
Nota: Cuando el robot comprueba si se cumple o no el rango temporal, lo hace mirando la hora del
servidor al que te has conectado, así que no importa en qué TimeFrame esté el gráfico del activo en el
cual estás usando el robot.
CONTROL DE SPREAD
[spreadMaximo]
Este parámetro es muy importante. Uno de los principales problemas del trading es el Spread, el cual
puede variar de forma inesperada en cualquier momento alcanzando valores muy altos, lo cual afecta
enormemente a nuestro trading. El Spread (junto con los GAPS) es la mejor arma que el mercado usa
contra nosotros para perjudicarnos cuando le apetece .
Cuando el Spread aumenta lo que ocurre es que el precio ASK se aleja mucho del precio BID, o sea que
el precio ASK sube bastantes pips hacia arriba, eso puede afectar mucho a tu operativa porque te
puede cerrar órdenes SELL en pérdidas a pesar de tener su SL bastante lejos del precio actual y también
te puede abrir órdenes BUY en zonas muy altas provocando grandes pérdidas desde el inicio. Operar
cuando hay un Spread elevado es muy arriesgado si no eres muy experto o si operas en TimeFrames
bajos con distancias cortas. Por defecto este parámetro es = 20.
Podemos configurar el robot para que quede PAUSADO mientras haya un Spread que no nos interese
(sería una pausa automática porque la ejecuta el robot de forma automática). Esto se puede hacer
usando el parámetro [spreadMaximo] en el cual debes indicar el número de TICS de Spread máximo
que quieres soportar mientras el robot abre órdenes. Si el Spread del activo es superior a ese valor
entonces el robot quedará pausado durante unos segundos, una vez pasado ese tiempo volverá de
nuevo a comprobar el Spread del activo, si ve que sigue siendo elevado pues el robot quedará pausado
de nuevo, y así sucesivamente hasta que el Spread esté por debajo del valor que hayamos configurado,
cuando eso ocurra es entonces cuando el robot ejecutará la nueva orden o iniciará un ciclo.
[spreadSegundosPausaOrden]
Cuando el robot quiere abrir una orden, en caso de que hayas definido un spread Maximo, si el spread
actual del activo es igual o mayor que ese spreadMaximo, entonces el robot quedará pausado un
tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará
el control de Spread (y cualquier otro control que hayas activado). El tiempo que quieres que esté el
robot pausado cuando el spread actual del activo es mayor que el spread Maximo que has definido es
lo que debes indicar en este parámetro, debes ponerlo en segundos. El robot no permite que este
parámetro sea menor de 10.
UTILIZAR EL ROBOT EN GRÁFICOS QUE NO SON DE DIVISAS
En la parte superior de esta página hay un link de color azul y con letras grandes que te dará acceso a
una explicación detallada de cómo utilizar mis robots para operar en gráficos que no son pares de
divisas.
[graficoDivisas]
Si el activo en el que quieres operar es un gráfico de divisas donde la divisa base (la de la izquierda) es
EUR, USD, GBP, AUD, NZD, CAD o CHF, entonces este parámetro debe ser igual a TRUE. En cualquier
otro caso, el parámetro debe ser FALSE.
[valorLotexPIP]
Este parámetro sólo se tiene en cuenta cuando el parámetro [graficoDivisas] es igual a FALSE. Aquí
debes indicar el importe que se gana/pierde por lote para una distancia de 1 pip en el activo en el que
quieres operar. Por ejemplo, supongamos que la divisa de la cuenta es el USD, y que el gráfico es el
DAX, y en ese gráfico cuando el precio recorre 1 pip, por cada lote se gana/pierde 0.12 USD. Entonces
aquí debes escribir el valor 0.12
[redondeoVolumen]
Existen activos que no son de divisas (principalmente índices) donde se puede operar como mucho con
1 decimal en el volumen, en algunos casos incluso no se permite ningún decimal. Este parámetro
solamente se tiene en cuenta cuando el parámetro [graficoDivisas] es igual a FALSE. Aquí debes indicar
qué tipo de redondeo quieres que se aplique en el volumen de las órdenes. El robot siempre redondea
al alza. Por ejemplo, si el volumen calculado por el robot es de 1.32 lotes y el redondeo es a 1 decimal
entonces el volumen redondeado será 1.4 lotes, y si el redondeo es a cero decimales entonces el
volumen redondeado será 2.
MODO FUNCIONAMIENTO
[aumentoLotajeActivo]
Si [aumentoLotajeActivo] = 'true', cuando se pierde una orden luego el robot cuando ejecute otra
orden lo hará aumentando el volumen para recuperar la pérdida de la orden anterior. De esta manera
se ejecuta un ciclo. Un ciclo puede empezar con un BUY o un SELL, y en el momento que se gane la
orden abierta pues el ciclo acaba (se cierra), pero si la orden abierta se pierde entonces el ciclo
continuará iniciado (o abierto) y cuando el robot ejecute otra orden lo hará aumentando el volumen
para recuperar la pérdida de la orden anterior. El robot puede ejecutar uno o muchos ciclos,
dependiendo de cómo lo configures. Un ciclo se puede iniciar manualmente, o usando las líneas LH o
las configuraciones de inicio y reinicio automático.
Si [aumentoLotajeActivo] = 'false', cuando se pierde la primera orden del ciclo entonces se cierra el
ciclo y luego el robot cuando ejecute otra orden lo hará sin aumentar el volumen y será un nuevo ciclo,
o sea que cada ciclo tendrá sólo 1 orden. Solamente funciona cuando [modoFuncionamiento] = 'UN
CICLO BUY/SELL'
[minimoLotajeIgualOrden1]
Si operas con Dantium y no usas aumento de lotaje entonces el parámetro [minimoLotajeIgualOrden1]
no tiene ninguna utilidad. Pero si operas usando el aumento de lotaje, entonces te interesa este
parámetro, sobre todo ahora que el robot incluye BreakEven y TrailingStop. Gracias al BreakEven y al
TrailingStop una orden de un ciclo no solamente puede no generar pérdidas sino que además puede
generar ganancias aunque aún no se haya alcanzado el objetivo del ciclo. Eso puede provocar que la
siguiente orden del ciclo tenga menor lotaje que la orden recién cerrada e incluso menor lotaje que la
orden 1 del ciclo.
Pongo un ejemplo: Tenemos un importe objetivo de 100 euros y se abre una orden, la cual ejecuta el
TrailingStop y finalmente el precio toca su SL en zona positiva y se obtienen 40 euros de ganancia. Aún
el ciclo no termina porque el robot tiene como objetivo ganar 100 euros por ciclo. Pero como ya se han
ganado 40 euros entonces el robot al calcular el lotaje de la siguiente orden, no solamente no aumenta
el lotaje de la siguiente orden sino que además lo reduce porque ahora usa el lotaje necesario para
ganar 60 euros y no 100, porque 60 es lo que falta para llegar a 100 debido a que ya hemos ganado 40.
Eso provoca que el lotaje de la siguiente orden sea muy bajo, incluso que sea inferior al lotaje de la
orden 1 del ciclo. Pero si la nueva orden no se gana o tampoco se alcanza el objetivo, el ciclo
continuará, y esto puede ocurrir muchas veces de forma que el ciclo se puede alargar demasiado en el
tiempo. Para evitar esto lo mejor es que si usas aumento de lotaje y también usas BreakEven y/o algún
tipo de TrailingStop pues que entonces el parámetro [minimoLotajeIgualOrden1] lo actives (lo pongas =
true).
[modoFuncionamiento]
UN CICLO: Cuando se inicia un ciclo, podrá hacerlo en cualquier momento con un BUY o con un SELL, y
una vez iniciado el ciclo, si está activo el aumento de lotaje, el resto de órdenes del mismo ciclo serán
todas del mismo tipo que la primera orden del ciclo. Si el aumento de lotaje está desactivado entonces
los ciclos simplemente tendrán 1 orden, que podrá ser un BUY o un SELL.
DOS CICLOS: Es exactamente igual que el modo UN CICLO, pero con la gran diferencia de que siempre
se están ejecutando dos ciclos a la vez, uno siempre es opuesto al otro. Si el ciclo principal se inicia con
un BUY pues el otro ciclo lo hará con SELL y viceversa. Esto es lo mismo que si tenemos el robot
insertado en dos ventanas del mismo activo en modo UN CICLO, pero que en una ventana siempre
ejecuta órdenes opuestas a las de la otra ventana. El robot lo hace todo dentro de la misma ventana.
UN CICLO BUY/SELL: Es como el modo UN CICLO pero con la diferencia de que dentro de un mismo
ciclo las órdenes pueden ser tanto BUYs como SELLs. Este modo solamente funciona si se ha definido
alguna condición para Medias Móviles y/o RSI y/o gráficos Renko. Cuando va a abrir un BUY, si por
alguna condición no puede entonces mira si se puede abrir un SELL. El robot siempre que deba abrir
una orden, dicha orden podrá ser tanto un SELL como un BUY, dependiendo de si se cumplen o no las
condiciones para abrir un SELL o un BUY. No importa si la orden es para iniciar un ciclo o es para abrir
un nueva orden dentro de un ciclo ya abierto de antes. Haya o no aumento de lotaje, el robot podrá
funcionar en este modo. En caso de que haya aumento de lotaje entonces el robot podrá crear una o
más órdenes dentro de un ciclo, y en caso de que no haya aumento de lotaje entonces cada ciclo
tendrá solamente una orden.
Nota: Debes saber que en Dantium para abrir una orden se deben cumplir todas las condiciones y
controles que hayas definido en los parámetros del robot (control spread, rango temporal, condiciones
renko, Órdenes Perdidas Consecutivas (OPC), Medias Móviles, RSI). Esto es así siempre, haya o no
aumento de lotaje, en cualquier modo de funcionamiento y se use o no el gráfico de Velas Renko.
Ejecutar una orden puede ser para iniciar un nuevo ciclo. Pero en caso de que esté activo el aumento
de lotaje, entonces ejecutar una orden también puede ser para abrir una orden dentro de un ciclo ya
iniciado.
BREAK EVEN
[ejecutarBreakEven]
Sirve para activar o no la ejecución del BreakEven. Sus valores son TRUE o FALSE.
[ticsEjecucionBreakEven]
Si el parámetro [ejecutarBreakEven] es TRUE entonces este parámetro no puede ser menor de 10. El
BreakEven se ejecutará cuando el precio esté a un número de tics de distancia a favor respecto del
precio de apertura de la orden. Ese número de tics es el que se indica en este parámetro. Por ejemplo,
si la orden es un BUY y éste parámetro vale 150, entonces si el precio sube y se aleja al menos 150 tics
por encima del BUY el robot ejecutará el BreakEven y moverá el SL de la orden BUY a empate, y le
añadirá o no tics adicionales dependiendo de lo que configures en el parámetro
[ticsAdicionalesBreakEven].
[ticsAdicionalesBreakEven]
No puede ser menos de cero. El robot solamente lo tiene en cuenta si el parámetro
[ejecutarBreakEven] es TRUE. Si este parámetro es cero entonces aunque se ejecute el BreakEven este
parámetro no tendrá ningún efecto (el robot lo ignorará). Pero si este parámetro es mayor que cero
entonces cuando se ejecute el BreakEven, el SL se colocará en zona positiva un nº de tics, que son los
tics adicionales definidos en este parámetro, eso asegurará una mínima ganancia.
TRAILING STOP
TRAILING STOP (TS)
En las versiones anteriores ya existía el Trailing Stop (desde ahora lo llamaré TS).
En esta versión he hecho unos cambios y mejoras en el TS.
Si activas esta funcionalidad entonces el robot estará todo el tiempo analizando si
puede o no ejecutar el TS (este proceso lo realiza contodaslasórdenesdelciclo).
Cuando en una orden se cumplan las condiciones entonces el robot ejecutará el TS
para esa orden. Las condiciones son las indicadas en todos los parámetros del TS.
El TS consiste en mover el SL de la orden con la intención de que el SL vaya
avanzando y “persiguiendo” al precio en los movimientos que haga el precio en
sentido favorable a la orden.
En Perseguido el TS de una orden tiene 2 fases distintas durante su ejecución.
La fase 1 es cuando el TS se ejecuta porprimeravez en la orden.
La fase 2 es el resto de veces que el TS se ejecuta para esa orden, o sea cada vez
que el robot de nuevo mueve el SL de la orden “persiguiendo” al precio.
En la siguiente página explico los parámetros de esta funcionalidad.
PARÁMETROS TRAILING STOP (TS)
[TS_tipoTrailingStop] Tiene 3 opciones:
No ejecutar TrailingStop
El robot no ejecutará el TS en ninguna orden aunque se cumplan las condiciones.
Ejecutar TrailingStop desde apertura orden (sin BreakEven)
El BreakEven debe estar desactivado. Cuando el precio alcance la distancia
indicada respecto del precio de apertura de una orden, entonces se ejecutará el
TS por primera vez en esa orden (fase 1), y no importa si el SL queda o no en
zona negativa. Luego el SL irá persiguiendo al precio todo el tiempo según las
condiciones indicadas en los otros parámetros (fase 2).
Ejecutar TrailingStop después de ejecutar BreakEven
El BreakEven debe estar activado. El TS se ejecutará solamente en caso de
que el BreakEven ya se haya ejecutado. Cuando el precio alcance la distancia
indicada respecto del precio de apertura de una orden, entonces se ejecutará el
TS por primera vez en esa orden (fase 1). Luego el SL irá persiguiendo al precio
todo el tiempo según las condiciones indicadas en los otros parámetros (fase 2).
[TS_ticsDistanciaEjecucion_1]
Cuando el precio se aleja avanzando a favor de la orden y alcanza una distancia respecto al PRECIO
DE APERTURA DE LA ORDEN, entonces el TS se ejecuta por primera vez (fase 1). Esa distancia en
tics es la que debes indicar en este parámetro. Sólo se tiene en cuenta esta distancia para la primera
ejecución del TS en una orden (fase 1), y se mide respecto del precio de apertura de la orden.
[TS_ticsDistancia_SL]
En este parámetro debes indicar la distancia en tics a la que queremos que se mantenga el SL de la
orden respecto del precio cada vez que se ejecuta el TS y se mueve el SL. Siempre que el TS se
ejecute el SL se colocará a esta distancia en tics respecto del precio, no importa si es o no la primera
vez que el TS se ejecuta en la orden, o sea no importa si es la fase 1 o 2.
[TS_ticsRecorridoPrecio]
Cuando el TS ya se ejecutó por primera vez en la orden (ya pasó la fase 1) y estamos en la fase 2.
Este parámetro indica cuántos tics debe alejarse de nuevo el precio a favor de la orden y respecto a
la posición actual del SL para que de nuevo el TS se ejecute y de nuevo se mueva el SL a
[TS_ticsDistancia_SL] respecto del precio. Resumiendo, para que el TS se ejecute y mueva de nuevo
el SL, el precio debe alejarse hacia zona positiva al menos la distancia que indica este parámetro
respecto del SL. Esto solamente es en la fase 2.
[TS_eliminarTakeProfit]
Cuando el TS se ejecuta por primera en una orden (fase 1), el TakeProfit de la orden se elimina en
caso de que este parámetro sea = true. La utilidad de esto es que al no haber TakeProfit cabe la
posibilidad de maximizar las ganancias en caso de que el precio siga avanzando más allá de donde
estaba el TakeProfit. Esto suele ocurrir muchas veces, y puede generar grandes ganancias.
En Dantium además hay una nueva opción en el TrailingStop que está relacionada
con el Profit Total de Ciclo, la cual explico en este mismo documento más abajo.
En Dantium además hay una nueva opción en el TrailingStop que está relacionada
con el Profit Total de Ciclo, la cual explico en este mismo documento más abajo.
VOLUMEN MÍNIMO = ORDEN 1 DEL CICLO
Si operas con Dantium y no usas aumento de lotaje entonces el parámetro
[minimoLotajeIgualOrden1] no tiene ninguna utilidad. Pero si operas usando el
aumento de lotaje, entonces te interesa este parámetro, sobre todo ahora que el robot
incluye BreakEven y TrailingStop. Gracias al BreakEven y al TrailingStop una orden
de un ciclo no solamente puede no generar pérdidas sino que además puede generar
ganancias aunque aún no se haya alcanzado el objetivo del ciclo. Eso puede
provocar que la siguiente orden del ciclo tenga incluso menor lotaje que la orden recién
cerrada e incluso menor lotaje que la orden 1 del ciclo.
Pongounejemplo:
Tenemos un importe objetivo de 100 euros y se abre una orden, la cual ejecuta el
TrailingStop y finalmente el precio toca su SL en zona positiva y se obtienen 40
euros de ganancia. Aún el ciclo no termina porque el robot tiene como objetivo
ganar 100 euros por ciclo. Pero como ya se han ganado 40 euros entonces el robot
al calcular el lotaje de la siguiente orden, no solamente no aumenta el lotaje de la
siguiente orden sino que además lo reduce porque ahora usa el lotaje necesario
para ganar 60 euros y no 100, porque 60 es lo que falta para llegar a 100 debido a
que ya hemos ganado 40. Eso provoca que el lotaje de la siguiente orden sea muy
bajo, incluso que sea inferior al lotaje de la orden 1 del ciclo. Pero si la nueva orden
no se gana o tampoco se alcanza el objetivo, el ciclo continuará, y esto puede
ocurrir muchas veces de forma que el ciclo se puede alargar demasiado en el
tiempo. Para evitar esto lo mejor es que si usas aumento de lotaje y también usas
BreakEven y/o algún tipo de TrailingStop pues que entonces el parámetro
[minimoLotajeIgualOrden1] lo actives (que sea = true).
TRAILING STOP SEGÚN PROFIT TOTAL CICLO (PTC)
Esta funcionalidad pertenece a la de Trailing Stop que hay más arriba, pero he
preferido explicarlo aparte porque es la misma funcionalidad que la de PTC (Profit
Total Ciclo) que hay en Perseguido para cuando la acción a realizar es el Trailing
Stop. Las explicaciones de esta funcionalidad del robot Perseguido las encontrarás
en el PDFdelaversión2.5Build1 del robot Perseguido y también en el tercer vídeo del
robot (que es el vídeo de la versión 2.5 Build 1) el cual encontrarás aquíenmi canal
principaldeYouTube.
Esta funcionalidad consiste en que le puedes indicar al robot que el Trailing Stop se
ejecute solamente cuando el ciclo alcanza un profit total positivo. Ese profit total a
alcanzar lo debes definir en el parámetro [TS_importeProfitTotalCiclo]
Para activar esta funcionalidad debes poner que:
[TS_tipoTrailingStop] = “Ejecutar TrailingStop si [TS_importeProfitTotalCiclo] alcanzado”
Imagina que pones que [TS_importeProfitTotalCiclo] es = 50; Y el importe objetivo
del ciclo es 100 euros. Si activas esta funcionalidad configurando el parámetro
[TS_tipoTrailingStop], lo que ocurrirá es que cuando el ciclo alcance un profit total de
50 euros o más entonces el robot ejecutará el TrailingStop, utilizando los valores
que hayas definido en el resto de parámetros de la funcionalidad de Trailing Stop.
De esta manera cuando el ciclo ya está en positivo tienes la posibilidad de asegurar
ganancias, y si además le dices al robot que elimine el TakeProfit puede que incluso
consigas maximizar ganancias en caso de que se produzca un fuerte movimiento
del precio a tu favor.
Si operas en un activo que suele hacer fuertes impulsos con largos recorridos sin
apenas grandes retrocesos, entonces es mejor eliminar el TP, pero en otro caso es
mejor no eliminar el TP, así cuando el precio lo alcanza aseguras que cumples el
objetivo y en caso de querer seguir operando pues con el reinicio de ciclo puedes
seguir operando y aprovechar el movimiento del precio.
% BALANCE SOPORTADO
Esta funcionalidad solamente se tiene en cuenta cuando el aumento de lotaje está activo
Sirve para evitar que el robot abra dentro de un ciclo más órdenes de las deseadas para que así
no se aumente el riesgo de tener mayores posibles pérdidas. Consiste simplemente en indicar
un % del balance de la cuenta. Entonces el robot cuando inicia un ciclo mira qué balance hay, y
si luego en algún momento durante la ejecución del ciclo se pierde una orden y eso provoca
que la pérdida total acumulada del ciclo sea igual o mayor al % de balance soportado,
entonces el robot ya no abre más órdenes en ese ciclo y lo cierra (ya no aumenta más
volumen). Luego puede o no iniciar un nuevo ciclo de forma automática dependiendo de la
configuración definida en los parámetros. A ese porcentaje lo llamo % de balance soportado.
[accion_PBS]
Si [accion_PBS] = 'Reiniciar ciclo', cuando se cierre un ciclo porque su pérdida ya alcanzó el %
del balance soportado, el robot iniciará un nuevo ciclo de forma automática (eso no implica
que el nuevo ciclo ya directamente abra una orden porque dependerá de las condiciones y
controles que se hayan definido en el resto de parámetros del robot).
Si [accion_PBS] = 'Ejecutar acción de [reinicioAutomaticoCiclo]', cuando se cierre un ciclo
porque su pérdida ya alcanzó el % del balance soportado, el robot ejecutará la acción indicada
en el parámetro [reinicioAutomaticoCiclo].
ÓRDENES PERDIDAS CONSECUTIVAS
Esta funcionalidad solamente funciona cuando el aumento de lotaje está activo y cuando el
robot NO está funcionando en modo UN CICLO BUY/SELL
[numero_OPC]
Número de órdenes perdidas consecutivas. Cuando dentro de un ciclo se pierde de forma
consecutiva esa cantidad de órdenes, el robot pone el ciclo en pausa y genera una orden
fantasma. Cuando el precio alcanza el SL de la orden fantasma entonces el robot la borra y
crea una nueva orden fantasma justo donde esté el precio en ese momento. Cuando el precio
alcanza el TP de la orden fantasma entonces el robot borra la orden fantasma e intenta
ejecutar una orden real a mercado (eso no implica que la nueva orden se abra de imediato
porque dependerá de las condiciones y controles que se hayan definido en el resto de
parámetros del robot).
[resetContador_OPC_Ciclo]
Si [resetContador_OPC_Ciclo] = 'false', cuando se alcanza el número de órdenes perdidas
consecutivas, el contador que cuenta las órdenes perdidas consecutivas NO se resetea, eso
implica que se ejecutará una orden más, pero si esa orden se pierde entonces el robot de
nuevo dibujará una orden fantasma y dejará el ciclo en pausa.
Si [resetContador_OPC_Ciclo] = 'true', cuando se alcanza el número de órdenes perdidas
consecutivas, el contador que cuenta las órdenes perdidas consecutivas SI se resetea, eso
implica que para que de nuevo se ponga el mismo ciclo en pausa y se cree una orden fantasma
se deberán volver a perder de nuevo ese mismo número de órdenes consecutivas dentro de
ese ciclo.
[tics_TakeProfit_OrdenFantasma]
Aquí debes definir el número de tics que quieres que tengan los TakeProfit de las órdenes
fantasma. Este parámetro es importante porque ten en cuenta que cuando el precio alcanza el
TakeProfit de la orden fantasma es cuando ya el ciclo dejará de estar en pausa y entonces el
robot ya podrá ejecutar la siguiente orden real a mercado.
[tics_StopLoss_OrdenFantasma]
Aquí debes definir el número de tics que quieres que tengan los StopLoss de las órdenes
fantasma.
GRÁFICO RENKO
Los gráficos Renko no funcionan en la Prueba de Estrategia de MetaTrader
[graficoRenkoActivo]
Si [graficoRenkoActivo] = 'true', el robot genera el gráfico Renko del activo y lo abrirá de forma
automática. El tamaño de las velas Renko y el TimeFrame del gráfico Renko se define en los
parámetros de abajo.
Si [graficoRenkoActivo] = 'false', no se genera ningún gráfico Renko y se ignoran todos los
demás parámetros que están relacionados con los gráficos Renko.
[pipsVelasRenko]
Aquí debes indicar el tamaño en pips que deseas que tengan las velas del gráfico Renko.
[timeFrameRenko]
Aquí debes elegir qué TimeFrame quieres para el gráfico de velas Renko. Las velas Renko no
tienen temporalidad o TimeFrame, entonces ¿por qué hay que elegir un TimeFrame? Pues
porque MetaTrader para abrir un gráfico, el que sea, necesita identificarlo con su nombre y
temporalidad, entonces para que el gráfico Renko se pueda abrir en una ventana en
MetaTrader es necesario asociarle una temporalidad al nombre del gráfico, pero en realidad
luego en el gráfico de velas Renko no existe ninguna temporalidad.
CONDICIONES GRÁFICO RENKO
Los gráficos Renko no funcionan en la Prueba de Estrategia de MetaTrader
Estos parámetros de abajo solamente se tienen en cuenta si [graficoRenkoActivo] = 'true'
[controles_MM_RSI_ADX_en_Renko]
Si [controles_MM_RSI_ADX_en_Renko] = 'true', en el caso de que exista alguna condición de
Medias Móviles y/o RSI y/o ADX definidas en los parámetros, el robot aplicará esas condiciones
sobre el gráfico Renko (y no sobre el gráfico de velas japonesas). Excepto el parámetro
[precioEncimaDebajoFractalAnterior] que en caso de estar activo se aplicará siempre al gráfico
de velas japonesas (porque en Renko no existe temporalidad y por lo tanto es imposible
trabajar en Renko con fractales MutlTimeFrame).
Si [controles_MM_RSI_ADX_en_Renko] = 'false', el robot nunca aplicará las condiciones de
Medias Móviles y RSI y ADX sobre el gráfico Renko. Por lo que en el caso de que exista alguna
condición de Medias Móviles y/o RSI definida en los parámetros, el robot aplicará esas
condiciones sobre el gráfico de velas japonesas en el cual esté insertado el robot, y no sobre el
gráfico Renko.
[condicionesColoresVelasRenko]
Si dejas vacío [condicionesColoresVelasRenko], el robot ignorará este parámetro.
Si rellenas [condicionesColoresVelasRenko], el robot tendrá en cuenta las condiciones de
colores de velas Renko que aquí indiques. Puedes poner condiciones a una o más velas (las que
quieras). La condición de cada vela debe ir separada por "/" y los valores que puedes poner
son "MC" que significa MISMO COLOR ó "DC" que significa DISTINTO COLOR. Para entender
mejor el funcionamiento de este parámetro te aconsejo que veas la parte del vídeo en donde
lo explico (encontrarás el link más arriba).
[segundosPausaRenko]
Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones Renko, si
esas condiciones no se cumplen, entonces el robot quedará pausado un tiempo. Pasado ese
tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará las
condiciones Renko (y cualquier otro control que hayas activado). El tiempo que quieres que
esté el robot pausado cuando no se cumplen las condiciones renko que has definido es lo que
debes indicar en este parámetro, debes ponerlo en segundos. El robot no permite que este
parámetro sea menor de 10.
CONTROL MEDIAS MÓVILES
si [graficoRenkoActivo] = 'true' y [controles_MM_RSI_ADX_en_Renko] = 'true', entonces todas
las condiciones de Medias Móviles se aplicarán al gráfico Renko, excepto la condición del
parámetro [precio Encima Debajo Fractal Anterior] que se aplica siempre al gráfico de velas
Japonesas
[controlMediasMovilesActivo]
Si [controlMediasMovilesActivo] = 'true', el robot para poder abrir una orden aplicará como
condición que las 3 medias móviles estén alineadas en tendencia a favor del tipo de orden que
quiere abrir. Tendencia Alcista para un BUY y Tendencia Bajista para un SELL. También se
tendrán en cuenta el resto de condiciones de medias móviles que haya definidas en el resto de
parámetros.
Si [controlMediasMovilesActivo] = 'false', el robot no aplicará ninguna condición de Medias
Móviles al intentar abrir una orden. Y Y todos los parámetros relacionados con las medias
móviles se ignoran.
[tipoMediasMoviles]
Aquí debes seleccionar el tipo de las 3 medias móviles que quieres que use el robot.
[tipoPrecioMediasMoviles]
Aquí debes seleccionar el tipo de precio que quieres que el robot aplique en el cálculo de las 3
medias móviles.
[periodosMediaMovil_Rapida]
Aquí debes indicar los periodos que deseas que use el robot para la media móvil rápida.
[periodosMediaMovil_Central]
Aquí debes indicar los periodos que deseas que use el robot para la media móvil central.
[periodosMediaMovil_Lenta]
Aquí debes indicar los periodos que deseas que use el robot para la media móvil lenta.
[ticsDistanciaMinima]
Si [ticsDistanciaMinima] = 0, este parámetro se ignora
Si [ticsDistanciaMinima] > 0, el robot no solamente aplicará como condición que las 3 medias
móviles estén alineadas en tendencia, sino que además las 3 medias deben estar a una
distancia mínima de tics entre ellas. Esa distancia es la que tú definas en este parámetro. Es
una distancia en tics (y no en pips).
[tipoTendencia]
Si [tipoTendencia] = 'Sólo medias móviles', se ignora este parámetro
Si [tipoTendencia] = 'Precio encima/debajo media rápida', se aplicará como condición que el
precio esté por encima de la media rápida (para tendencia alcista) o por debajo de la media
rápida (para tendencia bajista). Y deberá estar a una distancia mínima en tics, que es la que
indique el parámetro [ticsDistanciaMinima]. En el caso de que [ticsDistanciaMinima] = 0
entonces no hay distancia mínima entre el precio y la media rápida como condición, pero
igualmente como mínimo el precio deberá ser igual a la media rápida o estar por encima de
ella en tendencia alcista o estar por debajo en tendencia bajista.
Si [tipoTendencia] = 'Precio encima/debajo media central', se aplicará como condición que el
precio esté por encima de la media central (para tendencia alcista) o por debajo de la media
central (para tendencia bajista). Y deberá estar a una distancia mínima en tics, que es la que
indique el parámetro [ticsDistanciaMinima]. En el caso de que [ticsDistanciaMinima] = 0
entonces no hay distancia mínima entre el precio y la media central como condición, pero
igualmente como mínimo el precio deberá ser igual a la media central o estar por encima de
ella en tendencia alcista o estar por debajo en tendencia bajista.
Si [tipoTendencia] = 'Precio encima/debajo media lenta', se aplicará como condición que el
precio esté por encima de la media lenta (para tendencia alcista) o por debajo de la media
lenta (para tendencia bajista). Y deberá estar a una distancia mínima en tics, que es la que
indique el parámetro [ticsDistanciaMinima]. En el caso de que [ticsDistanciaMinima] = 0
entonces no hay distancia mínima entre el precio y la media lenta como condición, pero
igualmente como mínimo el precio deberá ser igual a la media lenta o estar por encima de ella
en tendencia alcista o estar por debajo en tendencia bajista.
[precioEncimaDebajoFractalAnterior]
Si [precioEncimaDebajoFractalAnterior] = 'false', se ignora este parámetro.
Si [precioEncimaDebajoFractalAnterior] = 'true', se aplicará como condición que el precio esté
por encima/debajo del fractal anterior del TimeFrame indicado por el parámetro
[timeFrameFractales]. Para abrir un BUY, el precio deberá estar por encima del fractal superior
anterior, y para abrir un SELL, el precio deberá estar por debajo del fractal inferior anterior.
Esta condición siempre se aplica al gráfico de velas japonesas, incluso aunque
[graficoRenkoActivo] = 'true' y [controles_MM_RSI_en_Renko] = 'true'.
[mediasMovilesMinutosPausa]
Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones de Medias
Móviles (no importa si son o no en gráfico Renko), si esas condiciones no se cumplen, entonces
el robot quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar
crear la orden y de nuevo comprobará las condiciones para Medias Móviles (y cualquier otro
control que hayas activado). El tiempo que quieres que esté el robot pausado cuando no se
cumplen las condiciones de medias móviles que has definido es lo que debes indicar en este
parámetro, debes ponerlo en minutos. El robot no permite que este parámetro sea menor de 1.
CONTROL RSI
Si [graficoRenkoActivo] = true y [controles_MM_RSI_ADX_en_Renko] = true, entonces todas las
condiciones de RSI se aplicarán al gráfico Renko
[control_RSI]
Si [control_RSI] = 'Desactivado', el robot no aplicará ninguna condición de RSI al intentar abrir
una orden.Y todos los parámetros relacionados con RSI se ignoran.
Si [control_RSI] = 'Encima o debajo de [RSI_valorNivel_50]', lo que hará el robot es que para
poder abrir una orden BUY el RSI debe estar por encima del valor 50 más el valor que indiques
en el parámetro [RSI_valorNivel_50], y para poder abrir una orden SELL el RSI debe estar por
debajo del valor 50 menos el valor que indiques en el parámetro [RSI_valorNivel_50].
Si [control_RSI] = 'Salir de sobre compra (SELL) / Salir de sobre venta (BUY)’, el robot para
poder abrir una orden aplicará como condición que el RSI haya salido en la vela anterior de
sobre compra para un SELL y de sobre venta para un BUY.
Si [control_RSI] = 'Entrar en sobre compra (BUY) / Entrar en sobre venta (SELL)', el robot para
poder abrir una orden aplicará como condición que el RSI haya entrado en la vela anterior en
sobre compra para un BUY y haya entrado en sobre venta para un SELL. Esto es útil sobre todo
si el RSI se está calculando para un Time Frame superior al del gráfico en el cual estamos
operando.
[RSI_timeFrame]
En este parámetro debes indicar en qué Time Frame quieres que se hagan los cálculos del
indicador RSI. Puedes elegir un TF que sea igual o superior al TF del gráfico en el que está
insertado el robot. En caso de que estén activas las condiciones Renko para RSI entonces este
parámetro no se tiene en cuenta ya que los cálculos del RSI se harán para el gráfico Renko y ahí
no existe TF.
[RSI_periodos]
Aquí debes indicar los periodos que deseas que use el robot para el RSI.
[RSI_tipoPrecio]
Aquí debes seleccionar el tipo de precio que quieres que el robot aplique en el cálculo del RSI.
[RSI_sobreCompra]
Aquí debes definir el nivel de sobre compra que quieres que use el robot en caso de que
[control_RSI] = 'Salir de sobre compra o venta'.
[RSI_sobreVenta]
Aquí debes definir el nivel de sobre venta que quieres que use el robot en caso de que
[control_RSI] = 'Salir de sobre compra o venta'.
[RSI_segundosPausa]
Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones de RSI (no
importa si son o no en gráfico Renko), si esas condiciones no se cumplen, entonces el robot
quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la
orden y de nuevo comprobará las condiciones para RSI (y cualquier otro control que hayas
activado). El tiempo que quieres que esté el robot pausado cuando no se cumplen las
condiciones de RSI que has definido es lo que debes indicar en este parámetro, debes ponerlo
en segundos. El robot no permite que este parámetro sea menor de 10.
CONTROL ADX
A petición de muchos de vosotros he añadido el indicador ADX. Este indicador
es muy utilizado para analizar y detectar movimientos alcistas/bajistas. Se
puede usar a solas o en combinación con medias móviles u otros indicadores.
Este indicador aporta a Dantium más opciones para definir tu propia estrategia.
El indicador ADX calcula y dibuja 3
líneas:
● La línea principal llamada ADX
● La línea +DI
● La línea -DI
La línea +DI representa a los movimientos alcistas (suele ser
verde) La línea -DI representa a los movimientos bajistas
(suele ser roja)
Cuando la línea +DI está por encima de la línea -DI indica que el precio en este
momento está haciendo un movimiento alcista. Cuando es la línea -DI la que está
por encima de la línea +DI quiere decir que el precio en este momento está haciendo
un movimiento bajista. Cuanta más distancia haya entre las líneas +DI y -DI
pues mayor fuerza hay en el movimiento.
La línea ADX indica la fuerza del movimiento, no importa si el movimiento es
alcista o bajista. Por ejemplo si la línea +DI está por encima de la línea -DI y la línea
ADX es igual a
60, entonces eso indica que hay un fuerte movimiento alcista. Dependiendo del
número de periodos del ADX, del activo en el que estés operando y del TimeFrame
en el que se hacen los cálculos del ADX, se puede considerar que a partir de cierto
valor del ADX la tendencia o movimiento es fuerte. Por ejemplo si estás en
EURUSD,M15 y el ADX tiene 14 periodos, pues podríamos decir que cuando el
ADX vale más de 40 es porque hay un claro movimiento alcista o bajista.
La línea ADX no te indica si el movimiento es alcista o bajista (eso lo indican las líneas
+DI y
-DI). La línea ADX solamente indica la fuerza del
movimiento.
A continuación explico los parámetros del robot para el
indicador ADX.
si [graficoRenkoActivo] = true y [controles_MM_RSI_ADX_en_Renko] = true, entonces todas
las condiciones de ADX se aplicarán al gráfico Renko
[control_ADX]
Si [control_ADX] = ‘false’, el robot ignora todos los parámetros del ADX.
Si [control_ADX] = 'true', el robot para poder abrir una orden BUY aplicará como condición que
la línea +DI esté por encima de la línea -DI. Y para poder abrir una orden SELL aplicará como
condición que la línea -DI esté por encima de la línea +DI. En ambos casos también se aplicará
como condición que el valor de la línea ADX sea superior al valor indicado en el parámetro
[ADX_nivel].
[ADX_timeFrame]
En este parámetro debes indicar en qué Time Frame quieres que se hagan los cálculos del
indicador ADX. Puedes elegir un TF que sea igual o superior al TF del gráfico en el que está
insertado el robot. En caso de que estén activas las condiciones Renko para ADX entonces este
parámetro no se tiene en cuenta ya que los cálculos del ADX se harán para el gráfico Renko y
ahí no existe TF.
[ADX_periodos]
Aquí debes indicar los periodos que deseas usar para los cálculos del ADX.
[ADX_tipoPrecio]
Aquí debes seleccionar el tipo de precio que deseas usar para los cálculos del ADX.
[ADX_nivel]
El robot para abrir un BUY o un SELL usará como condición que el valor de la línea principal del
ADX sea mayor al valor que indiques en este parámetro. Esa línea es la que indica la fuerza del
movimiento, cuanto mayor sea su valor pues mayor fuerza tiene el movimiento (no importa si
el movimiento es alcista o bajista). Dependiendo de los periodos de cálculo del ADX, del TF y
del activo en el que operes, deberás indicar aquí un valor u otro según las exigencias de tu
estrategia.
[ADX_segundosPausa]
Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones de ADX (no
importa si son o no en gráfico Renko), si esas condiciones no se cumplen, entonces el robot
quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la
orden y de nuevo comprobará las condiciones para ADX (y cualquier otro control que hayas
activado). El tiempo que quieres que esté el robot pausado cuando no se cumplen las
condiciones de ADX que has definido es lo que debes indicar en este parámetro, debes ponerlo
en segundos. El robot no permite que este parámetro sea menor de 10.
REINICIO AUTOMÁTICO DE CICLO
[reinicioAutomaticoCiclo]
En este parámetro debes indicar la acción que quieres que ejecute el robot cuando se cierra un
ciclo. No importa si el ciclo cerrado ejecutó una orden o más, o si hay o no aumento de lotaje,
o si se trabaja o no en gráficos Renko, etc. Esta acción se aplicará siempre.
Si [reinicioAutomaticoCiclo] = 'Desactivado', este parámetro se ignora.
Si [reinicioAutomaticoCiclo] = 'Siempre', cuando se cierre un ciclo entonces el robot
automáticamente intentará iniciar otro, eso no quiere decir que lo inicie inmediatamente
porque eso dependerá de las condiciones que haya definidas en los controles de Rango
Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder iniciar el ciclo
inmediatamente por no cumplirse las condiciones de algún control, entonces el robot quedará
en pausa hasta poder realizar un nuevo intento de inicio de ciclo.
Si [reinicioAutomaticoCiclo] = 'LH-BUY y LH-SELL', cuando se cierre un ciclo entonces el robot
automáticamente colocará a una distancia por encima del precio una línea LH-BUY y por
debajo del precio a la misma distancia una línea LH-SELL. La distancia a las que coloca esas
líneas LH respecto del precio es la que indique el parámetro [ticsDistanciaLineasLH].
Si [reinicioAutomaticoCiclo] = 'LH BUY/SELL en Fractales', cuando se cierre un ciclo entonces el
robot automáticamente colocará una línea LH-BUY o LH-SELL en el fractal superior anterior y
otra línea LH-BUY o LH-SELL en el fractal inferior anterior. Será en los fractales cuyo TimeFrame
sea el que indica el parámetro [timeFrameFractales]. El fractal superior anterior debe estar por
encima del precio actual y el fractal inferior anterior debe estar por debajo del precio actual. La
línea que coloca en el fractal superior y el inferior será un LH-BUY o una línea LH-SELL
dependiendo del valor del parámetro [tipoLH_BUYSELL_Fractales].
Si [reinicioAutomaticoCiclo] = 'LH MADRE en Fractales', cuando se cierre un ciclo entonces el
robot automáticamente colocará una línea LHMADRE en el fractal superior anterior y otra
línea LHMADRE en el fractal inferior anterior. Será en los fractales cuyo TimeFrame sea el que
indica el parámetro [timeFrameFractales]. El fractal superior anterior debe estar por encima
del precio actual y el fractal inferior anterior debe estar por debajo del precio actual.
Nota 1: Si el precio alcanza una línea LHMADRE entonces el robot automáticamente colocará a
una distancia por encima del precio una línea LH-BUY y por debajo del precio a la misma
distancia una línea LH-SELL. La distancia a la que coloca esas líneas respecto del precio es la
que indique el parámetro [ticsDistanciaLineasLH].
Nota 2: Si el precio alcanza una línea LH-BUY entonces el robot intentará iniciar un ciclo con un
BUY y si el precio alcanza una línea LH-SELL entonces el robot intentará iniciar un ciclo con un
SELL. El robot no inicia el ciclo inmediatamente porque eso dependerá de las condiciones que
haya definidas en los controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En
caso de no poder iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún
control, entonces el robot quedará en pausa hasta poder realizar un nuevo intento de inicio de
ciclo. Si el robot está en modo 'UN CICLO BUY/SELL' entonces cuando intente crear por
ejemplo un BUY, si no puede pues intentará crear un SELL y viceversa.
PROGRAMACIÓN INICIO AUTOMÁTICO DE CICLO
Esta funcionalidad sirve para indicar al robot que ejecute alguna acción concreta cada día a
una hora exacta.
[inicio1Ciclo]
Si [inicio1Ciclo] = 'Desactivado', se ignora por completo la programación 1 de inicio de ciclo y
todos los parámetros relacionados con la programación 1 de inicio de ciclo.
Si [inicio1Ciclo] = 'orden BUY', a la hora exacta indicada el robot intentará iniciar un ciclo con
una orden BUY. Si el robot está en modo 'UN CICLO BUY/SELL' entonces cuando intente iniciar
un ciclo con un BUY, si no puede pues intentará iniciar el ciclo con un SELL. El robot no inicia el
ciclo inmediatamente porque eso dependerá de las condiciones que haya definidas en los
controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder
iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún control, entonces el
robot quedará en pausa hasta poder realizar un nuevo intento.
Si [inicio1Ciclo] = 'orden SELL', a la hora exacta indicada el robot intentará iniciar un ciclo con
una orden SELL. Si el robot está en modo 'UN CICLO BUY/SELL' entonces cuando intente iniciar
un ciclo con un SELL, si no puede pues intentará iniciar el ciclo con un BUY. El robot no inicia el
ciclo inmediatamente porque eso dependerá de las condiciones que haya definidas en los
controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder
iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún control, entonces el
robot quedará en pausa hasta poder realizar un nuevo intento.
Si [inicio1Ciclo] = 'LH-BUY y LH-SELL', a la hora exacta indicada el robot automáticamente
colocará a una distancia por encima del precio una línea LH-BUY y por debajo del precio a la
misma distancia una línea LH-SELL. La distancia a las que coloca esas líneas LH respecto del
precio es la que indique el parámetro [ticsDistanciaLineasLH].
Si [inicio1Ciclo] = 'LH BUY/SELL en Fractales', a la hora exacta indicada el robot
automáticamente colocará una línea LH-BUY o LH-SELL en el fractal superior anterior y otra
línea LH-BUY o LH-SELL en el fractal inferior anterior. Será en los fractales cuyo TimeFrame sea
el que indica el parámetro [timeFrameFractales]. El fractal superior anterior debe estar por
encima del precio actual y el fractal inferior anterior debe estar por debajo del precio actual. La
línea que coloca en el fractal superior y el inferior será una LH-BUY o una LH-SELL dependiendo
del valor del parámetro [tipoLH_BUYSELL_Fractales].
Si [inicio1Ciclo] = 'LH MADRE en Fractales', a la hora exacta indicada el robot automáticamente
colocará una línea LHMADRE en el fractal superior anterior y otra línea LHMADRE en el fractal
inferior anterior. Será en los fractales cuyo TimeFrame sea el que indica el parámetro
[timeFrameFractales]. El fractal superior anterior debe estar por encima del precio actual y el
fractal inferior anterior debe estar por debajo del precio actual.
Nota 1: Si el precio alcanza una línea LHMADRE entonces el robot automáticamente colocará a
una distancia por encima del precio una línea LH-BUY y por debajo del precio a la misma
distancia una línea LH-SELL. La distancia a la que coloca esas líneas respecto del precio es la
que indique el parámetro [ticsDistanciaLineasLH].
Nota 2: Si el precio alcanza una línea LH-BUY entonces el robot intentará iniciar un ciclo con un
BUY y si el precio alcanza una línea LH-SELL entonces el robot intentará iniciar un ciclo con un
SELL. Pero eso no quiere decir que inicie el ciclo inmediatamente porque eso dependerá de las
condiciones que haya definidas en los controles de Rango Temporal, Spread, Medias Móviles,
Renko, RSI etc. En caso de no poder iniciar el ciclo inmediatamente por no cumplirse las
condiciones de algún control, entonces el robot quedará en pausa hasta poder realizar un
nuevo intento de inicio de ciclo. Si el robot está en modo 'UN CICLO BUY/SELL' entonces
cuando intente crear por ejemplo un BUY, si no puede pues intentará crear un SELL y
viceversa.
LOS PARÁMETROS DE LA "PROGRAMACIÓN INICIO 2 CICLO" SON IDÉNTICOS A LOS DE LA 1
LÍNEAS LH
[ticsDistanciaLineasLH]
En este parámetro debes indicar la distancia en tics a la que quieres que el robot dibuje de
forma automática una línea LHBUY por encima del precio y una línea LHSELL por debajo del
precio. El robot dibuja esas líneas cuando el precio alcanza una línea LHMADRE o cuando
alguno de los siguientes parámetros es = 'LH-BUY y LH-SELL'; ([reinicioAutomaticoCiclo];
[inicio1Ciclo]; [inicio2Ciclo]).
FRACTALES
[timeFrameFractales]
En este parámetro debes indicar el TimeFrame que quieres que use el robot para calcular los
fractales anteriores superior e inferior.
El robot calcula esos fractales cuando el parámetro [precioEncimaDebajoFractalAnterior] =
'true' o cuando alguno de los siguientes parámetros es = 'LH BUY/SELL en Fractales';
([reinicioAutomaticoCiclo]; [inicio1Ciclo]; [inicio2Ciclo]).
[tipoLH_BUYSELL_Fractales]
Si tipoLH_BUYSELL_Fractales = 'Rebote en el fractal', cuando el robot dibuje líneas LH en los
fractales superior e inferior, dibujará una línea LH-SELL en el fractal superior y una línea LH-
BUY en el fractal inferior.
Si tipoLH_BUYSELL_Fractales = 'Rotura del fractal', cuando el robot dibuje líneas LH en los
fractales superior e inferior, dibujará una línea LH-BUY en el fractal superior y una línea LH-
SELL en el fractal inferior.
CONTROL DEL CICLO (importante)
Una vez se abra un ciclo de órdenes, por precaución NO debes tocar absolutamente nada de
ese gráfico (ni cambiar de TF, ni modificar el robot, ni indicadores, ni nada de nada), Y MUCHO
MENOS MODIFICAR LAS ÓRDENES ABIERTAS POR EL ROBOT o CERRAR EL MT4 o APAGAR EL PC
o SUSPENDER EL PC, porque si haces cualquiera de esas cosas entonces puedes provocar que
el robot pierda el control del ciclo abierto y deje de actuar. Si alguna de esas cosas ocurriera y
no te das cuenta puede ser muy peligroso. ¿Cómo sabes que el robot tiene el control? Pues
mientras el robot NO diga en pantalla "NO HAY CICLO" y el número de órdenes que indica sea
correcto, entonces el robot sigue teniendo el control del ciclo, pero si alguna de estas 2 cosas
no es así, entonces es que algo raro ocurre. ACONSEJO AÑADIR EL ROBOT A UN GRÁFICO
DONDE SOLAMENTE ESTÉ EL ROBOT, y para otros indicadores o análisis uses otra ventana del
mismo activo. El robot no es quien pierde el control del ciclo, en realidad cuando esto ocurre
es porque el MetaTrader es quien le quita el control del ciclo al robot debido a alguna acción o
evento que provocó que el MetaTrader borrase la información que el robot tiene sobre el ciclo
almacenada en la memoria del MetaTrader. Cuando el MetaTrader elimina esos datos de la
memoria el robot pierde el control del ciclo debido a que pierde toda la información.

Más contenido relacionado

La actualidad más candente (20)

Tecnología 123
Tecnología 123Tecnología 123
Tecnología 123
 
Clase7 fp
Clase7 fpClase7 fp
Clase7 fp
 
Pseint
PseintPseint
Pseint
 
5.quinto ejercicio emu8086
5.quinto ejercicio emu80865.quinto ejercicio emu8086
5.quinto ejercicio emu8086
 
PSEINT
PSEINT PSEINT
PSEINT
 
Presentaciones de la_instruccion_for
Presentaciones de la_instruccion_forPresentaciones de la_instruccion_for
Presentaciones de la_instruccion_for
 
Señal alcista de las tortugas en la energía
Señal alcista de las tortugas en la energíaSeñal alcista de las tortugas en la energía
Señal alcista de las tortugas en la energía
 
6.sexto ejercicio emu8086
6.sexto ejercicio emu80866.sexto ejercicio emu8086
6.sexto ejercicio emu8086
 
Estructuras de control repetitivas
Estructuras de control repetitivasEstructuras de control repetitivas
Estructuras de control repetitivas
 
Sentencia do while
Sentencia do whileSentencia do while
Sentencia do while
 
Slide share
Slide shareSlide share
Slide share
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Japanese Stantard Spanish
Japanese Stantard SpanishJapanese Stantard Spanish
Japanese Stantard Spanish
 
Traza de un algoritmo
Traza de un algoritmoTraza de un algoritmo
Traza de un algoritmo
 
Lógica de programación basico
Lógica de programación basicoLógica de programación basico
Lógica de programación basico
 
Monitores
MonitoresMonitores
Monitores
 
Estructuras selectivas
Estructuras selectivasEstructuras selectivas
Estructuras selectivas
 
Herramienta timer
Herramienta timerHerramienta timer
Herramienta timer
 
El uso de los stops,finalizado
El uso de los stops,finalizadoEl uso de los stops,finalizado
El uso de los stops,finalizado
 
Super análisis de bolsa.
Super análisis de bolsa.Super análisis de bolsa.
Super análisis de bolsa.
 

Similar a Robot dantium

Excel - Variables y condicionales
Excel - Variables y condicionalesExcel - Variables y condicionales
Excel - Variables y condicionalesAndres Bedoya Tobon
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivasAbrirllave
 
Estructura de control do while y do until
Estructura de control do while y do untilEstructura de control do while y do until
Estructura de control do while y do untilKarla Pabón Vallejo
 
Programación en lenguaje C
Programación en  lenguaje C Programación en  lenguaje C
Programación en lenguaje C Fer Torres
 
Variables Visual
Variables VisualVariables Visual
Variables Visualnera24mx
 
Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.DENIRAMIREZANDRADE
 
Programación de nivel básico 3. c1. p2.
Programación de nivel básico 3. c1. p2.Programación de nivel básico 3. c1. p2.
Programación de nivel básico 3. c1. p2.DENIRAMIREZANDRADE
 
Semana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptxSemana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptxCarlos Díaz Sánchez
 
Estructura de selección, ciclo y contador (counter)
Estructura de selección, ciclo y contador (counter)Estructura de selección, ciclo y contador (counter)
Estructura de selección, ciclo y contador (counter)Karla Pabón Vallejo
 
Presentacion ciclos-1
Presentacion ciclos-1Presentacion ciclos-1
Presentacion ciclos-1sena
 
Ciclos for , while y herramientas case
Ciclos for , while y herramientas caseCiclos for , while y herramientas case
Ciclos for , while y herramientas caseAlejandroAlmentero
 
Do while, for y foreach
Do while, for y foreachDo while, for y foreach
Do while, for y foreachRogDer
 
Estructuras repetitivas (bloques de instrucciones)
Estructuras repetitivas (bloques de instrucciones)Estructuras repetitivas (bloques de instrucciones)
Estructuras repetitivas (bloques de instrucciones)Royer Lopez Nuñez
 
Sentencia de control
Sentencia de controlSentencia de control
Sentencia de controlStalyn Cruz
 

Similar a Robot dantium (20)

Excel - Variables y condicionales
Excel - Variables y condicionalesExcel - Variables y condicionales
Excel - Variables y condicionales
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivas
 
Estructura de control do while y do until
Estructura de control do while y do untilEstructura de control do while y do until
Estructura de control do while y do until
 
Programación en lenguaje C
Programación en  lenguaje C Programación en  lenguaje C
Programación en lenguaje C
 
Ciclos
CiclosCiclos
Ciclos
 
Algoritmo Repetitivo
Algoritmo RepetitivoAlgoritmo Repetitivo
Algoritmo Repetitivo
 
Variables Visual
Variables VisualVariables Visual
Variables Visual
 
Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.Programación de nivel básico 3. c2. p2.
Programación de nivel básico 3. c2. p2.
 
Programación de nivel básico 3. c1. p2.
Programación de nivel básico 3. c1. p2.Programación de nivel básico 3. c1. p2.
Programación de nivel básico 3. c1. p2.
 
Informe de pseint
Informe de pseintInforme de pseint
Informe de pseint
 
Semana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptxSemana 05 - Estructuras repetitivas (1).pptx
Semana 05 - Estructuras repetitivas (1).pptx
 
Estructura de selección, ciclo y contador (counter)
Estructura de selección, ciclo y contador (counter)Estructura de selección, ciclo y contador (counter)
Estructura de selección, ciclo y contador (counter)
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentacion ciclos-1
Presentacion ciclos-1Presentacion ciclos-1
Presentacion ciclos-1
 
Ciclos for , while y herramientas case
Ciclos for , while y herramientas caseCiclos for , while y herramientas case
Ciclos for , while y herramientas case
 
Do while, for y foreach
Do while, for y foreachDo while, for y foreach
Do while, for y foreach
 
Pseint terminado
Pseint terminadoPseint terminado
Pseint terminado
 
Estructuras repetitivas (bloques de instrucciones)
Estructuras repetitivas (bloques de instrucciones)Estructuras repetitivas (bloques de instrucciones)
Estructuras repetitivas (bloques de instrucciones)
 
Pseint
Pseint Pseint
Pseint
 
Sentencia de control
Sentencia de controlSentencia de control
Sentencia de control
 

Último

Taller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uMLTaller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uMLAderMogollonLuna
 
PPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptxPPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptxDanmherJoelAlmironPu
 
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdfTALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdfMiguelGomez900779
 
DIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptx
DIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptxDIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptx
DIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptxjoselinepolar
 
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptxPPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptxNeymaRojasperez1
 
Presentación Materiales para la Construcción.ppt
Presentación Materiales para la Construcción.pptPresentación Materiales para la Construcción.ppt
Presentación Materiales para la Construcción.pptCARLOSAXELVENTURAVID
 

Último (6)

Taller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uMLTaller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uML
 
PPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptxPPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptx
 
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdfTALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
 
DIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptx
DIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptxDIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptx
DIAPOSITIVAS DRENAJE POSTURAL E INHALACIONES (3).pptx
 
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptxPPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
 
Presentación Materiales para la Construcción.ppt
Presentación Materiales para la Construcción.pptPresentación Materiales para la Construcción.ppt
Presentación Materiales para la Construcción.ppt
 

Robot dantium

  • 1. ROBOT PARA METATRADER 4 WT_DANTIUM IMPORTE OBJETIVO [tipoValorImporteObjetivo] Aquí debes indicar qué tipo de dato o valor vas a definir en el parámetro [valorImporteObjetivo]. Puede ser el lotaje de la primera orden de todos los ciclos o un importe económico exacto (en la divisa que definiste en el parámetro [divisaCuenta]). [valorImporteObjetivo] Aquí debes indicar el importe que quieres ganar cuando cierre el ciclo o el lotaje de la primera orden de un ciclo. Si defines un importe pues ese será el importe objetivo que se usará como profit objetivo del ciclo y por tanto el importe que se aplica a la hora de calcular el lotaje de las órdenes del ciclo. En caso de que definas un lotaje pues lo primero que hace el robot es que a partir de ese lotaje y el TP que hayas definido en el parámetro [tics_Takeprofit] calcula el importe objetivo y será ese el que use el robot para los cálculos de los lotajes de las órdenes y como objetivo del ciclo. Ese importe objetivo calculado por el robot, te lo indica el robot en la pestaña "Expertos" del Terminal de tu MT4, que es donde deberías estar mirando todo el tiempo para ver siempre lo que ocurre. RANGO TEMPORAL [rangoTemporalActivo] Este parámetro es muy importante. Aquí debes indicar al robot si quieres que tenga o no en cuenta el rango temporal. Si quieres que lo tenga en cuenta entonces este parámetro debe ser TRUE. Si en algún momento el robot quiere realizar una acción (como abrir una orden de un ciclo ya iniciado o iniciar un nuevo ciclo), en caso de que este parámetro sea TRUE el robot comprobará si la fecha/hora actual del servidor está o no dentro del rango temporal definido (el rango temporal se define en los parámetros que explico más abajo). Si la fecha/hora actual del servidor está dentro del rango temporal entonces el robot ejecutará la acción, pero si no es así entonces el robot quedará pausado varios minutos. Pasado ese tiempo el robot de nuevo comprobará si la fecha/hora actual del servidor está dentro del rango temporal y si no lo está entonces de nuevo el robot quedará pausado, y así sucesivamente hasta que la fecha/hora del servidor esté dentro del rango temporal.
  • 2. ESTO ES MUY ÚTIL PORQUE TE ASEGURA QUE EL ROBOT SOLAMENTE OPERARÁ EN LOS DÍAS Y HORARIOS QUE TÚ DEFINAS. Un ejemplo: Imagina que un ciclo ya está ejecutándose y se ha abierto la orden 4 del ciclo. Supongamos que la orden se cierra y el profit total alcanzado es de 70 euros, pero el profit total que se debe conseguir es de 150 euros por lo tanto el robot se dispondrá a abrir otra nueva orden para obtener el profit restante. Pero si resulta que la fecha/hora actual del servidor ya no está dentro del rango temporal entonces el robot no creará la nueva orden y dejará el CICLO PAUSADO varios minutos. Una vez acabe la pausa entonces volverá de nuevo a comprobar si ya se cumple el rango temporal, y si no se cumple pues de nuevo quedará pausado y así sucesivamente hasta que se cumpla el rango temporal, y cuando ya se cumpla el rango temporal entonces el robot creará la nueva orden del ciclo. [inicioRango_horaVela] Este parámetro sólo se tiene en cuenta cuando el parámetro [rangoTemporalActivo] es igual a TRUE. Aquí debes indicar la hora de inicio del rango temporal en el que quieres que se permita iniciar ciclos o crear nuevas órdenes dentro de un ciclo ya abierto. [finRango_horaVela] Este parámetro sólo se tiene en cuenta cuando el parámetro [rangoTemporalActivo] es igual a TRUE. Aquí debes indicar la hora de fin del rango temporal en el que quieres que se permita iniciar ciclos o crear nuevas órdenes dentro de un ciclo ya abierto. [rango_DiasSemana] Este parámetro sólo se tiene en cuenta cuando el parámetro [rangoTemporalActivo] es igual a TRUE. Aquí debes indicar los días de la semana del rango temporal en el que quieres que se permita iniciar ciclos o crear nuevas órdenes dentro de un ciclo ya abierto. Cada día de la semana es una letra mayúscula y van separados por #. El Miércoles se escribe con una X. Ejemplo 1 --> L#M#X#J#V Ejemplo 2 --> L#X#V [rangoMinutosPausaOrden] Cuando el robot quiere abrir una orden, en caso de que hayas definido un Rango Temporal, si el día/hora actual no está dentro del rango que has definido, entonces el robot quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará el control de Rango Temporal (y cualquier otro control que hayas activado). El tiempo que quieres que esté el robot pausado cuando no se cumple el rango temporal que has definido es lo que debes indicar en este parámetro, debes ponerlo en minutos. El robot no permite que este parámetro sea menor de 1.
  • 3. Nota: Cuando el robot comprueba si se cumple o no el rango temporal, lo hace mirando la hora del servidor al que te has conectado, así que no importa en qué TimeFrame esté el gráfico del activo en el cual estás usando el robot. CONTROL DE SPREAD [spreadMaximo] Este parámetro es muy importante. Uno de los principales problemas del trading es el Spread, el cual puede variar de forma inesperada en cualquier momento alcanzando valores muy altos, lo cual afecta enormemente a nuestro trading. El Spread (junto con los GAPS) es la mejor arma que el mercado usa contra nosotros para perjudicarnos cuando le apetece . Cuando el Spread aumenta lo que ocurre es que el precio ASK se aleja mucho del precio BID, o sea que el precio ASK sube bastantes pips hacia arriba, eso puede afectar mucho a tu operativa porque te puede cerrar órdenes SELL en pérdidas a pesar de tener su SL bastante lejos del precio actual y también te puede abrir órdenes BUY en zonas muy altas provocando grandes pérdidas desde el inicio. Operar cuando hay un Spread elevado es muy arriesgado si no eres muy experto o si operas en TimeFrames bajos con distancias cortas. Por defecto este parámetro es = 20. Podemos configurar el robot para que quede PAUSADO mientras haya un Spread que no nos interese (sería una pausa automática porque la ejecuta el robot de forma automática). Esto se puede hacer usando el parámetro [spreadMaximo] en el cual debes indicar el número de TICS de Spread máximo que quieres soportar mientras el robot abre órdenes. Si el Spread del activo es superior a ese valor entonces el robot quedará pausado durante unos segundos, una vez pasado ese tiempo volverá de nuevo a comprobar el Spread del activo, si ve que sigue siendo elevado pues el robot quedará pausado de nuevo, y así sucesivamente hasta que el Spread esté por debajo del valor que hayamos configurado, cuando eso ocurra es entonces cuando el robot ejecutará la nueva orden o iniciará un ciclo. [spreadSegundosPausaOrden] Cuando el robot quiere abrir una orden, en caso de que hayas definido un spread Maximo, si el spread actual del activo es igual o mayor que ese spreadMaximo, entonces el robot quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará el control de Spread (y cualquier otro control que hayas activado). El tiempo que quieres que esté el robot pausado cuando el spread actual del activo es mayor que el spread Maximo que has definido es lo que debes indicar en este parámetro, debes ponerlo en segundos. El robot no permite que este parámetro sea menor de 10.
  • 4. UTILIZAR EL ROBOT EN GRÁFICOS QUE NO SON DE DIVISAS En la parte superior de esta página hay un link de color azul y con letras grandes que te dará acceso a una explicación detallada de cómo utilizar mis robots para operar en gráficos que no son pares de divisas. [graficoDivisas] Si el activo en el que quieres operar es un gráfico de divisas donde la divisa base (la de la izquierda) es EUR, USD, GBP, AUD, NZD, CAD o CHF, entonces este parámetro debe ser igual a TRUE. En cualquier otro caso, el parámetro debe ser FALSE. [valorLotexPIP] Este parámetro sólo se tiene en cuenta cuando el parámetro [graficoDivisas] es igual a FALSE. Aquí debes indicar el importe que se gana/pierde por lote para una distancia de 1 pip en el activo en el que quieres operar. Por ejemplo, supongamos que la divisa de la cuenta es el USD, y que el gráfico es el DAX, y en ese gráfico cuando el precio recorre 1 pip, por cada lote se gana/pierde 0.12 USD. Entonces aquí debes escribir el valor 0.12 [redondeoVolumen] Existen activos que no son de divisas (principalmente índices) donde se puede operar como mucho con 1 decimal en el volumen, en algunos casos incluso no se permite ningún decimal. Este parámetro solamente se tiene en cuenta cuando el parámetro [graficoDivisas] es igual a FALSE. Aquí debes indicar qué tipo de redondeo quieres que se aplique en el volumen de las órdenes. El robot siempre redondea al alza. Por ejemplo, si el volumen calculado por el robot es de 1.32 lotes y el redondeo es a 1 decimal entonces el volumen redondeado será 1.4 lotes, y si el redondeo es a cero decimales entonces el volumen redondeado será 2. MODO FUNCIONAMIENTO [aumentoLotajeActivo] Si [aumentoLotajeActivo] = 'true', cuando se pierde una orden luego el robot cuando ejecute otra orden lo hará aumentando el volumen para recuperar la pérdida de la orden anterior. De esta manera se ejecuta un ciclo. Un ciclo puede empezar con un BUY o un SELL, y en el momento que se gane la orden abierta pues el ciclo acaba (se cierra), pero si la orden abierta se pierde entonces el ciclo continuará iniciado (o abierto) y cuando el robot ejecute otra orden lo hará aumentando el volumen para recuperar la pérdida de la orden anterior. El robot puede ejecutar uno o muchos ciclos, dependiendo de cómo lo configures. Un ciclo se puede iniciar manualmente, o usando las líneas LH o las configuraciones de inicio y reinicio automático.
  • 5. Si [aumentoLotajeActivo] = 'false', cuando se pierde la primera orden del ciclo entonces se cierra el ciclo y luego el robot cuando ejecute otra orden lo hará sin aumentar el volumen y será un nuevo ciclo, o sea que cada ciclo tendrá sólo 1 orden. Solamente funciona cuando [modoFuncionamiento] = 'UN CICLO BUY/SELL' [minimoLotajeIgualOrden1] Si operas con Dantium y no usas aumento de lotaje entonces el parámetro [minimoLotajeIgualOrden1] no tiene ninguna utilidad. Pero si operas usando el aumento de lotaje, entonces te interesa este parámetro, sobre todo ahora que el robot incluye BreakEven y TrailingStop. Gracias al BreakEven y al TrailingStop una orden de un ciclo no solamente puede no generar pérdidas sino que además puede generar ganancias aunque aún no se haya alcanzado el objetivo del ciclo. Eso puede provocar que la siguiente orden del ciclo tenga menor lotaje que la orden recién cerrada e incluso menor lotaje que la orden 1 del ciclo. Pongo un ejemplo: Tenemos un importe objetivo de 100 euros y se abre una orden, la cual ejecuta el TrailingStop y finalmente el precio toca su SL en zona positiva y se obtienen 40 euros de ganancia. Aún el ciclo no termina porque el robot tiene como objetivo ganar 100 euros por ciclo. Pero como ya se han ganado 40 euros entonces el robot al calcular el lotaje de la siguiente orden, no solamente no aumenta el lotaje de la siguiente orden sino que además lo reduce porque ahora usa el lotaje necesario para ganar 60 euros y no 100, porque 60 es lo que falta para llegar a 100 debido a que ya hemos ganado 40. Eso provoca que el lotaje de la siguiente orden sea muy bajo, incluso que sea inferior al lotaje de la orden 1 del ciclo. Pero si la nueva orden no se gana o tampoco se alcanza el objetivo, el ciclo continuará, y esto puede ocurrir muchas veces de forma que el ciclo se puede alargar demasiado en el tiempo. Para evitar esto lo mejor es que si usas aumento de lotaje y también usas BreakEven y/o algún tipo de TrailingStop pues que entonces el parámetro [minimoLotajeIgualOrden1] lo actives (lo pongas = true). [modoFuncionamiento] UN CICLO: Cuando se inicia un ciclo, podrá hacerlo en cualquier momento con un BUY o con un SELL, y una vez iniciado el ciclo, si está activo el aumento de lotaje, el resto de órdenes del mismo ciclo serán todas del mismo tipo que la primera orden del ciclo. Si el aumento de lotaje está desactivado entonces los ciclos simplemente tendrán 1 orden, que podrá ser un BUY o un SELL. DOS CICLOS: Es exactamente igual que el modo UN CICLO, pero con la gran diferencia de que siempre se están ejecutando dos ciclos a la vez, uno siempre es opuesto al otro. Si el ciclo principal se inicia con un BUY pues el otro ciclo lo hará con SELL y viceversa. Esto es lo mismo que si tenemos el robot insertado en dos ventanas del mismo activo en modo UN CICLO, pero que en una ventana siempre ejecuta órdenes opuestas a las de la otra ventana. El robot lo hace todo dentro de la misma ventana. UN CICLO BUY/SELL: Es como el modo UN CICLO pero con la diferencia de que dentro de un mismo ciclo las órdenes pueden ser tanto BUYs como SELLs. Este modo solamente funciona si se ha definido alguna condición para Medias Móviles y/o RSI y/o gráficos Renko. Cuando va a abrir un BUY, si por alguna condición no puede entonces mira si se puede abrir un SELL. El robot siempre que deba abrir una orden, dicha orden podrá ser tanto un SELL como un BUY, dependiendo de si se cumplen o no las condiciones para abrir un SELL o un BUY. No importa si la orden es para iniciar un ciclo o es para abrir
  • 6. un nueva orden dentro de un ciclo ya abierto de antes. Haya o no aumento de lotaje, el robot podrá funcionar en este modo. En caso de que haya aumento de lotaje entonces el robot podrá crear una o más órdenes dentro de un ciclo, y en caso de que no haya aumento de lotaje entonces cada ciclo tendrá solamente una orden. Nota: Debes saber que en Dantium para abrir una orden se deben cumplir todas las condiciones y controles que hayas definido en los parámetros del robot (control spread, rango temporal, condiciones renko, Órdenes Perdidas Consecutivas (OPC), Medias Móviles, RSI). Esto es así siempre, haya o no aumento de lotaje, en cualquier modo de funcionamiento y se use o no el gráfico de Velas Renko. Ejecutar una orden puede ser para iniciar un nuevo ciclo. Pero en caso de que esté activo el aumento de lotaje, entonces ejecutar una orden también puede ser para abrir una orden dentro de un ciclo ya iniciado. BREAK EVEN [ejecutarBreakEven] Sirve para activar o no la ejecución del BreakEven. Sus valores son TRUE o FALSE. [ticsEjecucionBreakEven] Si el parámetro [ejecutarBreakEven] es TRUE entonces este parámetro no puede ser menor de 10. El BreakEven se ejecutará cuando el precio esté a un número de tics de distancia a favor respecto del precio de apertura de la orden. Ese número de tics es el que se indica en este parámetro. Por ejemplo, si la orden es un BUY y éste parámetro vale 150, entonces si el precio sube y se aleja al menos 150 tics por encima del BUY el robot ejecutará el BreakEven y moverá el SL de la orden BUY a empate, y le añadirá o no tics adicionales dependiendo de lo que configures en el parámetro [ticsAdicionalesBreakEven]. [ticsAdicionalesBreakEven] No puede ser menos de cero. El robot solamente lo tiene en cuenta si el parámetro [ejecutarBreakEven] es TRUE. Si este parámetro es cero entonces aunque se ejecute el BreakEven este parámetro no tendrá ningún efecto (el robot lo ignorará). Pero si este parámetro es mayor que cero entonces cuando se ejecute el BreakEven, el SL se colocará en zona positiva un nº de tics, que son los tics adicionales definidos en este parámetro, eso asegurará una mínima ganancia. TRAILING STOP
  • 7. TRAILING STOP (TS) En las versiones anteriores ya existía el Trailing Stop (desde ahora lo llamaré TS). En esta versión he hecho unos cambios y mejoras en el TS. Si activas esta funcionalidad entonces el robot estará todo el tiempo analizando si puede o no ejecutar el TS (este proceso lo realiza contodaslasórdenesdelciclo). Cuando en una orden se cumplan las condiciones entonces el robot ejecutará el TS para esa orden. Las condiciones son las indicadas en todos los parámetros del TS. El TS consiste en mover el SL de la orden con la intención de que el SL vaya avanzando y “persiguiendo” al precio en los movimientos que haga el precio en sentido favorable a la orden. En Perseguido el TS de una orden tiene 2 fases distintas durante su ejecución. La fase 1 es cuando el TS se ejecuta porprimeravez en la orden. La fase 2 es el resto de veces que el TS se ejecuta para esa orden, o sea cada vez que el robot de nuevo mueve el SL de la orden “persiguiendo” al precio. En la siguiente página explico los parámetros de esta funcionalidad. PARÁMETROS TRAILING STOP (TS) [TS_tipoTrailingStop] Tiene 3 opciones: No ejecutar TrailingStop El robot no ejecutará el TS en ninguna orden aunque se cumplan las condiciones. Ejecutar TrailingStop desde apertura orden (sin BreakEven) El BreakEven debe estar desactivado. Cuando el precio alcance la distancia indicada respecto del precio de apertura de una orden, entonces se ejecutará el TS por primera vez en esa orden (fase 1), y no importa si el SL queda o no en zona negativa. Luego el SL irá persiguiendo al precio todo el tiempo según las condiciones indicadas en los otros parámetros (fase 2).
  • 8. Ejecutar TrailingStop después de ejecutar BreakEven El BreakEven debe estar activado. El TS se ejecutará solamente en caso de que el BreakEven ya se haya ejecutado. Cuando el precio alcance la distancia indicada respecto del precio de apertura de una orden, entonces se ejecutará el TS por primera vez en esa orden (fase 1). Luego el SL irá persiguiendo al precio todo el tiempo según las condiciones indicadas en los otros parámetros (fase 2). [TS_ticsDistanciaEjecucion_1] Cuando el precio se aleja avanzando a favor de la orden y alcanza una distancia respecto al PRECIO DE APERTURA DE LA ORDEN, entonces el TS se ejecuta por primera vez (fase 1). Esa distancia en tics es la que debes indicar en este parámetro. Sólo se tiene en cuenta esta distancia para la primera ejecución del TS en una orden (fase 1), y se mide respecto del precio de apertura de la orden. [TS_ticsDistancia_SL] En este parámetro debes indicar la distancia en tics a la que queremos que se mantenga el SL de la orden respecto del precio cada vez que se ejecuta el TS y se mueve el SL. Siempre que el TS se ejecute el SL se colocará a esta distancia en tics respecto del precio, no importa si es o no la primera vez que el TS se ejecuta en la orden, o sea no importa si es la fase 1 o 2. [TS_ticsRecorridoPrecio] Cuando el TS ya se ejecutó por primera vez en la orden (ya pasó la fase 1) y estamos en la fase 2. Este parámetro indica cuántos tics debe alejarse de nuevo el precio a favor de la orden y respecto a la posición actual del SL para que de nuevo el TS se ejecute y de nuevo se mueva el SL a [TS_ticsDistancia_SL] respecto del precio. Resumiendo, para que el TS se ejecute y mueva de nuevo el SL, el precio debe alejarse hacia zona positiva al menos la distancia que indica este parámetro respecto del SL. Esto solamente es en la fase 2. [TS_eliminarTakeProfit] Cuando el TS se ejecuta por primera en una orden (fase 1), el TakeProfit de la orden se elimina en caso de que este parámetro sea = true. La utilidad de esto es que al no haber TakeProfit cabe la posibilidad de maximizar las ganancias en caso de que el precio siga avanzando más allá de donde estaba el TakeProfit. Esto suele ocurrir muchas veces, y puede generar grandes ganancias. En Dantium además hay una nueva opción en el TrailingStop que está relacionada con el Profit Total de Ciclo, la cual explico en este mismo documento más abajo. En Dantium además hay una nueva opción en el TrailingStop que está relacionada con el Profit Total de Ciclo, la cual explico en este mismo documento más abajo.
  • 9. VOLUMEN MÍNIMO = ORDEN 1 DEL CICLO Si operas con Dantium y no usas aumento de lotaje entonces el parámetro [minimoLotajeIgualOrden1] no tiene ninguna utilidad. Pero si operas usando el aumento de lotaje, entonces te interesa este parámetro, sobre todo ahora que el robot incluye BreakEven y TrailingStop. Gracias al BreakEven y al TrailingStop una orden de un ciclo no solamente puede no generar pérdidas sino que además puede generar ganancias aunque aún no se haya alcanzado el objetivo del ciclo. Eso puede provocar que la siguiente orden del ciclo tenga incluso menor lotaje que la orden recién cerrada e incluso menor lotaje que la orden 1 del ciclo. Pongounejemplo: Tenemos un importe objetivo de 100 euros y se abre una orden, la cual ejecuta el TrailingStop y finalmente el precio toca su SL en zona positiva y se obtienen 40 euros de ganancia. Aún el ciclo no termina porque el robot tiene como objetivo ganar 100 euros por ciclo. Pero como ya se han ganado 40 euros entonces el robot al calcular el lotaje de la siguiente orden, no solamente no aumenta el lotaje de la siguiente orden sino que además lo reduce porque ahora usa el lotaje necesario para ganar 60 euros y no 100, porque 60 es lo que falta para llegar a 100 debido a que ya hemos ganado 40. Eso provoca que el lotaje de la siguiente orden sea muy bajo, incluso que sea inferior al lotaje de la orden 1 del ciclo. Pero si la nueva orden no se gana o tampoco se alcanza el objetivo, el ciclo continuará, y esto puede ocurrir muchas veces de forma que el ciclo se puede alargar demasiado en el tiempo. Para evitar esto lo mejor es que si usas aumento de lotaje y también usas BreakEven y/o algún tipo de TrailingStop pues que entonces el parámetro [minimoLotajeIgualOrden1] lo actives (que sea = true). TRAILING STOP SEGÚN PROFIT TOTAL CICLO (PTC) Esta funcionalidad pertenece a la de Trailing Stop que hay más arriba, pero he preferido explicarlo aparte porque es la misma funcionalidad que la de PTC (Profit Total Ciclo) que hay en Perseguido para cuando la acción a realizar es el Trailing Stop. Las explicaciones de esta funcionalidad del robot Perseguido las encontrarás en el PDFdelaversión2.5Build1 del robot Perseguido y también en el tercer vídeo del robot (que es el vídeo de la versión 2.5 Build 1) el cual encontrarás aquíenmi canal principaldeYouTube. Esta funcionalidad consiste en que le puedes indicar al robot que el Trailing Stop se ejecute solamente cuando el ciclo alcanza un profit total positivo. Ese profit total a alcanzar lo debes definir en el parámetro [TS_importeProfitTotalCiclo]
  • 10. Para activar esta funcionalidad debes poner que: [TS_tipoTrailingStop] = “Ejecutar TrailingStop si [TS_importeProfitTotalCiclo] alcanzado” Imagina que pones que [TS_importeProfitTotalCiclo] es = 50; Y el importe objetivo del ciclo es 100 euros. Si activas esta funcionalidad configurando el parámetro [TS_tipoTrailingStop], lo que ocurrirá es que cuando el ciclo alcance un profit total de 50 euros o más entonces el robot ejecutará el TrailingStop, utilizando los valores que hayas definido en el resto de parámetros de la funcionalidad de Trailing Stop. De esta manera cuando el ciclo ya está en positivo tienes la posibilidad de asegurar ganancias, y si además le dices al robot que elimine el TakeProfit puede que incluso consigas maximizar ganancias en caso de que se produzca un fuerte movimiento del precio a tu favor. Si operas en un activo que suele hacer fuertes impulsos con largos recorridos sin apenas grandes retrocesos, entonces es mejor eliminar el TP, pero en otro caso es mejor no eliminar el TP, así cuando el precio lo alcanza aseguras que cumples el objetivo y en caso de querer seguir operando pues con el reinicio de ciclo puedes seguir operando y aprovechar el movimiento del precio.
  • 11. % BALANCE SOPORTADO Esta funcionalidad solamente se tiene en cuenta cuando el aumento de lotaje está activo Sirve para evitar que el robot abra dentro de un ciclo más órdenes de las deseadas para que así no se aumente el riesgo de tener mayores posibles pérdidas. Consiste simplemente en indicar un % del balance de la cuenta. Entonces el robot cuando inicia un ciclo mira qué balance hay, y si luego en algún momento durante la ejecución del ciclo se pierde una orden y eso provoca que la pérdida total acumulada del ciclo sea igual o mayor al % de balance soportado, entonces el robot ya no abre más órdenes en ese ciclo y lo cierra (ya no aumenta más volumen). Luego puede o no iniciar un nuevo ciclo de forma automática dependiendo de la configuración definida en los parámetros. A ese porcentaje lo llamo % de balance soportado. [accion_PBS] Si [accion_PBS] = 'Reiniciar ciclo', cuando se cierre un ciclo porque su pérdida ya alcanzó el % del balance soportado, el robot iniciará un nuevo ciclo de forma automática (eso no implica que el nuevo ciclo ya directamente abra una orden porque dependerá de las condiciones y controles que se hayan definido en el resto de parámetros del robot). Si [accion_PBS] = 'Ejecutar acción de [reinicioAutomaticoCiclo]', cuando se cierre un ciclo porque su pérdida ya alcanzó el % del balance soportado, el robot ejecutará la acción indicada en el parámetro [reinicioAutomaticoCiclo]. ÓRDENES PERDIDAS CONSECUTIVAS Esta funcionalidad solamente funciona cuando el aumento de lotaje está activo y cuando el robot NO está funcionando en modo UN CICLO BUY/SELL [numero_OPC] Número de órdenes perdidas consecutivas. Cuando dentro de un ciclo se pierde de forma consecutiva esa cantidad de órdenes, el robot pone el ciclo en pausa y genera una orden fantasma. Cuando el precio alcanza el SL de la orden fantasma entonces el robot la borra y crea una nueva orden fantasma justo donde esté el precio en ese momento. Cuando el precio alcanza el TP de la orden fantasma entonces el robot borra la orden fantasma e intenta
  • 12. ejecutar una orden real a mercado (eso no implica que la nueva orden se abra de imediato porque dependerá de las condiciones y controles que se hayan definido en el resto de parámetros del robot). [resetContador_OPC_Ciclo] Si [resetContador_OPC_Ciclo] = 'false', cuando se alcanza el número de órdenes perdidas consecutivas, el contador que cuenta las órdenes perdidas consecutivas NO se resetea, eso implica que se ejecutará una orden más, pero si esa orden se pierde entonces el robot de nuevo dibujará una orden fantasma y dejará el ciclo en pausa. Si [resetContador_OPC_Ciclo] = 'true', cuando se alcanza el número de órdenes perdidas consecutivas, el contador que cuenta las órdenes perdidas consecutivas SI se resetea, eso implica que para que de nuevo se ponga el mismo ciclo en pausa y se cree una orden fantasma se deberán volver a perder de nuevo ese mismo número de órdenes consecutivas dentro de ese ciclo. [tics_TakeProfit_OrdenFantasma] Aquí debes definir el número de tics que quieres que tengan los TakeProfit de las órdenes fantasma. Este parámetro es importante porque ten en cuenta que cuando el precio alcanza el TakeProfit de la orden fantasma es cuando ya el ciclo dejará de estar en pausa y entonces el robot ya podrá ejecutar la siguiente orden real a mercado. [tics_StopLoss_OrdenFantasma] Aquí debes definir el número de tics que quieres que tengan los StopLoss de las órdenes fantasma. GRÁFICO RENKO Los gráficos Renko no funcionan en la Prueba de Estrategia de MetaTrader [graficoRenkoActivo] Si [graficoRenkoActivo] = 'true', el robot genera el gráfico Renko del activo y lo abrirá de forma automática. El tamaño de las velas Renko y el TimeFrame del gráfico Renko se define en los parámetros de abajo.
  • 13. Si [graficoRenkoActivo] = 'false', no se genera ningún gráfico Renko y se ignoran todos los demás parámetros que están relacionados con los gráficos Renko. [pipsVelasRenko] Aquí debes indicar el tamaño en pips que deseas que tengan las velas del gráfico Renko. [timeFrameRenko] Aquí debes elegir qué TimeFrame quieres para el gráfico de velas Renko. Las velas Renko no tienen temporalidad o TimeFrame, entonces ¿por qué hay que elegir un TimeFrame? Pues porque MetaTrader para abrir un gráfico, el que sea, necesita identificarlo con su nombre y temporalidad, entonces para que el gráfico Renko se pueda abrir en una ventana en MetaTrader es necesario asociarle una temporalidad al nombre del gráfico, pero en realidad luego en el gráfico de velas Renko no existe ninguna temporalidad. CONDICIONES GRÁFICO RENKO Los gráficos Renko no funcionan en la Prueba de Estrategia de MetaTrader Estos parámetros de abajo solamente se tienen en cuenta si [graficoRenkoActivo] = 'true' [controles_MM_RSI_ADX_en_Renko] Si [controles_MM_RSI_ADX_en_Renko] = 'true', en el caso de que exista alguna condición de Medias Móviles y/o RSI y/o ADX definidas en los parámetros, el robot aplicará esas condiciones sobre el gráfico Renko (y no sobre el gráfico de velas japonesas). Excepto el parámetro [precioEncimaDebajoFractalAnterior] que en caso de estar activo se aplicará siempre al gráfico de velas japonesas (porque en Renko no existe temporalidad y por lo tanto es imposible trabajar en Renko con fractales MutlTimeFrame). Si [controles_MM_RSI_ADX_en_Renko] = 'false', el robot nunca aplicará las condiciones de Medias Móviles y RSI y ADX sobre el gráfico Renko. Por lo que en el caso de que exista alguna condición de Medias Móviles y/o RSI definida en los parámetros, el robot aplicará esas condiciones sobre el gráfico de velas japonesas en el cual esté insertado el robot, y no sobre el gráfico Renko. [condicionesColoresVelasRenko] Si dejas vacío [condicionesColoresVelasRenko], el robot ignorará este parámetro. Si rellenas [condicionesColoresVelasRenko], el robot tendrá en cuenta las condiciones de colores de velas Renko que aquí indiques. Puedes poner condiciones a una o más velas (las que
  • 14. quieras). La condición de cada vela debe ir separada por "/" y los valores que puedes poner son "MC" que significa MISMO COLOR ó "DC" que significa DISTINTO COLOR. Para entender mejor el funcionamiento de este parámetro te aconsejo que veas la parte del vídeo en donde lo explico (encontrarás el link más arriba). [segundosPausaRenko] Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones Renko, si esas condiciones no se cumplen, entonces el robot quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará las condiciones Renko (y cualquier otro control que hayas activado). El tiempo que quieres que esté el robot pausado cuando no se cumplen las condiciones renko que has definido es lo que debes indicar en este parámetro, debes ponerlo en segundos. El robot no permite que este parámetro sea menor de 10. CONTROL MEDIAS MÓVILES si [graficoRenkoActivo] = 'true' y [controles_MM_RSI_ADX_en_Renko] = 'true', entonces todas las condiciones de Medias Móviles se aplicarán al gráfico Renko, excepto la condición del parámetro [precio Encima Debajo Fractal Anterior] que se aplica siempre al gráfico de velas Japonesas [controlMediasMovilesActivo] Si [controlMediasMovilesActivo] = 'true', el robot para poder abrir una orden aplicará como condición que las 3 medias móviles estén alineadas en tendencia a favor del tipo de orden que
  • 15. quiere abrir. Tendencia Alcista para un BUY y Tendencia Bajista para un SELL. También se tendrán en cuenta el resto de condiciones de medias móviles que haya definidas en el resto de parámetros. Si [controlMediasMovilesActivo] = 'false', el robot no aplicará ninguna condición de Medias Móviles al intentar abrir una orden. Y Y todos los parámetros relacionados con las medias móviles se ignoran. [tipoMediasMoviles] Aquí debes seleccionar el tipo de las 3 medias móviles que quieres que use el robot. [tipoPrecioMediasMoviles] Aquí debes seleccionar el tipo de precio que quieres que el robot aplique en el cálculo de las 3 medias móviles. [periodosMediaMovil_Rapida] Aquí debes indicar los periodos que deseas que use el robot para la media móvil rápida. [periodosMediaMovil_Central] Aquí debes indicar los periodos que deseas que use el robot para la media móvil central. [periodosMediaMovil_Lenta] Aquí debes indicar los periodos que deseas que use el robot para la media móvil lenta. [ticsDistanciaMinima] Si [ticsDistanciaMinima] = 0, este parámetro se ignora Si [ticsDistanciaMinima] > 0, el robot no solamente aplicará como condición que las 3 medias móviles estén alineadas en tendencia, sino que además las 3 medias deben estar a una distancia mínima de tics entre ellas. Esa distancia es la que tú definas en este parámetro. Es una distancia en tics (y no en pips). [tipoTendencia] Si [tipoTendencia] = 'Sólo medias móviles', se ignora este parámetro
  • 16. Si [tipoTendencia] = 'Precio encima/debajo media rápida', se aplicará como condición que el precio esté por encima de la media rápida (para tendencia alcista) o por debajo de la media rápida (para tendencia bajista). Y deberá estar a una distancia mínima en tics, que es la que indique el parámetro [ticsDistanciaMinima]. En el caso de que [ticsDistanciaMinima] = 0 entonces no hay distancia mínima entre el precio y la media rápida como condición, pero igualmente como mínimo el precio deberá ser igual a la media rápida o estar por encima de ella en tendencia alcista o estar por debajo en tendencia bajista. Si [tipoTendencia] = 'Precio encima/debajo media central', se aplicará como condición que el precio esté por encima de la media central (para tendencia alcista) o por debajo de la media central (para tendencia bajista). Y deberá estar a una distancia mínima en tics, que es la que indique el parámetro [ticsDistanciaMinima]. En el caso de que [ticsDistanciaMinima] = 0 entonces no hay distancia mínima entre el precio y la media central como condición, pero igualmente como mínimo el precio deberá ser igual a la media central o estar por encima de ella en tendencia alcista o estar por debajo en tendencia bajista. Si [tipoTendencia] = 'Precio encima/debajo media lenta', se aplicará como condición que el precio esté por encima de la media lenta (para tendencia alcista) o por debajo de la media lenta (para tendencia bajista). Y deberá estar a una distancia mínima en tics, que es la que indique el parámetro [ticsDistanciaMinima]. En el caso de que [ticsDistanciaMinima] = 0 entonces no hay distancia mínima entre el precio y la media lenta como condición, pero igualmente como mínimo el precio deberá ser igual a la media lenta o estar por encima de ella en tendencia alcista o estar por debajo en tendencia bajista. [precioEncimaDebajoFractalAnterior] Si [precioEncimaDebajoFractalAnterior] = 'false', se ignora este parámetro. Si [precioEncimaDebajoFractalAnterior] = 'true', se aplicará como condición que el precio esté por encima/debajo del fractal anterior del TimeFrame indicado por el parámetro [timeFrameFractales]. Para abrir un BUY, el precio deberá estar por encima del fractal superior anterior, y para abrir un SELL, el precio deberá estar por debajo del fractal inferior anterior. Esta condición siempre se aplica al gráfico de velas japonesas, incluso aunque [graficoRenkoActivo] = 'true' y [controles_MM_RSI_en_Renko] = 'true'. [mediasMovilesMinutosPausa] Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones de Medias Móviles (no importa si son o no en gráfico Renko), si esas condiciones no se cumplen, entonces el robot quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará las condiciones para Medias Móviles (y cualquier otro control que hayas activado). El tiempo que quieres que esté el robot pausado cuando no se cumplen las condiciones de medias móviles que has definido es lo que debes indicar en este parámetro, debes ponerlo en minutos. El robot no permite que este parámetro sea menor de 1.
  • 17. CONTROL RSI Si [graficoRenkoActivo] = true y [controles_MM_RSI_ADX_en_Renko] = true, entonces todas las condiciones de RSI se aplicarán al gráfico Renko [control_RSI] Si [control_RSI] = 'Desactivado', el robot no aplicará ninguna condición de RSI al intentar abrir una orden.Y todos los parámetros relacionados con RSI se ignoran. Si [control_RSI] = 'Encima o debajo de [RSI_valorNivel_50]', lo que hará el robot es que para poder abrir una orden BUY el RSI debe estar por encima del valor 50 más el valor que indiques en el parámetro [RSI_valorNivel_50], y para poder abrir una orden SELL el RSI debe estar por debajo del valor 50 menos el valor que indiques en el parámetro [RSI_valorNivel_50]. Si [control_RSI] = 'Salir de sobre compra (SELL) / Salir de sobre venta (BUY)’, el robot para poder abrir una orden aplicará como condición que el RSI haya salido en la vela anterior de sobre compra para un SELL y de sobre venta para un BUY. Si [control_RSI] = 'Entrar en sobre compra (BUY) / Entrar en sobre venta (SELL)', el robot para poder abrir una orden aplicará como condición que el RSI haya entrado en la vela anterior en sobre compra para un BUY y haya entrado en sobre venta para un SELL. Esto es útil sobre todo
  • 18. si el RSI se está calculando para un Time Frame superior al del gráfico en el cual estamos operando. [RSI_timeFrame] En este parámetro debes indicar en qué Time Frame quieres que se hagan los cálculos del indicador RSI. Puedes elegir un TF que sea igual o superior al TF del gráfico en el que está insertado el robot. En caso de que estén activas las condiciones Renko para RSI entonces este parámetro no se tiene en cuenta ya que los cálculos del RSI se harán para el gráfico Renko y ahí no existe TF. [RSI_periodos] Aquí debes indicar los periodos que deseas que use el robot para el RSI. [RSI_tipoPrecio] Aquí debes seleccionar el tipo de precio que quieres que el robot aplique en el cálculo del RSI. [RSI_sobreCompra] Aquí debes definir el nivel de sobre compra que quieres que use el robot en caso de que [control_RSI] = 'Salir de sobre compra o venta'. [RSI_sobreVenta] Aquí debes definir el nivel de sobre venta que quieres que use el robot en caso de que [control_RSI] = 'Salir de sobre compra o venta'. [RSI_segundosPausa] Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones de RSI (no importa si son o no en gráfico Renko), si esas condiciones no se cumplen, entonces el robot quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará las condiciones para RSI (y cualquier otro control que hayas activado). El tiempo que quieres que esté el robot pausado cuando no se cumplen las condiciones de RSI que has definido es lo que debes indicar en este parámetro, debes ponerlo en segundos. El robot no permite que este parámetro sea menor de 10.
  • 19. CONTROL ADX A petición de muchos de vosotros he añadido el indicador ADX. Este indicador es muy utilizado para analizar y detectar movimientos alcistas/bajistas. Se puede usar a solas o en combinación con medias móviles u otros indicadores. Este indicador aporta a Dantium más opciones para definir tu propia estrategia. El indicador ADX calcula y dibuja 3 líneas: ● La línea principal llamada ADX ● La línea +DI ● La línea -DI La línea +DI representa a los movimientos alcistas (suele ser verde) La línea -DI representa a los movimientos bajistas (suele ser roja) Cuando la línea +DI está por encima de la línea -DI indica que el precio en este momento está haciendo un movimiento alcista. Cuando es la línea -DI la que está por encima de la línea +DI quiere decir que el precio en este momento está haciendo un movimiento bajista. Cuanta más distancia haya entre las líneas +DI y -DI pues mayor fuerza hay en el movimiento. La línea ADX indica la fuerza del movimiento, no importa si el movimiento es alcista o bajista. Por ejemplo si la línea +DI está por encima de la línea -DI y la línea ADX es igual a 60, entonces eso indica que hay un fuerte movimiento alcista. Dependiendo del número de periodos del ADX, del activo en el que estés operando y del TimeFrame en el que se hacen los cálculos del ADX, se puede considerar que a partir de cierto valor del ADX la tendencia o movimiento es fuerte. Por ejemplo si estás en EURUSD,M15 y el ADX tiene 14 periodos, pues podríamos decir que cuando el ADX vale más de 40 es porque hay un claro movimiento alcista o bajista. La línea ADX no te indica si el movimiento es alcista o bajista (eso lo indican las líneas +DI y
  • 20. -DI). La línea ADX solamente indica la fuerza del movimiento. A continuación explico los parámetros del robot para el indicador ADX. si [graficoRenkoActivo] = true y [controles_MM_RSI_ADX_en_Renko] = true, entonces todas las condiciones de ADX se aplicarán al gráfico Renko [control_ADX] Si [control_ADX] = ‘false’, el robot ignora todos los parámetros del ADX. Si [control_ADX] = 'true', el robot para poder abrir una orden BUY aplicará como condición que la línea +DI esté por encima de la línea -DI. Y para poder abrir una orden SELL aplicará como condición que la línea -DI esté por encima de la línea +DI. En ambos casos también se aplicará como condición que el valor de la línea ADX sea superior al valor indicado en el parámetro [ADX_nivel]. [ADX_timeFrame] En este parámetro debes indicar en qué Time Frame quieres que se hagan los cálculos del indicador ADX. Puedes elegir un TF que sea igual o superior al TF del gráfico en el que está insertado el robot. En caso de que estén activas las condiciones Renko para ADX entonces este parámetro no se tiene en cuenta ya que los cálculos del ADX se harán para el gráfico Renko y ahí no existe TF. [ADX_periodos] Aquí debes indicar los periodos que deseas usar para los cálculos del ADX. [ADX_tipoPrecio] Aquí debes seleccionar el tipo de precio que deseas usar para los cálculos del ADX. [ADX_nivel] El robot para abrir un BUY o un SELL usará como condición que el valor de la línea principal del ADX sea mayor al valor que indiques en este parámetro. Esa línea es la que indica la fuerza del movimiento, cuanto mayor sea su valor pues mayor fuerza tiene el movimiento (no importa si el movimiento es alcista o bajista). Dependiendo de los periodos de cálculo del ADX, del TF y del activo en el que operes, deberás indicar aquí un valor u otro según las exigencias de tu estrategia.
  • 21. [ADX_segundosPausa] Cuando el robot quiere abrir una orden, en caso de que hayas definido condiciones de ADX (no importa si son o no en gráfico Renko), si esas condiciones no se cumplen, entonces el robot quedará pausado un tiempo. Pasado ese tiempo de nuevo el robot volverá a intentar crear la orden y de nuevo comprobará las condiciones para ADX (y cualquier otro control que hayas activado). El tiempo que quieres que esté el robot pausado cuando no se cumplen las condiciones de ADX que has definido es lo que debes indicar en este parámetro, debes ponerlo en segundos. El robot no permite que este parámetro sea menor de 10. REINICIO AUTOMÁTICO DE CICLO [reinicioAutomaticoCiclo] En este parámetro debes indicar la acción que quieres que ejecute el robot cuando se cierra un ciclo. No importa si el ciclo cerrado ejecutó una orden o más, o si hay o no aumento de lotaje, o si se trabaja o no en gráficos Renko, etc. Esta acción se aplicará siempre. Si [reinicioAutomaticoCiclo] = 'Desactivado', este parámetro se ignora. Si [reinicioAutomaticoCiclo] = 'Siempre', cuando se cierre un ciclo entonces el robot automáticamente intentará iniciar otro, eso no quiere decir que lo inicie inmediatamente porque eso dependerá de las condiciones que haya definidas en los controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún control, entonces el robot quedará en pausa hasta poder realizar un nuevo intento de inicio de ciclo. Si [reinicioAutomaticoCiclo] = 'LH-BUY y LH-SELL', cuando se cierre un ciclo entonces el robot automáticamente colocará a una distancia por encima del precio una línea LH-BUY y por debajo del precio a la misma distancia una línea LH-SELL. La distancia a las que coloca esas líneas LH respecto del precio es la que indique el parámetro [ticsDistanciaLineasLH]. Si [reinicioAutomaticoCiclo] = 'LH BUY/SELL en Fractales', cuando se cierre un ciclo entonces el robot automáticamente colocará una línea LH-BUY o LH-SELL en el fractal superior anterior y otra línea LH-BUY o LH-SELL en el fractal inferior anterior. Será en los fractales cuyo TimeFrame sea el que indica el parámetro [timeFrameFractales]. El fractal superior anterior debe estar por encima del precio actual y el fractal inferior anterior debe estar por debajo del precio actual. La línea que coloca en el fractal superior y el inferior será un LH-BUY o una línea LH-SELL dependiendo del valor del parámetro [tipoLH_BUYSELL_Fractales]. Si [reinicioAutomaticoCiclo] = 'LH MADRE en Fractales', cuando se cierre un ciclo entonces el robot automáticamente colocará una línea LHMADRE en el fractal superior anterior y otra línea LHMADRE en el fractal inferior anterior. Será en los fractales cuyo TimeFrame sea el que indica el parámetro [timeFrameFractales]. El fractal superior anterior debe estar por encima del precio actual y el fractal inferior anterior debe estar por debajo del precio actual.
  • 22. Nota 1: Si el precio alcanza una línea LHMADRE entonces el robot automáticamente colocará a una distancia por encima del precio una línea LH-BUY y por debajo del precio a la misma distancia una línea LH-SELL. La distancia a la que coloca esas líneas respecto del precio es la que indique el parámetro [ticsDistanciaLineasLH]. Nota 2: Si el precio alcanza una línea LH-BUY entonces el robot intentará iniciar un ciclo con un BUY y si el precio alcanza una línea LH-SELL entonces el robot intentará iniciar un ciclo con un SELL. El robot no inicia el ciclo inmediatamente porque eso dependerá de las condiciones que haya definidas en los controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún control, entonces el robot quedará en pausa hasta poder realizar un nuevo intento de inicio de ciclo. Si el robot está en modo 'UN CICLO BUY/SELL' entonces cuando intente crear por ejemplo un BUY, si no puede pues intentará crear un SELL y viceversa. PROGRAMACIÓN INICIO AUTOMÁTICO DE CICLO Esta funcionalidad sirve para indicar al robot que ejecute alguna acción concreta cada día a una hora exacta. [inicio1Ciclo] Si [inicio1Ciclo] = 'Desactivado', se ignora por completo la programación 1 de inicio de ciclo y todos los parámetros relacionados con la programación 1 de inicio de ciclo. Si [inicio1Ciclo] = 'orden BUY', a la hora exacta indicada el robot intentará iniciar un ciclo con una orden BUY. Si el robot está en modo 'UN CICLO BUY/SELL' entonces cuando intente iniciar un ciclo con un BUY, si no puede pues intentará iniciar el ciclo con un SELL. El robot no inicia el ciclo inmediatamente porque eso dependerá de las condiciones que haya definidas en los controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún control, entonces el robot quedará en pausa hasta poder realizar un nuevo intento. Si [inicio1Ciclo] = 'orden SELL', a la hora exacta indicada el robot intentará iniciar un ciclo con una orden SELL. Si el robot está en modo 'UN CICLO BUY/SELL' entonces cuando intente iniciar un ciclo con un SELL, si no puede pues intentará iniciar el ciclo con un BUY. El robot no inicia el ciclo inmediatamente porque eso dependerá de las condiciones que haya definidas en los
  • 23. controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún control, entonces el robot quedará en pausa hasta poder realizar un nuevo intento. Si [inicio1Ciclo] = 'LH-BUY y LH-SELL', a la hora exacta indicada el robot automáticamente colocará a una distancia por encima del precio una línea LH-BUY y por debajo del precio a la misma distancia una línea LH-SELL. La distancia a las que coloca esas líneas LH respecto del precio es la que indique el parámetro [ticsDistanciaLineasLH]. Si [inicio1Ciclo] = 'LH BUY/SELL en Fractales', a la hora exacta indicada el robot automáticamente colocará una línea LH-BUY o LH-SELL en el fractal superior anterior y otra línea LH-BUY o LH-SELL en el fractal inferior anterior. Será en los fractales cuyo TimeFrame sea el que indica el parámetro [timeFrameFractales]. El fractal superior anterior debe estar por encima del precio actual y el fractal inferior anterior debe estar por debajo del precio actual. La línea que coloca en el fractal superior y el inferior será una LH-BUY o una LH-SELL dependiendo del valor del parámetro [tipoLH_BUYSELL_Fractales]. Si [inicio1Ciclo] = 'LH MADRE en Fractales', a la hora exacta indicada el robot automáticamente colocará una línea LHMADRE en el fractal superior anterior y otra línea LHMADRE en el fractal inferior anterior. Será en los fractales cuyo TimeFrame sea el que indica el parámetro [timeFrameFractales]. El fractal superior anterior debe estar por encima del precio actual y el fractal inferior anterior debe estar por debajo del precio actual. Nota 1: Si el precio alcanza una línea LHMADRE entonces el robot automáticamente colocará a una distancia por encima del precio una línea LH-BUY y por debajo del precio a la misma distancia una línea LH-SELL. La distancia a la que coloca esas líneas respecto del precio es la que indique el parámetro [ticsDistanciaLineasLH]. Nota 2: Si el precio alcanza una línea LH-BUY entonces el robot intentará iniciar un ciclo con un BUY y si el precio alcanza una línea LH-SELL entonces el robot intentará iniciar un ciclo con un SELL. Pero eso no quiere decir que inicie el ciclo inmediatamente porque eso dependerá de las condiciones que haya definidas en los controles de Rango Temporal, Spread, Medias Móviles, Renko, RSI etc. En caso de no poder iniciar el ciclo inmediatamente por no cumplirse las condiciones de algún control, entonces el robot quedará en pausa hasta poder realizar un nuevo intento de inicio de ciclo. Si el robot está en modo 'UN CICLO BUY/SELL' entonces cuando intente crear por ejemplo un BUY, si no puede pues intentará crear un SELL y viceversa. LOS PARÁMETROS DE LA "PROGRAMACIÓN INICIO 2 CICLO" SON IDÉNTICOS A LOS DE LA 1
  • 24. LÍNEAS LH [ticsDistanciaLineasLH] En este parámetro debes indicar la distancia en tics a la que quieres que el robot dibuje de forma automática una línea LHBUY por encima del precio y una línea LHSELL por debajo del precio. El robot dibuja esas líneas cuando el precio alcanza una línea LHMADRE o cuando alguno de los siguientes parámetros es = 'LH-BUY y LH-SELL'; ([reinicioAutomaticoCiclo]; [inicio1Ciclo]; [inicio2Ciclo]). FRACTALES [timeFrameFractales] En este parámetro debes indicar el TimeFrame que quieres que use el robot para calcular los fractales anteriores superior e inferior. El robot calcula esos fractales cuando el parámetro [precioEncimaDebajoFractalAnterior] = 'true' o cuando alguno de los siguientes parámetros es = 'LH BUY/SELL en Fractales'; ([reinicioAutomaticoCiclo]; [inicio1Ciclo]; [inicio2Ciclo]). [tipoLH_BUYSELL_Fractales] Si tipoLH_BUYSELL_Fractales = 'Rebote en el fractal', cuando el robot dibuje líneas LH en los fractales superior e inferior, dibujará una línea LH-SELL en el fractal superior y una línea LH- BUY en el fractal inferior. Si tipoLH_BUYSELL_Fractales = 'Rotura del fractal', cuando el robot dibuje líneas LH en los fractales superior e inferior, dibujará una línea LH-BUY en el fractal superior y una línea LH- SELL en el fractal inferior. CONTROL DEL CICLO (importante) Una vez se abra un ciclo de órdenes, por precaución NO debes tocar absolutamente nada de ese gráfico (ni cambiar de TF, ni modificar el robot, ni indicadores, ni nada de nada), Y MUCHO MENOS MODIFICAR LAS ÓRDENES ABIERTAS POR EL ROBOT o CERRAR EL MT4 o APAGAR EL PC o SUSPENDER EL PC, porque si haces cualquiera de esas cosas entonces puedes provocar que el robot pierda el control del ciclo abierto y deje de actuar. Si alguna de esas cosas ocurriera y no te das cuenta puede ser muy peligroso. ¿Cómo sabes que el robot tiene el control? Pues
  • 25. mientras el robot NO diga en pantalla "NO HAY CICLO" y el número de órdenes que indica sea correcto, entonces el robot sigue teniendo el control del ciclo, pero si alguna de estas 2 cosas no es así, entonces es que algo raro ocurre. ACONSEJO AÑADIR EL ROBOT A UN GRÁFICO DONDE SOLAMENTE ESTÉ EL ROBOT, y para otros indicadores o análisis uses otra ventana del mismo activo. El robot no es quien pierde el control del ciclo, en realidad cuando esto ocurre es porque el MetaTrader es quien le quita el control del ciclo al robot debido a alguna acción o evento que provocó que el MetaTrader borrase la información que el robot tiene sobre el ciclo almacenada en la memoria del MetaTrader. Cuando el MetaTrader elimina esos datos de la memoria el robot pierde el control del ciclo debido a que pierde toda la información.