La mayoría de inversores tenemos nuestra cartera escrita o bien en un Excel o bien en Google Sheets.
A pesar de que me manejo mejor con Excel yo lo tengo todo en Google por su facilidad al coger datos de webs y compartirlos a traves del blog, así como acceder desde cualquier ordenador.
Una duda que me llevo un tiempo resolver fue ¿cómo pongo la cotización de mis fondos de inversión actualizada? Me costo un tiempo encontrar como hacerlo pero os explico como hacerlo por si os es útil.
El concepto:
Google deja coger información de Google Finance con una simple formula, así es como tenemos todos nuestra cartera publicada... pero los fondos no es tan simple. Lo que haremos será ir a una página con datos fiables y actualizados como Morningstar, buscar en el código HTML en que tabla esta y trasladarlo a nuestra hoja de Google.
¿por qué si por ejemplo tengo el fondo de cobas no cojo el dato directamente de la web de cobas?
Quiero estandarizar todo lo máximo posible independientemente del fondo que tenga. Morningstar trata todos los fondos de igual manera por tanto es perfecta.
Empezando:
Para bajar los datos deberíamos saber algo de HTML pero os ahorro el problema y os pongo que tenéis que poner directamente en la hoja de Google:
=INDEX(split(importXml(CONCATENATE("http://www.morningstar.es/es/funds/snapshot/snapshot.aspx?id=","F00000WI0D"),"(//td[@class='line text'])[1]")," "),1,2)
¿Veis donde pone "F00000WI0D" en naranja? ahí va el "valor" del fondo que quiero buscar y variará según el fondo que se trate. Yo lo tengo asociado una celda para luego al arrastrar la formula hacia abajo va avanzando la casilla y me da el valor de las celdas siguientes ¿como consigo ese valor?
En este caso el valor es: "F00000WI0D" que corresponde a AzValor internacional. Simplemente me voy a la pagina de Morningstar de AzValor internacional poniendo en Google:
"Morningstar AzValor internacional" y en la url encontraremos el valor:
Con esto tendremos el valor en la hoja de Google y se actualizara automáticamente. Algunas veces veréis que pone el texto REF eso es debido a que por cualquier motivo Google no puede acceder a la web de Morningstar en ese momento. Dando a F5 se suele resolver y sino pues a esperar a que funcione no suele ser habitual y no suele ser mas de un par de horas.
Hilando fino:
Morningstar pone los decimales con , y Google usa . por lo que con el valor tal cual le tenemos no nos dejará hacer operaciones matemáticas. Para cambiar la , por el punto automáticamente podéis copiar esta formula:
=left(J13,(len(J13)-3))&"."&right(J13,2)
Donde J13 tiene que ser la celda donde hayáis puesto la anterior formula. Con esto cambiáis la coma por el punto y ya tendréis el valor del fondo de manera correcta.
Espero que os sea útil cualquier duda dejadmela en los comentarios.
también funciona en Excel?
ResponderEliminarDe todas formas, muchas gracias por la aportación
José María
Hola Jose Maria,
EliminarPara excel no funciona la misma formula. En excel tienes que bajarte los datos desde web desde Datos> desde web o si eso no sirve deberás crearte una macro que al ejecutarla abra internet explorer, la web y finalmente coja los datos del HTML. Suena más complicado de lo que realmente es si sabes programar.
Un saludo
Muchas gracias por tu inestimable información. Un saludo.
ResponderEliminarJuan P.
Me alegro de que sea útil Juan
EliminarUn saludo
Muchas gracias por la aportación, muy buen trabajo con la web.
ResponderEliminarGracias a tí por pasarte!
EliminarUn saludo
Recientemente he abierto una pequeña cartera de fondos indexados y esto me viene muy bien para su seguimiento. Muchas gracias por este gran trabajo!
ResponderEliminarGracias a ti por dejar el comentario!
EliminarYa no funciona....
ResponderEliminarHola Anónimo,
EliminarSigue funcionando solo que a veces la web de morningstar falla. Si quieres otro metodo mira este video que pongo aquí donde explico como conseguir el valor de los fondos desde Rankia:
http://eljoveninversor.blogspot.com/2019/02/crear-cartera-en-power-bi.html?showComment=1549211899778#c5753112626953838411
Un saludo
muy interesante... tienes también la fórmula para planes de pensiones? y para ETFs?
ResponderEliminargracias
Para planes de pensiones no lo se, para ETF es igual solo tienes que buscar el ETF en morningstar y ya esta... si no te saca el valor tendrás que ajustarlo un poco pero vamos yo uso exactamente la misma para un ETF the world
EliminarBuenas. Gracias por el aporte. ¿Sería posible conseguir el dato de volatilidad del fondo? Gracias. Saludos
ResponderEliminarHola Helios,
EliminarCualquier valor si aparece en una web con paciencia se puede llegar a poner. Si tienes una web donde te de el dato de la volatilidad no veo porque no.
Hola,
ResponderEliminarNo se si será culpa mía pero cada vez que introduzco la formula me sale error puede ser por que bien los datos o algo.
Un saludo
ten en cuenta que en formato español debes reemplazar las comas d ela fórmulas por ; en todos los casos
EliminarHola!
EliminarEcha un ojo a este video que cree por si ayuda:
https://www.youtube.com/watch?v=8fAY3Z4MP-E&t=1s
Muchas gracias por tu ayuda, ha mejorado mi método,funciona bien tanto para ETFs como para Fondos cuando tienen asociado un id. Pero en ocasiones no aparece el id (ejemplo ETFMG PRIME CYBER SECURITY) , podrías decir qué hacer en estos casos?
ResponderEliminarHola!
EliminarEcha un ojo a este video donde explico como sacar el valor de cualquier página:
https://www.youtube.com/watch?v=8fAY3Z4MP-E&t=1s
NO FUNCIONA CON EL CODIGO DE LOS FONDOS MORNIGSTAR
ResponderEliminarHola, las formulas siguen funcionando a veces es posible que hagan cambios en la web y dejen de funcionar, tengo un video en el canal de YouTube donde explico con mas detalle como hacerlo como pongo en otro comentario.
EliminarGracias
Interesante información! Muy útil.
ResponderEliminarSaludos
Gracias!! Un saludo
Eliminar