BTC-eAlarm новая версия
Вышла новая версия программы V.0.0.9
Недавно начал торговать на бирже BTC-e, но это не основной мой доход, поэтому сидеть у компа нет времени. Вот и появилась мысль написать смс оповещения. Но оказалось труднее, чем я думал и пока вышла прога которая оповещает звуком когда курс меняется. Прога довольно проста. В водиш адресов public api пары и минимальное и максимальное значение курса.
Так как знаю вашу недоверие к таким прогам решил выложить и описать исходники здесь.в блоге.
Так как когда-то писал на Делфи решил не тратить время на новый язык программирования. Для работы нам обязательно нужно установить компонет synapse он есть в файле исходника а также SoundCard, TrayIcon, uLkJSON.
Основная часть проги работает в таймере
procedure TForm1.tmr1Timer(Sender: TObject);
var js, js2:TlkJSONobject;
s, last,buy,sell: String;
t: TSYSTEMTIME;
begin
if not HttpGetText(link, Memo1.Lines) then
begin
tmr1.Enabled:=False;
ShowMessage('wrong address.');
end;
s := Memo1.Text;
js := TlkJSON.ParseText(s) as TlkJSONobject;
if not assigned(js) then
begin
ShowMessage('wrong address.');
//Exit;
end
else
begin
if js.Field['ticker'] is TlkJSONobject then
begin
js2 := js.Field['ticker'] as TlkJSONobject;
last := js2.Field['last'].Value;
lbl3.Caption:='LAST '+last;
kurslast:=StrToFloat (last);
sell := js2.Field['sell'].Value;
lbl2.Caption:='SELL '+sell;
//Memo_out.Lines.Add('Sell = ' + s1);
buy := js2.Field['buy'].Value;
lbl1.Caption:='BUY '+buy;
// Memo_out.Lines.Add('buy= ' + s1);
end
else
ShowMessage('wrong address.');
end;
если перейти по ссилке https://btc-e.com/api/2/btc_usd/ticker ми увидем
{"ticker":{"high":96.999,"low":93.211,"avg":95.105,"vol":416530.14646,"vol_cur":4362.4947,"last":95.45,"buy":95.753,"sell":95.4,"updated":1375478925,"server_time":1375478927}}
ето ми присвоим переменной S и далее last,buy,sell: уже переменным нужные значения обработанные JSON.
Дальше нам остается сравнить мгновенное значение с заданным и если оно превышает или меньше то компонетн SoundCard проиграент файл alarmmax.mp3
if kursmax<=kurslast then sndcrd1.PlayFile('alarmmax.mp3');
if kursmin>=kurslast then sndcrd1.PlayFile('alarmmin.mp3');
Остальной код предназначен для хранения настоек и выво данных на экран. Программу и все файлы можно скачать у меня на сайте а также следить за обновлениями.
Кому помогла данная инфа пожертвуйте на развитие программы
BTC = 1F3BtisPs8dtKLSATLWqe1SH44P4VQuX6o
LTC = LdGP4AqWD4N3Fnffm7jgMmvW1U3TQ9KExN
6 Комментариев
Рекомендуемые комментарии
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти