Null Selectors

This is the identity Selector. It always returns the initial market data and the capital at risk fraction set to 1. In other words, it produces no selection (the output is same as the input). Its only purpose is to serve as a base class for other Selectors classes as well as to provide consistency across the family of Selectors.

It can be omitted in simple applications.


NullSelector class

class azapy.Selectors.NullSelector.NullSelector(pname='NullSelector')

Bases: object

Null Selector - produces no selection.

Its main purpose is to serve as a base class and to provide consistency across the selector family.


getSelection(mktdata, **params)

Produces the selection.



pnamestr, optional

Selector name. The default is ‘NullSelector’.

The object
getSelection(mktdata, **params)

Produces the selection.


Market data in the format produced by the azapy function readMKT.

**paramsdict, optional
Additional optional parameters:
verboseBoolean, optional

When it is set to True, the selection symbols are printed.

(capital, mkt)tuple
  • capital : float, always set to 1.

  • mkt : pandas.DataFrame, always the input mktdata


Example NullSelector

# Examples
import azapy as az
print(f"azapy version {az.version()}", flush=True)

# collect market data
mktdir = '../../MkTdata'
sdate = '2012-01-01'
edate = '2021-07-27'
symb = ['GLD', 'TLT', 'XLV', 'IHI', 'VGT']

mktdata = az.readMkT(symb, sdate=sdate, edate=edate, file_dir=mktdir)

# NullSelctor

selector = az.NullSelector()

capital, mkt = selector.getSelection(mktdata)

# in this case capital=1 and mkt=mktdata
print(f"capital: {capital}\n"
      f"selected symbols: {mkt.symbol.unique()}")