Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
wiseplat
GitHub Repository: wiseplat/python-code
Path: blob/master/ invest-robot-contest_sirius-master/strategy/calculate_utils.py
5933 views
1
from utils.util import price_to_float
2
3
4
def calculate_ma(candles, period, argument_name, ma_name):
5
current_period = 0
6
avg_val = 0
7
8
for i in range(1, len(candles) + 1):
9
candle = candles[-i]
10
avg_val = avg_val + candle[argument_name]
11
current_period = current_period + 1
12
13
if current_period >= period or i == len(candles):
14
avg_val = avg_val / current_period
15
for j in range(0, current_period):
16
candles[-i + j][ma_name] = avg_val
17
18
current_period = 0
19
avg_val = 0
20
21
22
def add_prices_to_candles(candles):
23
close_prices = []
24
25
for candle in candles:
26
close_price = price_to_float(candle['close']['units'], candle['close']['nano'])
27
candle_time = candle['time']
28
close_prices.append({'time': candle_time, 'candle': candle, 'price': close_price})
29
return close_prices
30
31
32
def calc_profit_percent(price, buy_price):
33
percent = price / buy_price * 100 - 100
34
return percent
35
36