Skip to content
Snippets Groups Projects

Update ec2.py

parent 1ea3eac4
No related branches found
No related tags found
No related merge requests found
#!/usr/bin/python3 #!/usr/bin/python3
from statistics import mean, stdev
import math, random, sys, json import math, random, sys, json
from statistics import mean, stdev
args = sys.stdin.read() event = json.loads(sys.stdin.read())
session = json.loads(args)
date = eval(session['key1']) dt = eval(event['key1'])
close = eval(session['key2']) close = eval(event['key2'])
buy = eval(session['key3']) buy = eval(event['key3'])
sell = eval(session['key4']) sell = eval(event['key4'])
minhistory = int(session['key5']) h = int(event['key5'])
shots = int(session['key6']) d = int(event['key6'])
t = session['key7'] t = event['key7']
minhistory = h
shots = d
var_95_list = [] var_95_list = []
var_99_list = [] var_99_list = []
dates = [] dates = []
for i in range(minhistory, len(close)): for i in range(minhistory, len(close)):
if t == "sell": if t == "buy":
if sell[i] == 1: #If it is to sell if buy[i] == 1: #If it is to buy
closing = close[i-minhistory:i] closing = close[i-minhistory:i]
percent_change = [(closing[i] - closing[i-1]) / closing[i-1] for i in range(1,len(closing))]#Calculating percenage change as dataframe method pct_change can't be used percent_change = [(closing[i] - closing[i-1]) / closing[i-1] for i in range(1,len(closing))]
mean_value = mean(percent_change) mean_value = mean(percent_change)
std_value = stdev(percent_change) std_value = stdev(percent_change)
# generate much larger random number series with same broad characteristics # generate much larger random number series with same broad characteristics
...@@ -34,11 +35,11 @@ for i in range(minhistory, len(close)): ...@@ -34,11 +35,11 @@ for i in range(minhistory, len(close)):
var99 = simulated[int(len(simulated)*0.99)] var99 = simulated[int(len(simulated)*0.99)]
var_95_list.append(var95) var_95_list.append(var95)
var_99_list.append(var99) var_99_list.append(var99)
dates.append(str(date[i])) dates.append(str(dt[i]))
if t == "buy": elif t == "sell":
if buy[i] == 1: #If it is to buy if sell[i] == 1: #If it is to sell
closing = close[i-minhistory:i] closing = close[i-minhistory:i]
percent_change = [(closing[i] - closing[i-1]) / closing[i-1] for i in range(1,len(closing))]#Calculating percenage change as dataframe method pct_change can't be used percent_change = [(closing[i] - closing[i-1]) / closing[i-1] for i in range(1,len(closing))]
mean_value = mean(percent_change) mean_value = mean(percent_change)
std_value = stdev(percent_change) std_value = stdev(percent_change)
# generate much larger random number series with same broad characteristics # generate much larger random number series with same broad characteristics
...@@ -49,15 +50,15 @@ for i in range(minhistory, len(close)): ...@@ -49,15 +50,15 @@ for i in range(minhistory, len(close)):
var99 = simulated[int(len(simulated)*0.99)] var99 = simulated[int(len(simulated)*0.99)]
var_95_list.append(var95) var_95_list.append(var95)
var_99_list.append(var99) var_99_list.append(var99)
dates.append(str(date[i])) dates.append(str(dt[i]))
output = {"dates" : dates, output = {"dates" : dates,
"var95" : var_95_list, "var95" : var_95_list,
"var99" : var_99_list "var99" : var_99_list
} }
final_output = json.dumps(output) output = json.dumps(output)
print("Content-Type: application/json") print("Content-Type: application/json")
print() print()
print(final_output) print(output)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment