переодическая раскачка трейдов

dkst
Posts: 32
Joined: Fri Jun 07, 2013 7:49 am

Re: переодическая раскачка трейдов

Post by dkst »

а, ну и смотрю список трейдеров - у большинства comment: try_trader_done
т.е. по этому не форсит. вообще зачем этот флаг ставить? получается, что вся система на 1 раз проходит весь список трейдеров и дальше не работает, а должна бесконечно по кругу работать.
Jabar
Posts: 278
Joined: Thu Sep 20, 2012 3:32 pm

Re: переодическая раскачка трейдов

Post by Jabar »

dkst wrote: у большинства comment: try_trader_done
т.е. по этому не форсит. вообще зачем этот флаг ставить?
а должна бесконечно по кругу работать.
Флаг нужен чтоб одного и тогоже постоянно не долбило.
Видимо алгоритмическая ошибочка. По идее после прохода всех по кругу, флаг должен сбрасываться в ноль. А тут условие не выполнено - всех еще не прошла. А пройти всех не может - не пускает ограничение по алексе.
имхо так кажется, при первом взгляде на анамнез :)
admin
Site Admin
Posts: 37247
Joined: Wed Sep 10, 2008 11:43 am

Re: переодическая раскачка трейдов

Post by admin »

Да, видимо оно, поправочка

Code: Select all

<?php
require('../includes/prepare.php');


$max_in_hits = 5;
// % of out clicks for force
$out_percent = 3;
$max_alexa_rank = 500000;


// select total outs to trade during last 24h
$total_outs = db_value('total_hits', 'select sum(ho0+ho1+ho2+ho3+ho4+ho5+ho6+ho7+ho8+ho9+ho10+ho11+ho12+ho13+ho14+ho15+ho16+ho17+ho18+ho19+ho20+ho21+ho22+ho23) as total_hits from day
WHERE h IN (SELECT td FROM traders WHERE system_trade = 0)');

$hits_to_force = round($total_outs*$out_percent/100);
if ($hits_to_force < 1) die("Not enough hits to force. Do we have out hits at all ? ");


// set 'done' flag
db_query("UPDATE traders SET tcomment = 'try_trader_done' WHERE tcomment = 'try_trader' and tff = 0 ");
// check if we alreading forcing someone
$td = db_value('td', "SELECT td FROM traders WHERE tcomment = 'try_trader' and tff != 0 ");
if ($td) {
   die("We are trying trader {$td} right now ");
}



$low_traders = array();
// select _active_ trades with less then $max_in_hits during last 24h
$q = db_query("select sum(hr0+hr1+hr2+hr3+hr4+hr5+hr6+hr7+hr8+hr9+hr10+hr11+hr12+hr13+hr14+hr15+hr16+hr17+hr18+hr19+hr20+hr21+hr22+hr23) as total_hits, h, ext_info from day
JOIN traders as t on t.td = day.h
WHERE system_trade = 0 and ta = 1 and tff = 0 and tcomment != 'try_trader_done'  
GROUP BY h
HAVING total_hits <= '".(int) $max_in_hits."' ");
while ($d = db_fetch_assoc($q)) {

	$d['ext_info'] = unserialize($d['ext_info']);
   	if (!preg_match('|Alexa Rank (.*?)$|is', $d['ext_info']['alexa'], $out)) continue;

   	$rank = str_replace(',','',$out[1]);

   	if ((int) $rank > $max_alexa_rank) continue;

	$low_traders[$d['h']] = db_value('SUM(uni)', "SELECT SUM(uni) FROM history WHERE trader = '{$d['h']}' ");
}

if (count($low_traders)) {
	arsort($low_traders);
	$force_trader = current(array_keys($low_traders));

	db_query("UPDATE traders SET tff = '{$hits_to_force}', tcomment = 'try_trader' WHERE  td = '{$force_trader}' ");
	echo "Forcing {$hits_to_force} to trader {$force_trader} \n";

} else {

	db_query("UPDATE traders SET tcomment = '' WHERE tcomment = 'try_trader_done'");
	die("No traders to force");

}

Don't forget to run script update
dkst
Posts: 32
Joined: Fri Jun 07, 2013 7:49 am

Re: переодическая раскачка трейдов

Post by dkst »

ок. вроде заработало.
а предыдущий вопрос был - когда система будет в сам смарт встроена, а не отдельным скриптом?
admin
Site Admin
Posts: 37247
Joined: Wed Sep 10, 2008 11:43 am

Re: переодическая раскачка трейдов

Post by admin »

Ждемс отзывов от того что есть и можно добавлять в 51 )
Don't forget to run script update
dkst
Posts: 32
Joined: Fri Jun 07, 2013 7:49 am

Re: переодическая раскачка трейдов

Post by dkst »

ну в общем за исключением колонки с хистори ратио, которая должна быть в % - все работает как надо. жду в апдйете.
billion
Posts: 394
Joined: Wed Feb 06, 2013 1:42 pm
Contact:

Re: переодическая раскачка трейдов

Post by billion »

$out_percent = 3;
может ли быть дробным? 0.5 например?
admin
Site Admin
Posts: 37247
Joined: Wed Sep 10, 2008 11:43 am

Re: переодическая раскачка трейдов

Post by admin »

Да по идее
Don't forget to run script update
admin
Site Admin
Posts: 37247
Joined: Wed Sep 10, 2008 11:43 am

Re: переодическая раскачка трейдов

Post by admin »

Don't forget to run script update
xawm
Posts: 542
Joined: Tue Dec 25, 2012 6:37 pm

Re: переодическая раскачка трейдов

Post by xawm »

помоему ещё существует проблема с сайтами для которых не определена Alexa которые показывают алексу в таблице как:

Code: Select all

R:
Скрипт считает такие трейды как сайты с наивысшей алексой.
Post Reply