splines

Todo sobre el trading en los mercados financieros: funcionamiento, dudas, noticias, etc.
Responder
Avatar de Usuario
trikero
Mensajes: 739
Registrado: 24 Ago 2006 23:44

splines

Mensaje por trikero »

hola:
estoy buscando algun modulo matematico para amibroker o visual chart que calcule splines de determinadas curvas de indicadores o mas concretamente las tangentes en el punto de salida (ultimo punto)de dichas curvas.

haber, que no parezca un rollo. un spline es la curva que pasa por cuatro puntos. para resumir, si cogeis autocad, este calcula dichas curvas si le indicas una serie de puntos por los que debe pasar.son utilizadas ahora mucho en el cad para automoviles, por eso tienen esas formas tan redondeadas.

lo que me interesa es obtener la tangente de dichas curvas en el ultimo punto (es decir, si tienen una proyeccion positiva o negativa y cuanta pendiente tienen) a fin de calcularlas sobre unas medias e intentar hacer un sistema con esto, pero no encuentro nada parecedo o no lo se encontrar.


¿?alguna sugerencia¿?
las gacelas tambien tenemos derecho a pasto
Es probable que Dios no exista. Ahora, deja de preocuparte y disfruta de la vida
javi7
Mensajes: 113
Registrado: 03 Jun 2006 17:08

Mensaje por javi7 »

Yo diria que lo que pides es la derivada de la "función" que es la pendiente de la linea tangente, es decir, restar el penultimo dato al ultimo.

En visual chart sería Indicador(0)-Indicador(1).

Saludos
javi7
Mensajes: 113
Registrado: 03 Jun 2006 17:08

Mensaje por javi7 »

De hecho yo hice un sistema muy simple pero que no iba nada mal.

Usaba esa "tangente" sobre una media del RSI y si era positivo compraba y si no vendia...

Como todo lo que usa medias en los laterales te daban por todos lados pero luego no iba mal.
Avatar de Usuario
trikero
Mensajes: 739
Registrado: 24 Ago 2006 23:44

Mensaje por trikero »

javi7, no solo es delta x /delta t con los datos en crudo (medias) dado que serian pendientes de la recta que pasa por dos puntos, es algo mas"redondeados". si haces las dos rectas que pasan por tres puntos te saldra mas o menos un cono. si hayas la curva , te saldra el radio y punto central , pero en la derivada de ambas figuras la pendiente en el punto extremo es muy distinta por propia definicion de las funciones que describen ambas lineas .


el sistema compararia las pendiente de dos o tres medias y algun oscilador, al comparar varias puede llegar (o eso espero) cuando se esta en movimientos claros o en simples laterales, pero claro, primero hay que tener las "tangentes"

hombre,lo ideal seria hallar las transformaciones de furier de las supuestas "ondas" de fluctuacion del mercado, pero el problema es que el sistema cambia de frecuencia basica de vibracion :-)). creo que hay algun programa de trading que se basa en ello (¿?podriamos llamarlo cuasi onda de eliot :-?? )
las gacelas tambien tenemos derecho a pasto
Es probable que Dios no exista. Ahora, deja de preocuparte y disfruta de la vida
javi7
Mensajes: 113
Registrado: 03 Jun 2006 17:08

Mensaje por javi7 »

Creo que no te sigo....

La tangente de cualquier curva o figura geometrica es una recta que pasa por un punto y que su pendiente es igual a la derivada de la función en dicho punto.

Si no tenemos la función y simplemente tenemos la curva debemos buscar el limite cuando h --> 0 de f(x+h)-f(x)/h Esto es restar el valor de dos puntos lo más cercanos posible (h-->0).
Imagen

Por tanto nuestra "h" esta limitada al minutaje que tengamos...

De este modo restando el valor de hoy menos el de ayer obtendremos la pendiente de la tangente en el punto medio de ambos valores.

Lo que comentas de los conos lo entiendo como lo siguiente:

Tienes tres puntos consecutivos y lo unes creando una curva. Y hallas la tangente en el punto central de esa curva.

Esto lo puedes hallar usando exclusivamente los 3 puntos inicales hallando la curva definida por esos tres puntos y hallando su derivada pero esto no creo que sea programable en VC y metastock . Asi que debes buscas puntos intermedios entre esos tres principales, entonces escojes los dos puntos adyacentes al que quieres obtener y los restas...

Lo de hayar tangentes en una curva definida por tres puntos es complicado si no conoces puntos intremedios.

Siempre se podría intentar programar un indicador que halle la ecuación f(x)=ax^2+bx+c que verfique los tres puntos y que luego haye la derivada en x=2ax+b

Saludos[/img]

javi7
Mensajes: 113
Registrado: 03 Jun 2006 17:08

Mensaje por javi7 »

PD: Acaba de coger lapiz y papel y es facil desmostrar que cogiendo 3 puntos la derivada en el central es igual al último menos el primero.

Si quieres luego lo cuelgo pero es algo asi:
Determinas tres puntos. (0, y1),(1, y2), (2 ,y3) el valor de la y es el valor del indicador.

En x=0 y=y1 luego de la función f(x)=ax^2+bx+c se deduce que c=y1.

Luego hayamos que para x=1 y2=a+b+y1 y para x=2 y3=4a+2b+y1

Operando ambas expresiones llegamos a poner a y b en función de los parametros y1, y2 e y3.
a=(y1-2y2+y3)/2 y b=(-3y1+4y2-y3)/2

Si en x=1 F´(x)=2a+b se sustituyen a y b y se llega a que

F`(1)=y3-y1
Avatar de Usuario
trikero
Mensajes: 739
Registrado: 24 Ago 2006 23:44

Mensaje por trikero »

es que no se trata de conocer la tangente en el punto medio, si no la del ultimo punto,que efectivamente es la derivada del polinomio que define la curva al efecto (punto h tomando tiempo- en minutos, horas o dias o tick- como h), ademas el tema no solo es de conocer la circunferencia que pasa por tres ultimos puntos, si no la funcion cuadratica que cumple que ademas es tangente en primer punto a la curva formada por los puntos h-3 h-2 y h-1 (definicion mas o menos ortodoxa de un spline).

hace tiempo me hize un programa en basic (tiempos del DOS 2.0) que calculaba los factores del polinomio del spline de n puntos y por lo tanto es facil hallar la derivada por que la transformacion es muy sencilla, pero hace ya tanto tiempo que tendria que desenpolvar neuronas ya cadudadas. y el tema sobre todo es saber si hay algun modulo matematico "enchufable" al ami o el visual que facilite el tema por que hay que trabajar con matrices (arrays) y transformaciones (multiplicaciones y demas) de los mismos) y si no tienes las herramientas adecadas,te puedes volver loco y no poder resolver el problema,

voy a ver si cojo un autocad e imprimo la diferencia entre un a curva definida por tres puntos y un spline que pasa por 4 (grosomodo dicho). y la tangente en el ultimo punto de ambas curvas.

por cierto, javi7, te agradezco la ayuda y se agradece el esfuerzo, pero ten en cuenta que por el momento es una paja mental que puede que no resulte nada o sea realmente util en el trading ,aunque me comprometo a publicar lo que encuentre.
hombre la idea es hacer un sistema seguidor de tendencia a medio/largo plazo y que pueda detectar ,por que las curvas sean muy planas osea su tangente en el ultimo punto sean casi cero o un rango pequeño, que la tendencia esta en lateral y se inhiba de operar. pero a lo mejor resulta que estoy equivocado y no sirven los dichosos splines.

un saludo.
las gacelas tambien tenemos derecho a pasto
Es probable que Dios no exista. Ahora, deja de preocuparte y disfruta de la vida
Avatar de Usuario
Optiondreamer
Mensajes: 342
Registrado: 28 Mar 2006 08:07
Ubicación: 40.705571, -74.013432

Codigo para dibujar splines en VB

Mensaje por Optiondreamer »

No se si es lo que andabas buscando. Por si te sirve:
http://www.planetsourcecode.com/vb/scri ... 1&lngWId=1

Saludos
Avatar de Usuario
trikero
Mensajes: 739
Registrado: 24 Ago 2006 23:44

Mensaje por trikero »

si, puede servirme dado que al menos es un ejemplo en visual basic. el problema puede ser pasarlo a lenguaje afl (ami) o implementarlo en el visual cart. sigo mirando el tema, ya os dire si va p'alante o p'atras
las gacelas tambien tenemos derecho a pasto
Es probable que Dios no exista. Ahora, deja de preocuparte y disfruta de la vida
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Trading en General”