Funciones útiles de KimIV - página 65

 
nord >> :

¡¡¡Igor Gracias por las características !!!

¿Por casualidad no existe una función para determinar la pérdida de una posición abierta? ..... o me lo he perdido

Hay uno:

double OrderProfit(  	)
Возвращает значение чистой прибыли ( без учёта свопов и комиссий) для выбранного ордера. 
Для открытых позиций это - текущая нереализованная прибыль. Для закрытых ордеров - зафиксированная прибыль.
Ордер должен быть предварительно выбран с помощью функции OrderSelect(). 

Si necesita ganancias/pérdidas en pips, dependiendo de la posición (compra/venta) reste:

OrderOpenPrice(...) - (Bid o Ask).

 

lista de funciones en el archivo html...

se abrirá en una nueva ventana...

;) denjoy...

Archivos adjuntos:
func2_1.zip  4 kb
 
Igor, si no te importa, he escarbado en todo, pero no he encontrado, ¿hay alguna función en el almacén que devuelva el ángulo de la pendiente de la línea de regresión, o el precio inicial y final en un determinado número de barras? Le estaría muy agradecido....
 
xrust писал(а) >>
Igor, si no te importa, he escarbado en todo, pero no lo he encontrado. ¿Tal vez haya una función en los almacenes que devuelva el ángulo de la pendiente de la línea de regresión, o el precio inicial y final en un determinado número de barras? Le estaría muy agradecido....

En la ecuación LR y(x)=a*x + b

los coeficientes pueden calcularse mediante estas fórmulas.

factor a

coeficiente b

Regresión: ¿qué es?

 

Igor, muchas gracias.

todo lo que se encuentra en su sitio web

http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&id=35&func=fileinfo
 

Igor, quizás tengas algún código bonito que calcule el lote para una orden o posición pendiente a un determinado precio establecido, teniendo en cuenta las posiciones abiertas.


Necesito poner una orden pendiente a X pips del precio actual pero tengo que averiguar cómo calcular correctamente el lote, es decir, hacer que esta orden pendiente se abra al 100%. También tengo que tener en cuenta los swaps, la comisión, los beneficios y las pérdidas de las órdenes.


Sería estupendo que tuvieras tiempo para escribir una función de este tipo.

 

Igor, ¿puedes darnos una función para cerrar órdenes solapadas aquí ? Tal vez alguien más lo necesite. Si está interesado y tiene tiempo para ello, por supuesto.

Si no es mucha molestia, algún consejo sobre cómo implementar esta función en su EA. He probado a sustituir su función "cerrar primero los rentables" por el cierre por tamaño de lote decreciente. Pero sigue dando errores al compilar.

Sinceramente, Azer.

 
KimIV писал(а) >>

Función StringToArrayInt().

ZS. Se adjunta un script para probar la función StringToArrayInt().

La experiencia demuestra que también puede necesitar una función como StringToArrayStr() - si en su notación... :-)

 
Shu писал(а) >>

La experiencia demuestra que a veces también se necesita una función como StringToArrayStr() - si en su notación... :-)

En muchos lenguajes de programación esta función se llama StrSplit(). No me lo he inventado... :-)

La función StrSplit().

Esta función divide una cadena en sus subcadenas para que cada subcadena se convierta en un elemento de matriz independiente. El separador se define mediante un parámetro y puede ser arbitrario. La función StrSplit() devuelve el número de elementos de la matriz y acepta los siguientes parámetros:

  • st - Cadena con separadores.
  • as - La matriz de elementos de tipo cadena.
  • de - Separador. Parámetro opcional. El valor por defecto es "," (coma).
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 23.06.2008                                                     |
//|  Описание : Разбиение строки на массив элементов                           |
//+----------------------------------------------------------------------------+
//|  Возврат:                                                                  |
//|    Количество элементов в массиве                                          |
//|  Параметры:                                                                |
//|    st - строка с разделителями                                             |
//|    as - строковый массив                                                   |
//|    de - разделитель                                                        |
//+----------------------------------------------------------------------------+
int StrSplit(string st, string& as[], string de=",") { 
  int    i=0, np;
  string stp;

  ArrayResize( as, 0);
  while (StringLen( st)>0) {
    np=StringFind( st, ",");
    if ( np<0) {
      stp= st;
      st="";
    } else {
      stp=StringSubstr( st, 0, np);
      st=StringSubstr( st, np+1);
    }
    i++;
    ArrayResize( as, i);
    as[ i-1]= stp;
  }
  return(ArraySize( as));
}

SZU. Se adjunta un script para probar la función StrSplit().

Archivos adjuntos:
 
Prival писал(а) >>

En la ecuación LR y(x)=a*x + b

los coeficientes pueden calcularse mediante estas fórmulas.

factor a

coeficiente b

Regresión: ¿qué es?

1. El análisis de regresión es el estudio de un proceso, un objeto, a partir de una serie de puntos de observación sobre el mismo.

2. Ecuación de regresión (regresión) :

2.1 El investigador elige el tipo de ecuación que cree que se ajusta a la naturaleza física del objeto de estudio o que es más fácil de trabajar. Lo más habitual es utilizar un polinomio.

2.2 Para los estudios iniciales, se suele utilizar un polinomio de primer grado, es decir, una línea recta. Esto se denomina regresión lineal.

2.3 A continuación, como has escrito, se calculan los parámetros de esta recta. Si hay más de 2 puntos de observación, el método más común es el "método de los mínimos cuadrados". La recta se traza de forma que la suma de los cuadrados de las desviaciones de los puntos respecto a la recta sea la menor.

3. Aquí la regresión se refiere a una ecuación de regresión lineal y su gráfico.

Razón de la queja: