Indicador YsNewton

Responder
Avatar de Usuario
YsEkU
Mensajes: 179
Registrado: 02 Ene 2007 23:24

Indicador YsNewton

Mensaje por YsEkU »

Saludos hermanos, cuanto tiempo...

Antes que nada pedir disculpas a los foreros que me mandaron privados, y que no he contestado, llevo tiempo sin logearme.

En fin, os dejo un indicador basado en interpolaciones polinomicas de los precios de apertura, cierre, maxima y minima.
El resultado es una especie de Heiken-Ashi mas suavizado y mas certero, que podeis usar o bien para encontrar puntos de entrada-salida. o bien para clarificar la tendencia en un marco temporal superior.
Como una imagen vale mas que mil palabras, os dejo la misma y el indicador.

Espero comentarios. ;-)
Un saludo hermanos.
Adjuntos
imagen indicador
imagen indicador
YsN001.ex4
Indicador
(4.59 KiB) Descargado 248 veces
Avatar de Usuario
Amosis
Mensajes: 306
Registrado: 31 Ene 2006 18:02

Mensaje por Amosis »

Hola YsEcU.

Encantado de verte de nuevo por aquí.

¿Que tal el trading ...?

Algo debe funcionar mal en ese indicador, pues se me bloquea el Meta
cuando lo inserto.

Muchos saludos.
La vida para algunos, es otra cosa. http://lacomunidad.elpais.com/jonas/posts
Avatar de Usuario
YsEkU
Mensajes: 179
Registrado: 02 Ene 2007 23:24

Mensaje por YsEkU »

Saludos Hermano.
No se, a mi me va de lujo...
Te dejo el codigo...

Código: Seleccionar todo

//+------------------------------------------------------------------+
//|                                                     YsNewton.mq4 |
//|                      Copyright © 2008, Yseku. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "YsEkU"
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Red
#property indicator_color2 Blue
#property indicator_color3 White
#property indicator_color4 White

//---- indicator buffers
double Buffer1[];
double Buffer2[];
double Buffer3[];
double Buffer4[];

int nodos=10;
int x[],pase;
double fx[],buff[],pre;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexBuffer(0,Buffer1);
   SetIndexStyle(0,DRAW_HISTOGRAM,2,3);
   SetIndexLabel(0,"Prediccion Open");
   //SetIndexShift(0,1);
   SetIndexBuffer(1,Buffer2);
   SetIndexStyle(1,DRAW_HISTOGRAM,2,3);
   SetIndexLabel(1,"Prediccion Close");
   //SetIndexShift(1,1);
   SetIndexBuffer(2,Buffer3);
   SetIndexStyle(2,DRAW_LINE);
   SetIndexLabel(2,"Prediccion Max");
   //SetIndexShift(2,1);
   SetIndexBuffer(3,Buffer4);
   SetIndexStyle(3,DRAW_LINE);
   SetIndexLabel(3,"Prediccion Min");
   //SetIndexShift(3,1);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
//----
  int cb=IndicatorCounted();
  int b=Bars;
  if(cb==0)
  {
  for(int h=(b-1)-nodos;h>=0;h--)
   {
   Buffer1[h]=Proceso(1,h);
   Buffer2[h]=Proceso(2,h);
   Buffer3[h]=Proceso(3,h);
   Buffer4[h]=Proceso(4,h);
   }
  }
   Buffer1[0]=Proceso(1,0);
   Buffer2[0]=Proceso(2,0);
   Buffer3[0]=Proceso(3,0);
   Buffer4[0]=Proceso(4,0);
   
//----
   Info();
   return(0);
  }
  
//+------------------------------------------------------------------+
void Info()
{
//Print("------------------------------------------------------------");
//Print("********************  Prediccion: ",Buffer1[0]);
}

//+------------------------------------------------------------------+
double Proceso(int serie,int pos)
{
ArrayResize(x,nodos);
ArrayResize(fx,nodos);
ArrayResize(buff,nodos);
pase=0;
   while(pase<nodos)
   {
   if(pase==0)
      {
      for(int i=0;i<nodos-pase;i++)
         {
         x[i]=i+1;
            if(serie==1)buff[i]=Open[i+pos]*10000000000000000000000000000000;
            else if(serie==2)buff[i]=Close[i+pos]*10000000000000000000000000000000;
            else if(serie==3)buff[i]=High[i+pos]*10000000000000000000000000000000;
            else if(serie==4)buff[i]=Low[i+pos]*10000000000000000000000000000000;
         }
      fx[pase]=buff[0];
      }
   else
      {
      for(i=0;i<nodos-pase;i++)
         {
         buff[i]=(buff[i]-buff[i+1])/pase;
         }
      fx[pase]=buff[0];
      }
   pase++;
   }
   int h=-1;
   for(i=0;i<nodos;i++)
      {
      int j=i/2;
      if(h==j)fx[i]=-fx[i];
      if(h!=j)h=j;
      pre=pre+fx[i];
      }
   pre=pre/10000000000000000000000000000000;
return(pre);
}
 
Un saludo hermanos.
Última edición por YsEkU el 22 Sep 2009 10:58, editado 1 vez en total.
Avatar de Usuario
X-Trader
Administrador
Mensajes: 12798
Registrado: 06 Sep 2004 10:18
Contactar:

Mensaje por X-Trader »

Yseku, bienvenido al Foro de nuevo hermano!!! Como va la cosa por el Santander? En cuanto saque tiempo me estudio el indicador con calma.

Abrazos,
X-Trader
"Los sistemas de trading pueden funcionar en ciertas condiciones de mercado todo el tiempo, en todas las condiciones de mercado en algún momento del tiempo, pero nunca en todas las condiciones de mercado todo el tiempo."
Avatar de Usuario
ledzep
Mensajes: 410
Registrado: 25 Sep 2006 03:19
Ubicación: Colombia

Mensaje por ledzep »

Super el indicador, no te imaginas lo útil que me resultó. Gracias.

Avatar de Usuario
YsEkU
Mensajes: 179
Registrado: 02 Ene 2007 23:24

Mensaje por YsEkU »

Saludos Alberto un abrazo virtual jeje, que tal X-trader Jr.? seguro que se saca ya mas pips que yo....

Estube en el ISBAN como un año programando en COBOL y despues en Seguros Pelayo... Ahora estoy mas parado que un avion de marmol, sigo con la ingenieria informatica en la UNED, y aunque no tengo sueldo vuelvo a tener tiempo libre (hay que ver el lado bueno no?) ...
Asi que ya sabeis magnates, si buscais un programador muy freak aqui me teneis jejeje...

Ledzep, cuanto tiempo hermano!. Me alegro que te guste el indicador para eso está... jejeje, ahora estaba intentando con ese indicador hacer un EA basado en curvas de Elliot, el objetivo es buscar el patron 123-A... pero lo tengo algo parado... pilla el testigo jejeje

Un saludo hermanos.
elcctrro
Mensajes: 329
Registrado: 26 Nov 2008 11:09
Ubicación: Zona centro España

Mensaje por elcctrro »

Un saludo YsEkU, una alegria ver gente que programa sin limitaciones (muy bueno lo de redes neuronales).
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Indicadores”