-
Notifications
You must be signed in to change notification settings - Fork 0
/
curr.py
58 lines (52 loc) · 1.68 KB
/
curr.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
from yahoo_finance import Currency
import csv, time, os
MyCurrencies = []
usd_eur = Currency('USDEUR')
usd_eur.cur_name = 'USDEUR'
MyCurrencies.append(usd_eur)
eur_usd = Currency('EURUSD')
eur_usd.cur_name = 'EURUSD'
MyCurrencies.append(eur_usd)
gbp_usd = Currency('GBPUSD')
gbp_usd.cur_name = 'GBPUSD'
MyCurrencies.append(gbp_usd)
usd_gbp = Currency('USDGBP')
usd_gbp.cur_name = 'USDGBP'
MyCurrencies.append(usd_gbp)
cny_usd = Currency('CNYUSD')
cny_usd.cur_name = 'CNYUSD'
MyCurrencies.append(cny_usd)
usd_cny = Currency('USDCNY')
usd_cny.cur_name = 'USDCNY'
MyCurrencies.append(usd_cny)
jpy_usd = Currency('JPYUSD')
jpy_usd.cur_name = 'JPYUSD'
MyCurrencies.append(jpy_usd)
usd_jpy = Currency('USDJPY')
usd_jpy.cur_name = 'JPYUSD'
MyCurrencies.append(usd_jpy)
def __checkfileexist(currency_name, directory='/home/jedwards/cur_data'):
if os.path.isfile(directory + '/' + currency_name + '.csv') == False:
csvfile = open(directory + '/' + currency_name + '.csv', 'wb')
wr = csv.writer(csvfile)
wr.writerow(['Bid'] + ['Ask'] + ['Time'])
csvfile.close()
def __writetocsv(currency_data, currency_name, directory='/home/jedwards/cur_data'):
csvfile = open(directory + '/' + currency_name + '.csv', 'wb')
wr = csv.writer(csvfile)
wr.writerow([currency_data.bid] + [currency_data.ask] + [currency_data.time])
wr.close()
def __getcurrdata(cur_obj):
ask = cur_obj.get_ask()
bid = cur_obj.get_bid()
time = cur_obj.get_trade_datetime()
return {'time': time, 'bid': bid, 'ask': ask}
for curr in MyCurrencies:
__checkfileexist(curr.cur_name)
while True:
for curr in MyCurrencies:
d = __getcurrdata(curr)
__writetocsv(curr, curr.cur_name)
time.sleep(60)
for curr in MyCurrencies:
curr.refresh()