Browse Source

New indicator: IBN

master
Denis Tereshkin 7 years ago
parent
commit
c869b7bc80
  1. 1
      src/naiback/indicators/__init__.py
  2. 18
      src/naiback/indicators/intradaybarnumber.py
  3. 3
      src/naiback/strategy/strategy.py

1
src/naiback/indicators/__init__.py

@ -1,3 +1,4 @@
from .ema import EMA from .ema import EMA
from .rsi import RSI from .rsi import RSI
from .intradaybarnumber import IntradayBarNumber

18
src/naiback/indicators/intradaybarnumber.py

@ -0,0 +1,18 @@
def IntradayBarNumber(bars):
result = []
if len(bars.timestamp) == 0:
return result
ibn = 0
current_date = None
for ts in bars.timestamp:
if current_date != ts.date():
ibn = 0
current_date = ts.date()
else:
ibn += 1
result.append(ibn)
return result

3
src/naiback/strategy/strategy.py

@ -4,6 +4,7 @@ from naiback.broker.broker import Broker
from naiback.data.bars import Bars from naiback.data.bars import Bars
from naiback.analyzers.statsanalyzer import StatsAnalyzer from naiback.analyzers.statsanalyzer import StatsAnalyzer
from naiback.analyzers.tradeslistanalyzer import TradesListAnalyzer from naiback.analyzers.tradeslistanalyzer import TradesListAnalyzer
from naiback.exceptions import NaibackException
class Strategy: class Strategy:
""" """
@ -38,6 +39,8 @@ class Strategy:
By default, just calls execute. By default, just calls execute.
""" """
self._prepare_bars(from_time, to_time) self._prepare_bars(from_time, to_time)
if len(self.all_bars) > 0:
self.bars = self.all_bars[0]
self.execute() self.execute()
def set_current_ticker(self, ticker): def set_current_ticker(self, ticker):

Loading…
Cancel
Save