-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbariga1.1.py
129 lines (116 loc) · 7.68 KB
/
bariga1.1.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# -*- coding: utf-8 -*-
import btcelib
import time
BTC_api_key = "SI0R2WWI-5BAPA1QQ-8ZN65649-LSWPMEB2-TM9YCG80"
BTC_api_secret = "3939cd59dbb21b7d39cd6e77347e7fd55b0ea60de4c56f2d28ada559ce6b0bc8"
papi = btcelib.PublicAPIv3()
data = papi.call('ticker', limit=5)
keys = data.keys() # all pairs
i = 0
# вывод всех пар
while i!=len(keys):
print keys[i]
i += 1
mare = raw_input("Пара валют: ") # ввод пары валют
lave = raw_input("На сколько бабла: ") # ввод на сколько бабла будем барыжить
print "===== этап первый (резкое падение цены) ========="
risk = input("На сколько процентов должен упасть курс: ")
tme = input("За сколько секунд он должен упасть ?: ")
print "===== этап второй (отскок цены) - на этом этапе будет покупка ========="
risk1 = input("На сколько процентов должен подняться курс: ")
tme1 = input("За сколько секунд он должен подняться ?: ")
print "===== этап третий (продажа) ========="
income = input("сколько нужно процентов прибыли, чтобы продать: ")
pare = "'"+mare+"'" # делаю из btc_usd в 'btc_usd'
a = time.time() # получаю время в секундах начиная от нашей эры
data = papi.call('ticker/' + pare, limit=5)
pare = data.keys()[0]
buy = (data[pare][u'buy'])
lave = str(round(int(lave) / buy, 3))
print lave
# получаю цену покупки по определенной паре
data = papi.call('ticker/' + pare, limit=5)
pare = data.keys()[0]
old_buy = (data[pare][u'buy'])
while True: # главный цикл которые по очереди задействет цикл то на покупку то на продажу
while True: # пошел цикл(бесконечный)на покупку
# получаю цену покупки продажи для пары
data = papi.call('ticker/' + pare, limit=5)
pare = data.keys()[0]
sell = (data[pare][u'sell'])
buy = (data[pare][u'buy'])
print "== этап первый ждет падения =="
print 'buy: ' + str(buy) # вывожу цену покупки
print 'sell: ' + str(sell) # вывожу цену продажи
if int(time.time() - a) > tme and (old_buy/buy -1)*100 >= risk: # если прошло 10 секунд и цена за это время упала на risk процентов
while True:
data = papi.call('ticker/' + pare, limit=5)
pare = data.keys()[0]
sell = (data[pare][u'sell'])
buy = (data[pare][u'buy'])
print "== этап второй ждет чуть чуть поднятия =="
print 'buy: ' + str(buy) # вывожу цену покупки
print 'sell: ' + str(sell) # вывожу цену продажи
if int(time.time() - a) > tme1 and (buy/old_buy -1)*100 >= risk1:
# отправляю запрос на создание ордера покупки
tapi = btcelib.TradeAPIv1({'Key': BTC_api_key, 'Secret': BTC_api_secret})
tapi.call('Trade',
pair= pare,
type = "buy",
rate = str(buy),
amount = lave,
count=100)
old_buy = buy # запоминаю цену покупки, чтобы позже сравнивать с ценой продажи
print str((old_buy/buy -1)*100) + " %" # вывожу на сколько процентов упала цена
print("Bought") # вывожу слово куплено
break; # цикл на чуть чуть подоражение заканчивается
else:
if (old_buy/buy -1)*100 > 0:
print "Упала на " + str((old_buy/buy -1)*100) + " %" # вывожу на сколько процентов изменилась цена
else:
print "Поднялась на " + str((old_buy/buy -1)*100*-1) + " %" # вывожу на сколько процентов изменилась цена
if int(time.time() - a) > tme1:
old_buy = buy # запоминаю цену чтобы потом узнать на сколько изменилась
a = time.time() # запоминаю время
print "прошло " + str(tme1) + "секунд"
print("@@@@@@@@@@@@@@@@@@")
time.sleep(2)
break;
else:
if (old_buy/buy -1)*100 > 0:
print "Упала на " + str((old_buy/buy -1)*100) + " %" # вывожу на сколько процентов изменилась цена
else:
print "Поднялась на " + str((old_buy/buy -1)*100*-1) + " %" # вывожу на сколько процентов изменилась цена
if int(time.time() - a) > tme:
old_buy = buy # запоминаю цену чтобы потом узнать на сколько изменилась
a = time.time() # запоминаю время
print "прошло " + str(tme) + "секунд"
print("@@@@@@@@@@@@@@@")
time.sleep(3) # пауза цикла на 3 секунды
#на этот моменте цикл пойдет по новой если еще ничего не куплено
print "@@@@@@@@@@@@@@@@@@@@"
while True: # пошел цикл на продажу
# получаю цену покупки продажи для пары
data = papi.call('ticker/' + pare, limit=5)
pare = data.keys()[0]
sell = (data[pare][u'sell'])
buy = (data[pare][u'buy'])
print "== этап третий продаж =="
print("покупал за: "+str(old_buy)) # пишу почем покупал
print 'buy: ' + str(buy) # вывожу цену покупки
print 'sell: ' + str(sell) # вывожу цену продажи
print "если продать " + str((float(sell/old_buy) *0.998*0.998 - 1) * 100) + " %" # сколько процентов заработаю или потеряю если продам
print("@@@@@@@@@@@@@@@@@")
if (float(sell/old_buy) *0.998*0.998 - 1) * 100 >= income: # если сейчас продать и прибыль будет больше или равна income то
# отправляю запрос на продажу
tapi = btcelib.TradeAPIv1({'Key': BTC_api_key, 'Secret': BTC_api_secret})
tapi.call('Trade',
pair=mare,
type = 'sell',
rate = sell,
amount = str(int(lave)*0.998),
count=100)
print ("Sales good: " + str(float((sell/old_buy -1)) *0.998*0.998 * 100)) # пишу что успешно продал и сколько заработал
break; # выход из цикла продажт
time.sleep(2) # остановка на 2 секнды
raw_input("Repeat?") # если нажать интер то все пойдет по новой, купит, потом продаст