Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1107

 
Igor Makanu:

no se puede ejecutar algo largo en OnInit - el terminal puede descargar el código

en el indicador no debe correr el deslizamiento

Sí, soy tonto... ¿Tal vez, en lugar de un bucle infinito en OnInit, volver desde OnCalculate con la misma condición? - debe haber un número definitivo cuando no hay ingreso, ya sea -1, o 0, o EMPTY_VALUE

 

¡Saludos comerciantes y programadores!

¿Podría decirme si es posible utilizar un método no estándar para calcular el período de lamedia móvil? Me refiero a que la posición de la MA en la barra actual (cero) no será determinada por las últimas 20 (por ejemplo) barras, sino por cada 5m de las últimas 100, o simplemente especificando los números de barras en el historial, empezando por la actual. Y, si existe esa posibilidad, ¿es posible especificar la función directamente en el código del indicador?

Gracias por la información.

 

Hola. ¿Cómo puedo mostrar el símbolo del triángulo hacia abajo y hacia arriba?

Este es el código

bool OutText(const string name="Etiqueta",

const string text="Etiqueta", // texto

const int x=0, // Coordenada X

const int y=0, // coordenada a lo largo del eje Y

const color clr=clrAmarillo, // color

const ENUM_ANCHOR_POINT anchor=ANCHOR_LEFT_UPPER, // método de anclaje

const ENUM_BASE_CORNER corner=CORNER_LEFT_UPPER, // esquina del gráfico para el ancla

const int font_size=12, // tamaño de la fuente

const string font="Arial", // fuente

const double angle=0.0, // pendiente del texto

const bool back=false, // atrás

const bool selection=false, //selección para mover

const bool hidden=true, // oculto en la lista de objetos

const long z_order=0,

const int sub_window=0, // número de subventanas

const long chart_ID=0 // ID del gráfico

) // prioridad del clic

{

//--- restablecer el valor del error

ResetLastError();

//--- crear una marca de texto

if(ObjectFind(chart_ID,name)==-1)

{

if(!ObjectCreate(chart_ID,name,OBJ_LABEL,sub_window,0,0))

{

Print(__FUNCTION__, ": ¡Fallo en la creación de la etiqueta de texto! Código de error = ",GetLastError());

// return(false);

}

}

//--- establecer las coordenadas del marcador

ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x);

ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y);

//--- establece el ángulo de la carta, en relación con el cual se determinarán las coordenadas del punto

ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner);

//--- establecer el texto

ObjectSetString(chart_ID,name,OBJPROP_TEXT,text);

//--- establecer la fuente del texto

ObjectSetString(chart_ID,name,OBJPROP_FONT,font);

//--- establecer el tamaño de la fuente

ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size);

//--- establecer el ángulo de inclinación del texto

ObjectSetDouble(chart_ID,name,OBJPROP_ANGLE,angle);

//--- establecer el método de anclaje

ObjectSetInteger(chart_ID,name,OBJPROP_ANCHOR,anchor);

//--- fijar el color

ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);

//--- mostrar en primer plano (falso) o en segundo plano (verdadero)

ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back);

//--- activar (true) o desactivar (false) el modo de mover la marca con el ratón

ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection);

ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);

//--- ocultar (true) o mostrar (false) el nombre del objeto gráfico en la lista de objetos

ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);

//--- establecer el evento de la prioridad de recepción del clic del ratón

ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);

//--- ejecución exitosa

return(true);

}

¿Cómo se sube el símbolo del triángulo?

Lo que hay que escribir

OutText("LabelBuy1", ">", 100, 20, clrWhite, ANCHOR_UPPER,CORNER_LEFT_UPPER,14, "Arial");

¿Para hacer un triángulo?

1



Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
  • www.mql5.com
Все объекты, используемые в техническом анализе, имеют привязку на графиках по координатам цены и времени – трендовая линия, каналы, инструменты Фибоначчи и т.д.  Но есть ряд вспомогательных объектов, предназначенных для улучшения интерфейса, которые имеют привязку к видимой всегда части графика (основное окно графика или подокна индикаторов...
 

Anteriormente hice la pregunta de cómo simular la función Print() en el lado de la biblioteca para comprobar los datos que entran en las funciones de la biblioteca y para buscar errores, me aconsejaron utilizar los recursos de C++: es decir, grabar la información en el archivo desde el lado de la biblioteca dll. En general, la biblioteca no puede crear un archivo para escribir la información allí, el archivo no se crea ni en el proyecto de directorio, ni en la carpeta con el robot, trató de especificar la ruta por defecto no funciona, la salida de información a través de cout también no funciona, pero probablemente no puede porque no es del todo una aplicación de consola. ¿Quién puede aconsejar?

#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <fstream>//подключаю библиотеку для записи в файл

/*using std::cout;
using std::endl;
using std::cin;*/

using namespace std;

#define _DLLAPI extern "C" __declspec(dllexport)

_DLLAPI int __stdcall Funkt(int qa){//"C:\\Program Files(x86)\\Forex4you\\MQL4\\Experts\\Moyperviyzapisfiles.txt"
        ofstream file;//"C:\\Users\\123\\Documents\\Visual Studio 2012\\Projects\\ConsoleApplication8\\ConsoleApplication8\\Moyperviyzapisfiles.txt"
        //"C:\\Users\\123\\documents\\visual studio 2012\\Projects\\ConsoleApplication8\\Debug\\ConsoleApplication8.dll\\Moyperviyzapisfiles.txt"
        file.open("C:\\Program Files(x86)\\Forex4you\\MQL4\\Experts\\Moyperviyzapisfiles.txt"/*,ios::out*/);//Moy perviy zapis files
        file<<"Moyperviyzapisfiles";//хочу записать эту фразу в файл
        file.close();   
        return 12;}
//если это делать не в библиотеке то работает.
 

¿Cómo puedo sustituir la imagen estándar de la descripción por ...


... ¿puedo poner el mío?


 
Alexandr Sokolov:

¿Cómo puedo sustituir la imagen estándar de la descripción por ...


... ¿puedo poner el mío?


#Icono de la propiedad
 
Artyom Trishkin:
#Icono de la propiedad

Qué sencillo es... Gracias.

 

¡Hola!

¿Podría decirme cómo implementar la detección de objetos gráficos dibujados manualmente en un gráfico ( línea horizontal o de tendencia, por ejemplo) y luego recuperar sus propiedades (nivel de precios en el momento adecuado)?

 
odyn:

¡Hola!

¿Podría decirme cómo implementar la detección de objetos gráficos dibujados manualmente en un gráfico ( línea horizontal o de tendencia, por ejemplo) y luego recuperar sus propiedades (nivel de precios en el momento adecuado)?

Si el número de objetos en el gráfico ha aumentado...
 
odyn:

¡Hola!

¿Podría decirme cómo implementar la detección de objetos gráficos dibujados manualmente en un gráfico ( línea horizontal o de tendencia, por ejemplo) y luego recuperar sus propiedades (nivel de precios en el momento adecuado)?

Tienen un prefijo normalizado, por ejemplo: número de Trenler. Puede buscar de la siguiente manera: en el bucle if(StringFind(ObjectName(0,i), "Trendline")==0) para los antiguos o para los nuevos if(StringFind(sparam, "Trendline")==0))

Razón de la queja: