Funcionalidad
Esta herramienta sirve para generar botones (accesos directos) a los activos con los que usualmente trabajamos. Podemos definir cuáles generar configurándolos en los parámetros de entrada (ver parámetros paths, fileName, excludeSymbols en el apartado correspondiente). En adelante, nos referiremos a estos activos como los «activos».

La información que se muestra con esta herramienta relativa a órdenes, está filtrada por magicOrder. Usar magicOrder=0 para mostrar información de órdenes abiertas manualmente y usar magicOrder=-1 para no filtrar por magicOrder.

Una vez en ejecución, se genera una ventana de indicador independiente donde se muestran distintas zonas de botones:

  • Navegación por activos y marcado de color:

La primera zona de botones sirve para «navegar» entre los activos. En el ejemplo, se visualiza un botón donde está escrito 1/2. Esto significa que se han generado 2 listados y estamos visualizando el listado 1. A este botón lo denominaremos «listados». Los botones ‘<‘ y ‘>’ que aparecen a los lados de ese botón, sirven para pasar al listado anterior y posterior respectivamente. Si está activada la opción de useKeyboardKeys, podemos usar las teclas de dirección ARRIBA para pasar al listado posterior y la tecla de dirección ABAJO para pasar al anterior listado.

El botón de listados  también sirve para decidir cómo queremos ordenar los activos. Por defecto, éstos se generan en el orden en que están definidos (color de fondo azul), pero podemos pulsarlo para cambiar a otros dos modos:

Modo activos con operación abierta o pendiente (color de fondo verde). Se ordenarán de manera que primero se muestran los activos que tienen alguna operación en el terminal de operaciones vivas, seguidos de los que pertenecen a los grupos de color 3, luego el 2 y luego el 1; finalmente los que no están asignados a ningún grupo y, si está activado, los activos que tienen alguna orden abierta.

Modo activos por grupo (color de fondo marrón). Se ordenarán de manera que primero se muestran los activos que pertenecen al grupo 3, luego el 2 y luego el 1. A continuación se muestran los que tienen alguna operación viva en el terminal de operaciones y finalmente los que no están asignados a ningún grupo y, si está activado, los activos que tienen alguna orden abierta.

Los siguientes botones ‘<<‘ y ‘>>’ sirven para navegar al anterior y al siguiente activo respectivamente del activo actual. Si está activada la opción de useKeyboardKeys, podemos usar las teclas de dirección DERECHA para pasar al siguiente activo en la lista y la tecla de dirección IZQUIERDA para pasar al anterior activo en la lista.

Si se activa la propiedad showAutoNext, aparecerá un botón pequeño justo al lado del botón ‘>>’, que no se aprecia en este imagen porque por defecto no se muestra. Si se pulsa este botón, se activa la función AutoNext, que consiste en que cada autoNextSeconds se pasa al siguiente activo de la lista automáticamente, como si se pulsase el botón ‘>>’  de forma periódica. Seguirá pasando de activo hasta que pulsando de nuevo se desactiva la función AutoNext.

Si se activa la propiedad showBackButton, aparecerá un botón de «<-«, que no se aprecia en este imagen porque por defecto no se muestra. Si se pulsa este botón, volverá al activo que hubiese estado cargado previo al actual. Si está activada la opción de useKeyboardKeys, podemos usar la tecla de borrado «<–«, normalmente situada encima del «enter» en nuestro teclado, para volver al activo previo cargado.

Si se activa la propiedad showResetButton, aparecerá un botón de «Reiniciar», que no se aprecia en este imagen porque por defecto no se muestra. Si se pulsa este botón de reiniciar, borrará todas las agrupaciones de color realizadas, por tanto todos los activos estarán sin grupo. También se seleccionará el listado donde se encuentre el activo actual y se ordenarán los activos según están definidos.

El siguiente botón cuadrado, sirve para marcar con un color de grupo al activo actual. Al pulsarlo, el botón irá cambiando de color para identificar el grupo al que pertenece, además de identificarlo con un número. Hay 4 colores, por defecto en azul significa sin grupo, y después tres colores distintos, uno para cada grupo. Los colores se pueden definir en los parámetros de entrada. El marcado puede ayudarnos a agrupar activos que estén bajo una misma circunstancia. Por ejemplo, aquellos que están en condiciones de entrar.

El siguiente texto es la descripción del activo actual, según la información que proporciona la plataforma MT4 del broker

 

  • Listado de activos:

En este listado, aparecen dos botones para cada activo, uno con el nombre y otro debajo con el color de grupo asignado actual. El botón con nombre puede tener un fondo de los tres colores siguientes (configurables por parámetros de entrada):

Azul. Activo normal sin ninguna orden viva y no cargado en la ventana actual

Rojo. Activo cargado en la venta actual

Verde. Activo con alguna orden viva

Además, el botón con nombre puede tener un color de texto de los tres colores siguientes (configurables por parámetros de entrada):

Blanco. Activo normal sin ninguna orden viva

Azul claro. Activo con alguna orden viva, siendo el resultado de éstas positivo. Está ganando

Amarillo. Activo con alguna orden viva, siendo el resultado de éstas negativo. Está perdiendo

También, el botón con nombre puede tener un color de línea de los cuatro colores siguientes (configurables por parámetros de entrada):

Sin color. Activo normal sin ninguna orden viva

Azul claro. Activo con alguna orden viva, siendo todas ellas de compra

Amarillo. Activo con alguna orden viva, siendo todas ellas de venta

Blanco. Activo con alguna orden viva, habiendo tanto compras como ventas

Si se pulsa en el botón con nombre, carga dicho activo en la ventana actual, conservando toda la configuración de indicadores con sus parámetros tal como estaban definidos.

El botón con el color de grupo sirve para identificar el grupo al que pertenece actualmente el activo. Al pulsarlo, cambiará consecutivamente de grupo y color dicho activo. Si está activada la opción de useKeyboardKeys, podemos usar la tecla de tabulador»<– –>», normalmente situada encima del «bloq mayus» en nuestro teclado, para cambiar consecutivamente de grupo y color dicho activo.

Parámetros de entrada

paths  Con esta propiedad podemos definir los activos a cargar en el listado, separados por ‘;’ (punto y coma). Podemos definir bien nombres concretos de activos, su descripción, o el directorio donde está. Basta con definir una parte del mismo y es indistinto usar mayúsculas y minúsculas.

Por ejemplo, si queremos cargar EURUSD y GBPUSD, podemos definir esta propiedad: EURUSD;GBPUSD

Por ejemplo, si queremos cargar EURUSD, GBPUSD y todos los índices (en el menú de MT4 Ver/símbolos están bajo el directorio Indices), definimos esta propiedad: EURUSD;GBPUSD;Indices

Por ejemplo, si queremos cargar EURUSD, GBPUSD, todos los índices (en el menú de MT4 Ver/símbolos están bajo el directorio Indices) y el banco santander (en MT4, el activo del banco santander es SAN.MC y su descripcion es Banco Santander), definimos esta propiedad: EURUSD;GBPUSD;Indices;santander

fileName  Con esta propiedad podemos identificar un nombre de fichero donde hemos definido los activos a cargar. El formato del fichero es CSV, es decir, los activos separados por ‘;’ (punto y coma). El fichero debe estar físicamente en el directorio MQL4/Files

Por ejemplo, si queremos cargar desde un fichero favoritos.csv, los activos EURUSD, GBPUSD, todos los índices (en el menú de MT4 Ver/símbolos están bajo el directorio Indices) y el banco santander (en MT4, el activo del banco santander es SAN.MC y su descripcion es Banco Santander), generamos el fichero favoritos.csv en MQL4/Files con el contenido: EURUSD;GBPUSD;Indices;santander

excludeSymbols  Con esta propiedad podemos excluir de la lista los símbolos aquí definidos, separados por ‘;’ (punto y coma). Basta con definir una parte del mismo y es indistinto usar mayúsculas y minúsculas.

Por ejemplo, si queremos cargar todos los índices (están bajo el directorio Indices) menos el IBEX35 (ES35) y el CAC40 (FRENCH40), deinimos paths como Indices y excludeSymbols como: ES35;FRENCH40

loadSymbolsFromMarketWatch  Con esta propiedad, podemos cargar los activos de la Market Watch (Observación de mercado)

addAlwaysOpenOrderSymbols  Con esta propiedad indicamos que cargue también los activos que tienen al menos una orden viva (abierta o pendiente) en el libro de órdenes, aunque no esté expresamente indicada en los activos a cargar.

magicOrder Identificador interno de aplicación para filtrar órdenes. Este número es común a todas las órdenes abiertas con software SMC. Aunque se puede cambiar al gusto, se recomienda no hacerlo para facilitar la compatibilidad con otras herramientas que pueden tratar la orden posteriormente. Una orden abierta con MT4 directamente usa un magicOrder 0. Si queremos deshabilitar el filtro por magic, usar un magicOrder -1

unSelectSymbolMarketWatch  Con esta propiedad indicamos que, a ser posible, saque el activo del «Market Watch» una vez cargamos otro activo distinto, ahorrando así memoria y ancho de banda necesario para ejecutar la aplicación.

symbolsSameLine  Con esta propiedad configuramos cuántos activos como máximo visualizar por cada línea de activos. Si hay más activos, pasarán a la siguiente línea.

symbolsLines  Con esta propiedad configuramos cuántas líneas de activos como máximo visualizar por cada listado de activos. Si hay más activos, pasarán al siguiente listado

rollingMode Si se activa, el funcionamiento de los botones ‘<‘  y ‘>’ para listados y de ‘<<‘ y ‘>>’ para activos, funcionarán como una lista circular, sin inicio ni fin. Si se desactiva, funcionarán como una lista con inicio y fin normales, no avanzando más al final de la misma, ni retrocediendo más al inicio

showAutoNextButton Si se activa, mostrará un pequeño botón al lado de ‘>>’ para activar la función AutoNext

autoNextSeconds Número de segundos a esperar para pasar de activo con la función AutoNext activa

showBackButton Si se activa, mostrará un botón de «<-«, volver al activo previamente cargado

showResetButton Si se activa, mostrará un botón de «Reiniciar»

useKeyboardKeys Si se activa, se pueden usar teclas del teclado para activar distintos botones, tal como se explica en el enunciado principal

lazyLoad Si se activa, antes de cambiar al nuevo activo, fuerza una actualización de todos sus timeframes y espera 1 segundo 

colorSymbolSelectedText  Color de texto para la descripción del activo actualmente cargado en la ventana

sizeSymbolSelectedText  Tamaño de texto para la descripción del activo actualmente cargado en la ventana

colorSymbolButtonSelected  Color del botón para el activo actualmente cargado en la ventana

colorSymbolButtonWithOrder  Color del botón para un activo que tenga orden viva (abierta o pendiente)

colorSymbolButtonInWatch1  Color asociado al grupo 1 de activos

colorSymbolButtonInWatch2  Color asociado al grupo 2 de activos

colorSymbolButtonInWatch3  Color asociado al grupo 3 de activos

colorSymbolButtonNoWatch  Color asociado al grupo de activos sin grupo

colorSymbolsButton  Color asociado a un activo por defecto, si no está seleccionado y no tiene ninguna orden viva

colorLineSymbolButtonOnlyBoughtOrders  Color de línea de los botones de activo con alguna orden vida, siendo todas compras

colorLineSymbolButtonOnlySoldOrders  Color de línea de los botones de activo con alguna orden vida, siendo todas ventas

colorLineSymbolButtonMixedOrders  Color de línea de los botones de activo con alguna orden vida, habiendo tanto compras como ventas

colorLineSymbolsButton  Color de línea de los botones de activo sin órdenes

colorWinningSymbolsText Color de texto de los botones de activo con alguna orden viva, siendo la suma de las ganancias temporales positivo para dicho activo

colorLosingSymbolsText  Color de texto de los botones de activo con alguna orden viva, siendo la suma de las ganancias temporales negativo para dicho activo

colorSymbolsText  Color de texto de los botones de activo sin órdenes

sizeSymbolsText  Tamaño de texto de los botones

updateEverySeconds  Recargar la información cada x segundos. Por ejemplo, comprueba si hay nuevas órdenes vivas o algunas han dejado de existir

Extra
Posibles usos para esta herramienta son:

Cargar activos en una ventana con análisis pre-establecido.

Normalmente cuando analizamos un valor, siempre tenemos los mismos indicadores configurados de una forma concreta, y en base a ellos tomamos la decisión de abrir orden. Lo normal es cargar en la ventana todos los indicadores para nuestro análisis y simplemente cambiar de activo a analizar con ayuda de SMC_ShowSymbolsPathOrFile, sin tener que volver a abrir otra ventana y configurar todos los indicadores en ella.

Cambiar activo en múltiples ventanas a la vez.

Si combinamos el indicador SMC_ShowsymbolsPathOrFile con SMC_ExportSymbolKeepTimeframe en la misma ventana, junto con SMC_ImportSymbolKeepTimeframe en otra u otras ventanas, cuando cambiamos de activo pulsando un botón, cambiamos el activo en todas esas ventanas a la vez, conservando los indicadores y su configuración en cada una de las ventanas. Lo que conseguimos es, usando un perfil de análisis, cambiar de activo sobre dicho perfil.

Galería de Imágenes