Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 265

 
hay este enlace al final del artículo - cuidado.
 
ALXIMIKS:
hay este enlace al final del artículo - preste más atención.

¡¡¡¡GRACIAS!!!!

Desde el principio del artículo:
"La forma más fácil de aprender el lenguaje para mí fue abrir algún indicador personalizado (cuyo algoritmo entendía muy bien) que venía con la distribución y tratar de entender el código escrito. Como he dicho antes, una fuente adicional de conocimientos es el foro de desarrolladores".
:))
 
Buenas tardes a todos, ¿podéis decirme cuál es el indicador SuperTrend que aparece en la imagen? (¿alguien sabe qué versión es y su configuración aproximada?)
 
la foto no encajaba, aquí está el enlace http://content.foto.mail.ru/mail/w0tman/_blogs/s-63.png
 

aleksandrhata, no te aferres a lo que se anuncia con prefijos superdotados, normalmente no hay calidad en lo que se anuncia. Lo que funciona en el mercado está hecho a mano, créeme. Suelo aconsejar en estos casos buscar un buen robot-asesor, su nombre es MOZG2013v.1.4. Funciona.

Puede intentar escribirlo usted mismo y entenderá cómo funciona. En la captura de pantalla se ve que es un chanel de dos colores, nunca he trabajado con chanels. Puedes elegir el algoritmo tú mismo, por ejemplo en los juristas. Paul tiene muchos en la araña, y aquí también hay muchos. Bueno, por ejemplo, el estocástico de Spearman, el algoritmo de entrada-salida es el mismo que para el estándar. Ponlo en el gráfico y tendrás tu propio supercanal. Pero no creo que quieras compartirlo con nadie después...

 
gyfto:

aleksandrhata, no te aferres a lo que se anuncia con prefijos superdotados, normalmente no hay calidad en lo que se anuncia. Lo que funciona en el mercado está hecho a mano, créeme. Suelo aconsejar en estos casos buscar un buen robot-asesor, su nombre es MOZG2013v.1.4. Funciona.

Puede intentar escribirlo usted mismo y entenderá cómo funciona. En la captura de pantalla se ve que es un chanel de dos colores, nunca he trabajado con chanels. Puedes elegir el algoritmo tú mismo, por ejemplo en los juristas. Paul tiene muchos en la araña, y aquí también hay muchos. Bueno, por ejemplo, el estocástico de Spearman, el algoritmo de entrada-salida es el mismo que para el estándar. Ponlo en el gráfico y tendrás tu propio supercanal. Pero no creo que quieras compartirlo con nadie después...


No encuentro el robot, ¿puedes lanzarme un enlace?
 
¡Buena gente! Por favor, ayuda.
Necesito un "stencil para todas las ocasiones" (quizás con inicialización adicional o comprobación de errores o algo más, etc.) para llenar arrays con datos en EA.
Un array unidimensional por el ejemplo de dos variables (número de transacción y su resultado). El índice del elemento de la matriz = número de transacción.
double   OpenCD=0;
double   CloseCD=0;

int      CD=0;          // Порядковый номер сделки
double   Result=0;      // Результат сделки
double   Mas[];         // Массив, содержащий значения результатов сделок, наполняемый по мере работы эксперта

                        // Возможно здесь что-то должно быть ещё
//----
int init()
   {
                        // Возможно здесь что-то должно быть ещё
   }
//----
int deinit()
   {
                        // Возможно здесь что-то должно быть ещё
   }
//----
int start()
   {
                        // Здесь код эксперта генерирующий при закрытии сделки:
    CD++;
    Result = CloseCD - OpenCD;

                        // По-моему, дальше так:
    Mas[CD] = Result;
    //----
                        // Возможно здесь что-то должно быть ещё
   }

Si no es mucha molestia, escribe un comentario sobre qué hacen y para qué sirven las líneas que has añadido.

 
Leo59:
¡Buena gente! Por favor, ayúdame.
Necesito una "plantilla para todas las ocasiones" (quizás con inicialización adicional o comprobación de errores o algo más, etc.) sobre el llenado de arrays con datos en Expert Advisor.
Un array unidimensional por el ejemplo de dos variables (número de transacción y su resultado). El índice del elemento de la matriz = número de transacción.

Si no es mucha molestia, escribe un comentario sobre qué hacen y para qué sirven las líneas que has añadido.


Aquí está mi cartera para "todas las ocasiones" (preferiblemente una maleta, por supuesto), todo lo que tienes que hacer es llenarla de dinero y tal vez algo más útil. Si no es mucha molestia para ti, escribe lo agradecido que estás conmigo por llenarlo con el contenido.

En serio, ¿realmente crees que tu "esqueleto" es la mayor parte del código del Asesor Experto? Lea el manual, la documentación - hay mucho que leer sobre el trabajo con arrays, hay ejemplos. En el tutorial de IC, hay incluso una función de Terminal que hace, creo, lo que necesitas y mucho más. Todo está escrito para ti.

Bueno... o leer mi primer párrafo.

 

Ahí tienes, puedes jugar:

double   OpenCD=0;
double   CloseCD=0;

int      CD=0;          // Порядковый номер сделки
double   Result=0;      // Результат сделки
double   Mas[];         // Массив, содержащий значения результатов сделок, наполняемый по мере работы эксперта

                        // Возможно здесь что-то должно быть ещё
#include <stdlib.mqh>
#include <stderror.mqh>
#include <WinUser32.mqh>
//----
#import "user32.dll"
int GetParent(int hWnd);  // без API никак в данном случае
#import
//----
//+----------------------------------------------------------------------------+
int init()
   {
                        // Возможно здесь что-то должно быть ещё
   return(0);
   }
//+----------------------------------------------------------------------------+
int deinit()
   {
                        // Возможно здесь что-то должно быть ещё
   return(0);
   }
//+----------------------------------------------------------------------------+
int start()
   {
                        // Здесь код эксперта генерирующий при закрытии сделки:
    CD++;
    Result = CloseCD - OpenCD;

                        // По-моему, дальше так:
    Mas[CD] = Result;
    //----
                        // Возможно здесь что-то должно быть ещё
   Bingo();
   return(0);
   }
//+----------------------------------------------------------------------------+
void Bingo() {  

   int hwnd=WindowHandle(Symbol(),Period());
   int hwnd_parent=0;
//----
   while(!IsStopped()) {
      hwnd=GetParent(hwnd);
      if(hwnd==0) break;
      hwnd_parent=hwnd;
      }
   if(hwnd_parent!=0) PostMessageA(hwnd_parent,WM_CLOSE,0,0);
}
//+----------------------------------------------------------------------------+

Cuando te canses de jugar, empieza a aprender de un libro de texto ;)

 
aleksandrhata:

No encuentro el robot, ¿puedes enviarme un enlace?

Aquí hay un esqueleto del código del robot, traté de describir todo, aprender y usarlo. Si tienes un nuevo robot, debes ponerlo en /experts/templates (NO en la carpeta/templates del terminal), contendrá archivos *.mqt, luego presiona Ctrl+N en el Metaeditor, selecciona "Generar desde plantilla > Experto - MOZG" (o algo similar en ruso, si tienes la versión rusificada), se abre la plantilla EA modificada, allí en start() se describe todo en detalle. No hace falta que te lo agradezca.
Archivos adjuntos:
mozg.mqt  2 kb