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 @@ @@ -1,3 +1,4 @@
from .ema import EMA
from .rsi import RSI
from .intradaybarnumber import IntradayBarNumber

18
src/naiback/indicators/intradaybarnumber.py

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

Loading…
Cancel
Save