-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path0001-client3.py.patch
71 lines (61 loc) · 2.35 KB
/
0001-client3.py.patch
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
From 6220778d3d4ec5247f5bef21ef18af55555eca18 Mon Sep 17 00:00:00 2001
From: Rupesh Kumar <[email protected]>
Date: Tue, 28 Sep 2021 15:37:41 +0530
Subject: [PATCH] 'client3.py'
---
client3.py | 14 +++++++++-----
client_test.py | 3 ++-
2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/client3.py b/client3.py
index f1771c3..1b71cc8 100644
--- a/client3.py
+++ b/client3.py
@@ -35,25 +35,29 @@ def getDataPoint(quote):
stock = quote['stock']
bid_price = float(quote['top_bid']['price'])
ask_price = float(quote['top_ask']['price'])
- price = bid_price
+ price = (bid_price+ask_price)/2
return stock, bid_price, ask_price, price
def getRatio(price_a, price_b):
""" Get ratio of price_a and price_b """
""" ------------- Update this function ------------- """
""" Also create some unit tests for this function in client_test.py """
- return 1
+ if(price_b==0):
+ return
+ return float(price_a)/float(price_b)
# Main
if __name__ == "__main__":
# Query the price once every N seconds.
- for _ in iter(range(N)):
+ for _ in range(N):
quotes = json.loads(urllib.request.urlopen(QUERY.format(random.random())).read())
""" ----------- Update to get the ratio --------------- """
+ prices={}
for quote in quotes:
stock, bid_price, ask_price, price = getDataPoint(quote)
- print ("Quoted %s at (bid:%s, ask:%s, price:%s)" % (stock, bid_price, ask_price, price))
+ prices[stock]=price
+ print ("Quoted %s at (bid:%s, ask:%s, price:%s)" % (stock, bid_price, ask_price, price))
- print ("Ratio %s" % getRatio(price, price))
+ print ("Ratio %s" % (getRatio(prices['ABC'], prices['DEF'])))
diff --git a/client_test.py b/client_test.py
index af2bf26..145f3f8 100644
--- a/client_test.py
+++ b/client_test.py
@@ -1,5 +1,5 @@
import unittest
-from client3 import getDataPoint
+from client3.py import getDataPoint, getRatio
class ClientTest(unittest.TestCase):
def test_getDataPoint_calculatePrice(self):
@@ -8,6 +8,7 @@ class ClientTest(unittest.TestCase):
{'top_ask': {'price': 121.68, 'size': 4}, 'timestamp': '2019-02-11 22:06:30.572453', 'top_bid': {'price': 117.87, 'size': 81}, 'id': '0.109974697771', 'stock': 'DEF'}
]
""" ------------ Add the assertion below ------------ """
+ self.assertEqual(1,1)
def test_getDataPoint_calculatePriceBidGreaterThanAsk(self):
quotes = [
--
2.26.2.windows.1