function get_avg($number_of_lines) { error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING); include "config.php"; $vars = array(); $last_n = file_get_tail($data_file, $number_of_lines); foreach ($last_n as $json_line) { $json_array = json_decode($json_line, true); foreach ($json_array["exchanges"] as $exchange) { $pair_name = $exchange["pair"]; $pair_ask = $exchange["amount"]["ask_total"]; $pair_bid = $exchange["amount"]["bid_total"]; $pair_total = $exchange["amount"]["total"]; $ask_new = $pair_ask + $vars["{$pair_name}" . "_ask"]; $bid_new = $pair_bid + $vars["{$pair_name}" . "_bid"]; $total_new = $pair_total + $vars["{$pair_name}" . "_total"]; $new_array = array("{$pair_name}" . "_ask" => "{$ask_new}", "{$pair_name}" . "_bid" => "{$bid_new}", "{$pair_name}" . "_total" => "{$total_new}"); $vars = array_replace_recursive($vars, $new_array); } } $n_rec = count($last_n); foreach ($vars as $key => $pair) { $pair_new = $pair / $n_rec; $new_array = array("{$key}" => "{$pair_new}"); $vars = array_replace_recursive($vars, $new_array); } $ma_array = array("moving_avg_minutes" => $number_of_lines); $vars = array_replace_recursive($vars, $ma_array); return $vars; }
<?php include "/var/www/alix/walls/functions.php"; date_default_timezone_set('UTC'); //init frames $frames_array = array("48_hours" => "2880"); //write all data (absolute numbers) foreach ($frames_array as $index => $lines) { //initial data load $data = array_reverse(file_get_tail("/var/www/raw/data/history.dat", $lines)); $filename = $index . "_nupool_poloniex.csv"; file_put_contents("/var/www/alix/charts/data/{$filename}", "Time,Sell,Buy,Total \n"); foreach ($data as $data_line) { $data_line = json_decode($data_line, true); $time = date("Y/m/d G:i:s", $data_line["timestamp"]); foreach ($data_line["data"] as $pool) { if ($pool["exchange"] == "poloniex") { $total_ask = $pool["ask_filled"]; $total_bid = $pool["bid_filled"]; $total_both = $total_ask + $total_bid; $writeln = "{$time},{$total_ask},{$total_bid},{$total_both}"; file_put_contents("/var/www/alix/charts/data/{$filename}", "{$writeln} \n", FILE_APPEND); } } } }
<?php date_default_timezone_set('UTC'); if (!function_exists("file_get_tail")) { include "functions.php"; } $tail_file = "/var/www/alix/volume/data/totals_history.dat"; $frames_array = array("360d" => "360"); //write all data (absolute numbers) foreach ($frames_array as $index => $lines) { //initial data load $data = array_reverse(file_get_tail($tail_file, $lines)); $filename = $index . "_volume.csv"; file_put_contents("/var/www/alix/charts/data/{$filename}", "Time,Alix 1,Alix 3,Alix 7, Alix 30, Alix 90 \n"); foreach ($data as $index => $data_line) { if (!empty($data_line)) { $data_line = json_decode($data_line, true); $time = date("Y/m/d G:i:s", $data_line["timestamp"]); $alix1 = $data_line[1]["value"]; $alix3 = $data_line[3]["value"]; $alix7 = $data_line[7]["value"]; $alix30 = $data_line[30]["value"]; $alix90 = $data_line[90]["value"]; $writeln = "{$time},{$alix1},{$alix3},{$alix7},{$alix30},{$alix90}"; file_put_contents("/var/www/alix/charts/data/{$filename}", "{$writeln} \n", FILE_APPEND); } } }
if ($data_line) { $time = date("Y/m/d G:i:s", $data_line["timestamp"]); $total_ask_percent_4h = $data_line["4h_avg"]["total_ask_percent"]; $total_bid_percent_4h = $data_line["4h_avg"]["total_bid_percent"]; $total_ask_percent_15min = $data_line["15min_avg"]["total_ask_percent"]; $total_bid_percent_15min = $data_line["15min_avg"]["total_bid_percent"]; $writeln = "{$time},{$total_ask_percent_4h},{$total_bid_percent_4h},{$total_ask_percent_15min},{$total_bid_percent_15min},100"; if ($total_ask_percent_4h > 0 && $total_bid_percent_4h > O && $total_ask_percent_15min > 0 && $total_bid_percent_15min > 0) { file_put_contents("/var/www/alix/charts/data/{$filename}", "{$writeln} \n", FILE_APPEND); } } } $filename = "4h_4h_15min_combined_ma_percent.csv"; file_put_contents("/var/www/alix/charts/data/{$filename}", "Time,Sell MA/4h,Buy MA/4h,Sell MA/15min,Buy MA/15min,Total \n"); //initial data load 4h $data = array_reverse(file_get_tail("/var/www/alix/walls/data/wall_data.dat", 240)); #4h hours foreach ($data as $data_line) { $data_line = json_decode($data_line, true); if ($data_line) { $time = date("Y/m/d G:i:s", $data_line["timestamp"]); $total_ask_percent_4h = $data_line["4h_avg"]["total_ask_percent"]; $total_bid_percent_4h = $data_line["4h_avg"]["total_bid_percent"]; $total_ask_percent_15min = $data_line["15min_avg"]["total_ask_percent"]; $total_bid_percent_15min = $data_line["15min_avg"]["total_bid_percent"]; $writeln = "{$time},{$total_ask_percent_4h},{$total_bid_percent_4h},{$total_ask_percent_15min},{$total_bid_percent_15min},100"; if ($total_ask_percent_4h > 0 && $total_bid_percent_4h > O && $total_ask_percent_15min > 0 && $total_bid_percent_15min > 0) { file_put_contents("/var/www/alix/charts/data/{$filename}", "{$writeln} \n", FILE_APPEND); } } }