Archivo de la categoría: Desarrollo

How to graph #cryptocurrency high and lows

Hello there today i will show you how to a make cool graph on the bitcoins high and lows, you can use this to create your own monitoring system for the #cryptos of your interest, the elements we are going to use is Apache for web server, PHP as server side programing Json for hold our data set and for last we would use Chart.js to make the graphs, this could be extendable to create a super chart holding what ever you want to show , i will try to extended and publish a more complete project, but for the scope of this tutorial we are ok. Nice so lets get to it.

The first thing you will need is to get Bitcoin Dataset on the high and lows you can get those using R  programing or using an API from other website. I will assume you did that as a hint, i will tell you you can create a PHP script to retrieve the data en inject that into Postgresql database,  and after that set a Cron job that runs that script every 5 minutes or so, that would the trick.

You will need to record two things the time and the data so at the end you will get something like this

Ok cool you got your data-set you got your Cron job getting that data into PostgreSQL so now lets convert that into a graph that can be study easily first you will need to convert the database information into JSON format, for that follow this code:

<?php
//setting header to json
header(‘Content-Type: application/json’);
//$option=$_POST[‘option’];
$link = pg_connect(“host=127.0.0.1 port=5432 dbname=tracking user=postgres password=123456”);
if (!$link) {echo “Could not connect to central node STEP 1.\n”; exit;}
$result = pg_query($link,”select tiempo, bitcoin from HL_tracking”);
//loop through the returned data
$data = array();
while($row=pg_fetch_assoc($result)){
$data[] = $row;
}
pg_close($db);
print json_encode($data);
?>

Now to put that in use you will need to use you web browser go to your web server and run that code, it will generate a Json array. Keep your Web Developer tools at hand we will use them to validate that all is good in the next step. Ok now you need another two files an html file that will hold the the canvas for the graph and application in Ajax to create the graph. Lest see the html file first.

<!DOCTYPE html>
<html>
<head>
<meta charset=”utf-8″>
<title>LinuxTrader Graphics</title>
<style type=”text/css”>
#chart-container {
width: auto;
height: auto;
}
</style>
</head>
<body>
<div id=”chart-container”>
<canvas id=”mycanvas”></canvas>
</div>

<!– javascript –>
<script type=”text/javascript” src=”js/jquery.js”></script>
<script type=”text/javascript” src=”js/chart.min.js”></script>
<script type=”text/javascript” src=”js/app.js”></script>
</body>
</html>

That was easy right? We set to auto both ranges of the chart so it could be fully deployed on web browser. and very important at the end we load the necessary JavaScript. Jquery-min.js comes from Jquery project the chart.min.js comes from Chart.js project and app.js comes from us we need to create that file and set the code from our graph. Lets see how:

$(document).ready(function(){
$.ajax({
url: “http://127.0.0.1/swapngo.org/proyecta_json.php”,
method: “GET”,
success: function(data) {
console.log(data);
var tiempo = [];
var bitcoin = [];

for(var i in data) {
tiempo.push(“Date ” + data[i].tiempo);
bitcoin.push(data[i].bitcoin);
}

var chartdata = {
labels: tiempo,
datasets : [
{
label: ‘Bitcoin’,
backgroundColor: ‘rgba(78, 153, 224)’,
borderColor: ‘rgba(200, 200, 200, 0.75)’,
hoverBackgroundColor: ‘rgba(200, 200, 200, 1)’,
hoverBorderColor: ‘rgba(200, 200, 200, 1)’,
data: bitcoin
}
]
};

var ctx = $(“#mycanvas”);

var barGraph = new Chart(ctx, {
type: ‘line’,
data: chartdata
});
},
error: function(data) {
console.log(data);
}
});
});

OK so you can see that in this code we feed the app using our JSON file plus we give some pointers to the graph like the type of graph we want using this data set structure you can easily go from a bar graph to a linear graph by changing the TYPE parameter. The code is easy to understand we create to variables this are the two columns in our database table, the we run trough the the table and we push that data into the graph and last we deploy the data using RGBA colors you can easily modify this color. When you go to the html file you will get something like this:

Now that gives you something to think about now you could cover more in your data-set like the price of the currency and adjust your export program to JSON format and add another variable to the chart and just like that you build you own monitoring system for bitcoin or any Crypto you like.

How to go even deeper ? well lots of things can be done one thing i am particular interested is in how to do this in absolute REAL TIME for example lets say you adjust the Cron job to retrieve the data every 5 seconds or hell every 2 seconds that is REAL TIME for me but that will cause overload in the server running the job that is fact but lets say your machine or cluster can handle that, you can think in open a stream query that is always getting that data and do the whole cycle to put the data in the graph. what do you think? i will love to hear thoughts about it. Anyways that is all i got for you today hope you find this article useful. See you later alligator. Hey if you have any questions let me know.

Introducing SwapN>GO

Hola a todos espero esta entrada los encuentre bien,  solo dejo estas lineas para comentar como funciona el sistema que desarrollamos para trabajar Crypto Currency inicialmente en Venezuela por que somos Venezolanos y sinceramente la criptomoneda es una alternativa para la encomia del País. Desarrollamos SwapN>GO es una plataforma de publicación de oferta y demanda ademas  de cambio de efectivo.

Seguir leyendo Introducing SwapN>GO

Introducción a #GIT

Bueno un nuevo post esta vez acerca de git, cito desde la Wikipedia:

In software developmentGit (/??t/) is a distributed revision control and source code management (SCM) system with an emphasis on speed.[3]Git was initially designed and developed by Linus Torvalds for Linux kernel development; it has since been adopted by many other projects. Every Git working directory is a full-fledged repository with complete history and full revision tracking capabilities, not dependent on network access or a central server. Git is free software distributed under the terms of the GNU General Public License version 2

Seguir leyendo Introducción a #GIT

#Pentaho – Migracion de Kettle_properties

pentaho-logoCuando se trabaja con #PDI (Pentaho Data Integration) se puede realizar migraciones de configuraciones de PDI moviendo el archivo kettle_properties de un SERVER a otro. Lo importante es declarar la variable de ambiente de forma correcta para que el PDI pueda tomar el archivo con los cambios que se realizaron previamente en la antigua plataforma.

Seguir leyendo #Pentaho – Migracion de Kettle_properties

Simple #HTML #CSS Menu

Vamos a hacer un #menu flotante rápidamente, este menú en mi caso lo estoy desarrollando para utilizarlo como punto de redirección del idioma del website de un cliente a otro lenguaje (Language Switcher). Este enfoque es mucho mas sencillo y practico que hacer una pagina entera de intro con los distintos idiomas disponibles de un portal. Claro ustedes úsenlo para lo que mas le convenga. realmente es muy simple. veamos el código.

Seguir leyendo Simple #HTML #CSS Menu