AROON
aroondown, aroonup = AROON(high, low, timeperiod=14)
Plot
Working Example
from cloudquant.interfaces import Strategy
from collections import OrderedDict
import ktgfunc
import talib
class WE_AROON(Strategy):
def on_start(self, md, order, service, account):
# symbol and timestamp
print(self.symbol + ": " + service.time_to_string(service.system_time))
daily_bars = md.bar.daily(start=-100)
high = daily_bars.high
low = daily_bars.low
aroondown, aroonup = talib.AROON(high, low, timeperiod=14)
# get the date values
dates = service._context.market._storage.market_hours.keys()
dateList = []
for date in dates:
dateList.append(str(date.strftime('%Y-%m-%d')))
dates = sorted(dateList, reverse=True)[1:101]
dates.sort()
dict = OrderedDict()
dict['date'] = dates
dict['high'] = high
dict['low'] = low
dict['aroondown'] = aroondown
dict['aroonup'] = aroonup
symbol = 'AROON: ' + self.symbol
print ktgfunc.talib_table(symbol, 2, dict)
Console
MSFT: 2017-02-09 09:30:00.000000
AROON: MSFT | ||||
---|---|---|---|---|
Input | Output | |||
date | high | low | aroondown | aroonup |
2016-09-16 | 57.24 | 56.37 | nan | nan |
2016-09-19 | 57.36 | 56.47 | nan | nan |
2016-09-20 | 56.97 | 56.37 | nan | nan |
2016-09-21 | 57.46 | 56.70 | nan | nan |
2016-09-22 | 57.61 | 57.24 | nan | nan |
2016-09-23 | 57.52 | 56.99 | nan | nan |
2016-09-26 | 56.76 | 56.45 | nan | nan |
2016-09-27 | 57.67 | 56.30 | nan | nan |
2016-09-28 | 57.67 | 57.28 | nan | nan |
2016-09-29 | 57.78 | 56.83 | nan | nan |
2016-09-30 | 57.38 | 56.96 | nan | nan |
2016-10-03 | 57.16 | 56.68 | nan | nan |
2016-10-04 | 57.21 | 56.59 | nan | nan |
2016-10-05 | 57.57 | 56.88 | nan | nan |
2016-10-06 | 57.47 | 56.90 | 50.00 | 64.29 |
2016-10-07 | 57.59 | 57.03 | 42.86 | 57.14 |
2016-10-10 | 58.00 | 57.48 | 35.71 | 100.00 |
2016-10-11 | 57.63 | 56.51 | 28.57 | 92.86 |
2016-10-12 | 56.89 | 56.02 | 100.00 | 85.71 |
2016-10-13 | 56.92 | 55.94 | 100.00 | 78.57 |
2016-10-14 | 57.35 | 56.74 | 92.86 | 71.43 |
2016-10-17 | 57.07 | 56.49 | 85.71 | 64.29 |
2016-10-18 | 57.56 | 57.02 | 78.57 | 57.14 |
2016-10-19 | 57.45 | 57.01 | 71.43 | 50.00 |
2016-10-20 | 57.13 | 56.28 | 64.29 | 42.86 |
2016-10-21 | 60.04 | 59.09 | 57.14 | 100.00 |
2016-10-24 | 60.59 | 59.53 | 50.00 | 100.00 |
2016-10-25 | 60.96 | 60.39 | 42.86 | 100.00 |
2016-10-26 | 60.79 | 60.06 | 35.71 | 92.86 |
2016-10-27 | 60.42 | 59.69 | 28.57 | 85.71 |
2016-10-28 | 60.11 | 59.18 | 21.43 | 78.57 |
2016-10-31 | 60.01 | 59.52 | 14.29 | 71.43 |
2016-11-01 | 59.62 | 58.85 | 7.14 | 64.29 |
2016-11-02 | 59.53 | 58.90 | 0.00 | 57.14 |
2016-11-03 | 59.24 | 58.71 | 28.57 | 50.00 |
2016-11-04 | 58.88 | 58.13 | 21.43 | 42.86 |
2016-11-07 | 60.11 | 59.38 | 14.29 | 35.71 |
2016-11-08 | 60.37 | 59.75 | 7.14 | 28.57 |
2016-11-09 | 60.18 | 58.80 | 0.00 | 21.43 |
2016-11-10 | 60.08 | 57.24 | 100.00 | 14.29 |
2016-11-11 | 58.72 | 57.62 | 92.86 | 7.14 |
2016-11-14 | 58.68 | 56.90 | 100.00 | 0.00 |
2016-11-15 | 59.49 | 58.31 | 92.86 | 0.00 |
2016-11-16 | 59.66 | 54.27 | 100.00 | 0.00 |
2016-11-17 | 60.95 | 59.97 | 92.86 | 100.00 |
2016-11-18 | 61.14 | 60.30 | 85.71 | 100.00 |
2016-11-21 | 60.97 | 60.42 | 78.57 | 92.86 |
2016-11-22 | 61.26 | 60.81 | 71.43 | 100.00 |
2016-11-23 | 61.10 | 60.25 | 64.29 | 92.86 |
2016-11-25 | 60.53 | 60.13 | 57.14 | 85.71 |
2016-11-28 | 61.02 | 60.21 | 50.00 | 78.57 |
2016-11-29 | 61.41 | 60.52 | 42.86 | 100.00 |
2016-11-30 | 61.18 | 60.22 | 35.71 | 92.86 |
2016-12-01 | 60.15 | 58.94 | 28.57 | 85.71 |
2016-12-02 | 59.47 | 58.80 | 21.43 | 78.57 |
2016-12-05 | 60.58 | 59.56 | 14.29 | 71.43 |
2016-12-06 | 60.46 | 59.80 | 7.14 | 64.29 |
2016-12-07 | 61.38 | 59.80 | 0.00 | 57.14 |
2016-12-08 | 61.58 | 60.84 | 71.43 | 100.00 |
2016-12-09 | 61.99 | 61.12 | 64.29 | 100.00 |
2016-12-12 | 62.30 | 61.72 | 57.14 | 100.00 |
2016-12-13 | 63.42 | 62.24 | 50.00 | 100.00 |
2016-12-14 | 63.45 | 62.53 | 42.86 | 100.00 |
2016-12-15 | 63.15 | 62.30 | 35.71 | 92.86 |
2016-12-16 | 62.95 | 62.12 | 28.57 | 85.71 |
2016-12-19 | 63.77 | 62.42 | 21.43 | 100.00 |
2016-12-20 | 63.80 | 63.03 | 14.29 | 100.00 |
2016-12-21 | 63.70 | 63.12 | 7.14 | 92.86 |
2016-12-22 | 64.10 | 63.40 | 0.00 | 100.00 |
2016-12-23 | 63.54 | 62.80 | 0.00 | 92.86 |
2016-12-27 | 64.07 | 63.21 | 7.14 | 85.71 |
2016-12-28 | 63.40 | 62.83 | 0.00 | 78.57 |
2016-12-29 | 63.20 | 62.73 | 0.00 | 71.43 |
2016-12-30 | 62.99 | 62.03 | 0.00 | 64.29 |
2017-01-03 | 62.84 | 62.12 | 0.00 | 57.14 |
2017-01-04 | 62.75 | 62.12 | 85.71 | 50.00 |
2017-01-05 | 62.66 | 62.03 | 100.00 | 42.86 |
2017-01-06 | 63.15 | 62.04 | 92.86 | 35.71 |
2017-01-09 | 63.08 | 62.54 | 85.71 | 28.57 |
2017-01-10 | 63.07 | 62.28 | 78.57 | 21.43 |
2017-01-11 | 63.23 | 62.43 | 71.43 | 14.29 |
2017-01-12 | 63.40 | 61.95 | 100.00 | 7.14 |
2017-01-13 | 62.87 | 62.35 | 92.86 | 0.00 |
2017-01-17 | 62.70 | 62.03 | 85.71 | 7.14 |
2017-01-18 | 62.70 | 62.12 | 78.57 | 0.00 |
2017-01-19 | 62.98 | 62.19 | 71.43 | 71.43 |
2017-01-20 | 62.82 | 62.37 | 64.29 | 64.29 |
2017-01-23 | 63.12 | 62.57 | 57.14 | 57.14 |
2017-01-24 | 63.74 | 62.94 | 50.00 | 100.00 |
2017-01-25 | 64.10 | 63.45 | 42.86 | 100.00 |
2017-01-26 | 64.54 | 63.55 | 35.71 | 100.00 |
2017-01-27 | 65.91 | 64.89 | 28.57 | 100.00 |
2017-01-30 | 65.79 | 64.80 | 21.43 | 92.86 |
2017-01-31 | 65.15 | 64.26 | 14.29 | 85.71 |
2017-02-01 | 64.62 | 63.47 | 7.14 | 78.57 |
2017-02-02 | 63.41 | 62.75 | 0.00 | 71.43 |
2017-02-03 | 63.70 | 63.07 | 7.14 | 64.29 |
2017-02-06 | 63.65 | 63.14 | 0.00 | 57.14 |
2017-02-07 | 63.78 | 63.23 | 0.00 | 50.00 |
2017-02-08 | 63.81 | 63.22 | 0.00 | 42.86 |