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

 
ALXIMIKS:

Si los datos han cambiado, debemos poner el puntero en el lugar donde lo sobrescribiremos con fileseek, sobrescribirlo con el método estándar filewrite..., recordar el final del archivo y recortarlo con la función WinApi

O usando el método estándar, escribir la posición al final del archivo, donde termina la información útil, y luego leer esta posición. (Puede escribir la posición en otro archivo).

Pero de todos modos, es mejor recortarlo, y no hay ninguna herramienta de recorte estándar ((

esto esZhunko12.09.2014 20:19#

Sería interesante tener las mismas funciones de WinApi.

Qué triste, es tan complicado.

 
¿Hay algún ejemplo sencillo de sobrescribir una cadena?
 
VOLDEMAR:
¿Hay algún ejemplo sencillo de reescritura de una cadena?
¿Qué es lo que no le gusta del ejemplo de la ayuda?
 
AlexeyVik:
¿Qué tiene de malo el ejemplo de la ayuda?
O es complicado o no funciona...
 

Ayuda a editar el script para transferir el informe al gráfico. No encuentro la razón por la que no se renderiza...

Enlace al código base.

Versión ligeramente modificada que tengo en el tráiler. |

\ | /

\ /

\/

Archivos adjuntos:
 

int RegisterWindowMessageA (cadena param);

probablemente haya un problema con esto, tendremos que juguetear con ello.

 
Heroix:

Ayuda a editar el script para transferir el informe al gráfico. No encuentro la razón por la que no se renderiza...

El enlace es a la base de código.

Versión ligeramente retocada por mí en el tráiler.

1. No hay PostMessageA en la importación, pero hay uno en el código.

2. El formato ha cambiado en la comunicación con la api (aquí hay un ejemplo que funcionaPavlick28.07.2014 17:24#)

 

Buenas tardes por favor ayuda. Estoy utilizando un indicador CCI con periodo 34 y con periodo 170. Tengo que comprobar si el CCI 170 cruza la línea de cero del CCI 34. En otras palabras, quiero ver cuando el CCI 34 cruza la línea de cero primero, y el CCI 170 cruza la línea de cero después. En ese momento, el CCI 170 puede tener cualquier valor, y las líneas cero de estos indicadores no coinciden en el gráfico.

¿Cómo lo hago? ¿Es necesario utilizar operadores gráficos? ¿Cuáles y cómo? Muchas gracias de antemano.

 
VOLDEMAR:
O es complicado o no funciona.

¿Cuál es la dificultad? ¿Poner un puntero de archivo al principio de la cadena? ¿O sustituir la lectura de líneas por la escritura?

Aquí, tienes una pista.

r772ra:

FileSeek() para ayudar.

Traer de la ayuda:

//--- откроем файл
   int file_handle=FileOpen(InpDirectoryName+"//"+InpFileName,FILE_READ|FILE_TXT|InpEncodingType);
//////////////////////////////////

//--- получим позицию начала для каждой строки в файле
      GetStringPositions(file_handle,pos);
// Эту функцию возьми в справке.
///////////////////////////////////////

//--- сдвинем позицию на начало этой строки
      if(FileSeek(file_handle,pos[ind],SEEK_SET)==true)
// Здесь надо pos[ind] заменить на ArrayMaximum(). Это будет последняя строка.

////////////////////////////////////

//--- прочитаем и распечатаем строку с номером ind
         PrintFormat("Текст строки с номером %d: \"%s\"",ind,FileReadString(file_handle));
// А это замени на uint  FileWrite()
///////////////////

 
Zeta:

Buenas tardes por favor ayuda. Estoy utilizando un indicador CCI con periodo 34 y con periodo 170. Tengo que comprobar si el CCI 170 cruza la línea de cero del CCI 34. En otras palabras, quiero seguir el momento 1.en que el CCI 34 cruza la línea de cero primero, y luego el CCI 170 cruza lalínea de cero. En este punto el CCI 170 puede tener cualquier valor, las líneas cero de estos indicadores en el gráfico no coinciden.

¿Cómo lo hago? 2. ¿esnecesario utilizar operadores de gráficos? ¿Cuáles y cómo? Muchas gracias de antemano.


2. ¿Por qué?iCCI(......);

Una opción es:

1. Iniciando un contador. Una o dos son opcionales.

A continuación el algoritmo para un contador:

1. Inicializar 0.

Determina cuándo se produce el cruce de cero del CCI(34) e inicia un contador. Por ejemplo, si cruza hacia arriba, entonces +1, si DN -1.

3. Si el contador = 0 - esperar a la siguiente barra.

4. Si el valor del contador es diferente de 0 - Compruebe el cruce de CCI(170).

4.1 Si no hubo cruce, aumentar el valor del contador ARRIBA/Disminuir el valor del contador DN.

4.1 Si es UP - Compruebe el valor del contador: si es diferente de cero y menor que el valor requerido (por ejemplo, esperamos un cruce de CCI(170) dentro de las 5 barras siguientes a un cruce de CCI(34) - entonces se requiere un valor de 5).

4.1.2 Si se cumplen todas las condiciones en la barra actual o si han pasado más barras de las esperadas - ponemos el contador a 0 .

4.1.3 Si no se cumplen las condiciones - aumentar el valor del contador.

4.2 Si DN - de forma similar, sólo para valores negativos.

Razón de la queja: