Module backtrader.indicators.oscillator
Expand source code
#!/usr/bin/env python
# -*- coding: utf-8; py-indent-offset:4 -*-
###############################################################################
#
# Copyright (C) 2015-2023 Daniel Rodriguez
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###############################################################################
from __future__ import (absolute_import, division, print_function,
unicode_literals)
import sys
from . import Indicator, MovingAverage
class OscillatorMixIn(Indicator):
'''
MixIn class to create a subclass with another indicator. The main line of
that indicator will be substracted from the other base class main line
creating an oscillator
The usage is:
- Class XXXOscillator(XXX, OscillatorMixIn)
Formula:
- XXX calculates lines[0]
- osc = self.data - XXX.lines[0]
'''
plotlines = dict(_0=dict(_name='osc'))
def _plotinit(self):
try:
lname = self.lines._getlinealias(0)
self.plotlines._0._name = lname + '_osc'
except AttributeError:
pass
def __init__(self):
self.lines[0] = self.data - self.lines[0]
super(OscillatorMixIn, self).__init__()
class Oscillator(Indicator):
'''
Oscillation of a given data around another data
Datas:
This indicator can accept 1 or 2 datas for the calculation.
- If 1 data is provided, it must be a complex "Lines" object (indicator)
which also has "datas". Example: A moving average
The calculated oscillation will be that of the Moving Average (in the
example) around the data that was used for the average calculation
- If 2 datas are provided the calculated oscillation will be that of the
2nd data around the 1st data
Formula:
- 1 data -> osc = data.data - data
- 2 datas -> osc = data0 - data1
'''
lines = ('osc',)
# Have a default value which can be later modified if needed
plotlines = dict(_0=dict(_name='osc'))
def _plotinit(self):
try:
lname = self.dataosc._getlinealias(0)
self.plotlines._0._name = lname + '_osc'
except AttributeError:
pass
def __init__(self):
super(Oscillator, self).__init__()
if len(self.datas) > 1:
datasrc = self.data
self.dataosc = self.data1
else:
datasrc = self.data.data
self.dataosc = self.data
self.lines[0] = datasrc - self.dataosc
# Automatic creation of Oscillating Lines
for movav in MovingAverage._movavs[1:]:
_newclsdoc = '''
Oscillation of a %s around its data
'''
# Skip aliases - they will be created automatically
if getattr(movav, 'aliased', ''):
continue
movname = movav.__name__
linename = movav.lines._getlinealias(0)
newclsname = movname + 'Oscillator'
newaliases = [movname + 'Osc']
for alias in getattr(movav, 'alias', []):
for suffix in ['Oscillator', 'Osc']:
newaliases.append(alias + suffix)
newclsdoc = _newclsdoc % movname
newclsdct = {'__doc__': newclsdoc,
'__module__': OscillatorMixIn.__module__,
'_notregister': True,
'alias': newaliases}
newcls = type(str(newclsname), (movav, OscillatorMixIn), newclsdct)
module = sys.modules[OscillatorMixIn.__module__]
setattr(module, newclsname, newcls)
Classes
class AdaptiveMovingAverageOsc-
Oscillation of a AdaptiveMovingAverage around its data
Ancestors
- AdaptiveMovingAverageOscillator
- AdaptiveMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class AdaptiveMovingAverageOscillator-
Oscillation of a AdaptiveMovingAverage around its data
Ancestors
- AdaptiveMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
- AdaptiveMovingAverageOsc
- KAMAOsc
- KAMAOscillator
- MovingAverageAdaptiveOsc
- MovingAverageAdaptiveOscillator
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DEMAOsc-
Oscillation of a DoubleExponentialMovingAverage around its data
Ancestors
- DoubleExponentialMovingAverageOscillator
- DoubleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DEMAOscillator-
Oscillation of a DoubleExponentialMovingAverage around its data
Ancestors
- DoubleExponentialMovingAverageOscillator
- DoubleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DMAOsc-
Oscillation of a DicksonMovingAverage around its data
Ancestors
- DicksonMovingAverageOscillator
- DicksonMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DMAOscillator-
Oscillation of a DicksonMovingAverage around its data
Ancestors
- DicksonMovingAverageOscillator
- DicksonMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DicksonMAOsc-
Oscillation of a DicksonMovingAverage around its data
Ancestors
- DicksonMovingAverageOscillator
- DicksonMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DicksonMAOscillator-
Oscillation of a DicksonMovingAverage around its data
Ancestors
- DicksonMovingAverageOscillator
- DicksonMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DicksonMovingAverageOsc-
Oscillation of a DicksonMovingAverage around its data
Ancestors
- DicksonMovingAverageOscillator
- DicksonMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class newcls-
Oscillation of a DicksonMovingAverage around its data
Ancestors
- DicksonMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar lines-
Defines an "array" of lines which also has most of the interface of a LineBuffer class (forward, rewind, advance…).
This interface operations are passed to the lines held by self
The class can autosubclass itself (_derive) to hold new lines keeping them in the defined order.
var packagesvar paramsvar plotinfovar plotlines
class DicksonMovingAverageOscillator-
Oscillation of a DicksonMovingAverage around its data
Ancestors
- DicksonMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DoubleExponentialMovingAverageOsc-
Oscillation of a DoubleExponentialMovingAverage around its data
Ancestors
- DoubleExponentialMovingAverageOscillator
- DoubleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class DoubleExponentialMovingAverageOscillator-
Oscillation of a DoubleExponentialMovingAverage around its data
Ancestors
- DoubleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
- DEMAOsc
- DEMAOscillator
- DoubleExponentialMovingAverageOsc
- MovingAverageDoubleExponentialOsc
- MovingAverageDoubleExponentialOscillator
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ECOsc-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ECOscillator-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class EMAOsc-
Oscillation of a ExponentialMovingAverage around its data
Ancestors
- ExponentialMovingAverageOscillator
- ExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class EMAOscillator-
Oscillation of a ExponentialMovingAverage around its data
Ancestors
- ExponentialMovingAverageOscillator
- ExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ErrorCorrectingOsc-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ErrorCorrectingOscillator-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ExponentialMovingAverageOsc-
Oscillation of a ExponentialMovingAverage around its data
Ancestors
- ExponentialMovingAverageOscillator
- ExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ExponentialMovingAverageOscillator-
Oscillation of a ExponentialMovingAverage around its data
Ancestors
- ExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
- EMAOsc
- EMAOscillator
- ExponentialMovingAverageOsc
- MovingAverageExponentialOsc
- MovingAverageExponentialOscillator
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class HMAOsc-
Oscillation of a HullMovingAverage around its data
Ancestors
- HullMovingAverageOscillator
- HullMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class HMAOscillator-
Oscillation of a HullMovingAverage around its data
Ancestors
- HullMovingAverageOscillator
- HullMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class HullMAOsc-
Oscillation of a HullMovingAverage around its data
Ancestors
- HullMovingAverageOscillator
- HullMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class HullMAOscillator-
Oscillation of a HullMovingAverage around its data
Ancestors
- HullMovingAverageOscillator
- HullMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class HullMovingAverageOsc-
Oscillation of a HullMovingAverage around its data
Ancestors
- HullMovingAverageOscillator
- HullMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class HullMovingAverageOscillator-
Oscillation of a HullMovingAverage around its data
Ancestors
- HullMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class KAMAOsc-
Oscillation of a AdaptiveMovingAverage around its data
Ancestors
- AdaptiveMovingAverageOscillator
- AdaptiveMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class KAMAOscillator-
Oscillation of a AdaptiveMovingAverage around its data
Ancestors
- AdaptiveMovingAverageOscillator
- AdaptiveMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ModifiedMovingAverageOsc-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ModifiedMovingAverageOscillator-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageAdaptiveOsc-
Oscillation of a AdaptiveMovingAverage around its data
Ancestors
- AdaptiveMovingAverageOscillator
- AdaptiveMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageAdaptiveOscillator-
Oscillation of a AdaptiveMovingAverage around its data
Ancestors
- AdaptiveMovingAverageOscillator
- AdaptiveMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageDoubleExponentialOsc-
Oscillation of a DoubleExponentialMovingAverage around its data
Ancestors
- DoubleExponentialMovingAverageOscillator
- DoubleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageDoubleExponentialOscillator-
Oscillation of a DoubleExponentialMovingAverage around its data
Ancestors
- DoubleExponentialMovingAverageOscillator
- DoubleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageExponentialOsc-
Oscillation of a ExponentialMovingAverage around its data
Ancestors
- ExponentialMovingAverageOscillator
- ExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageExponentialOscillator-
Oscillation of a ExponentialMovingAverage around its data
Ancestors
- ExponentialMovingAverageOscillator
- ExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageSimpleOsc-
Oscillation of a MovingAverageSimple around its data
Ancestors
- MovingAverageSimpleOscillator
- MovingAverageSimple
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageSimpleOscillator-
Oscillation of a MovingAverageSimple around its data
Ancestors
- MovingAverageSimple
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageSmoothedOsc-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageSmoothedOscillator-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageTripleExponentialOsc-
Oscillation of a TripleExponentialMovingAverage around its data
Ancestors
- TripleExponentialMovingAverageOscillator
- TripleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageTripleExponentialOscillator-
Oscillation of a TripleExponentialMovingAverage around its data
Ancestors
- TripleExponentialMovingAverageOscillator
- TripleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageWeightedOsc-
Oscillation of a WeightedMovingAverage around its data
Ancestors
- WeightedMovingAverageOscillator
- WeightedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageWeightedOscillator-
Oscillation of a WeightedMovingAverage around its data
Ancestors
- WeightedMovingAverageOscillator
- WeightedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageWilderOsc-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class MovingAverageWilderOscillator-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class Oscillator-
Oscillation of a given data around another data
Datas
This indicator can accept 1 or 2 datas for the calculation.
- If 1 data is provided, it must be a complex "Lines" object (indicator) which also has "datas". Example: A moving average
The calculated oscillation will be that of the Moving Average (in the example) around the data that was used for the average calculation
- If 2 datas are provided the calculated oscillation will be that of the 2nd data around the 1st data
Formula
- 1 data -> osc = data.data - data
- 2 datas -> osc = data0 - data1
Expand source code
class Oscillator(Indicator): ''' Oscillation of a given data around another data Datas: This indicator can accept 1 or 2 datas for the calculation. - If 1 data is provided, it must be a complex "Lines" object (indicator) which also has "datas". Example: A moving average The calculated oscillation will be that of the Moving Average (in the example) around the data that was used for the average calculation - If 2 datas are provided the calculated oscillation will be that of the 2nd data around the 1st data Formula: - 1 data -> osc = data.data - data - 2 datas -> osc = data0 - data1 ''' lines = ('osc',) # Have a default value which can be later modified if needed plotlines = dict(_0=dict(_name='osc')) def _plotinit(self): try: lname = self.dataosc._getlinealias(0) self.plotlines._0._name = lname + '_osc' except AttributeError: pass def __init__(self): super(Oscillator, self).__init__() if len(self.datas) > 1: datasrc = self.data self.dataosc = self.data1 else: datasrc = self.data.data self.dataosc = self.data self.lines[0] = datasrc - self.dataoscAncestors
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class OscillatorMixIn-
MixIn class to create a subclass with another indicator. The main line of that indicator will be substracted from the other base class main line creating an oscillator
The usage is:
- Class XXXOscillator(XXX, OscillatorMixIn)
Formula
- XXX calculates lines[0]
- osc = self.data - XXX.lines[0]
Expand source code
class OscillatorMixIn(Indicator): ''' MixIn class to create a subclass with another indicator. The main line of that indicator will be substracted from the other base class main line creating an oscillator The usage is: - Class XXXOscillator(XXX, OscillatorMixIn) Formula: - XXX calculates lines[0] - osc = self.data - XXX.lines[0] ''' plotlines = dict(_0=dict(_name='osc')) def _plotinit(self): try: lname = self.lines._getlinealias(0) self.plotlines._0._name = lname + '_osc' except AttributeError: pass def __init__(self): self.lines[0] = self.data - self.lines[0] super(OscillatorMixIn, self).__init__()Ancestors
Subclasses
- AdaptiveMovingAverageOscillator
- DicksonMovingAverageOscillator
- DoubleExponentialMovingAverageOscillator
- ExponentialMovingAverageOscillator
- HullMovingAverageOscillator
- MovingAverageSimpleOscillator
- SmoothedMovingAverageOscillator
- TripleExponentialMovingAverageOscillator
- WeightedMovingAverageOscillator
- ZeroLagExponentialMovingAverageOscillator
- ZeroLagIndicatorOscillator
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SMAOsc-
Oscillation of a MovingAverageSimple around its data
Ancestors
- MovingAverageSimpleOscillator
- MovingAverageSimple
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SMAOscillator-
Oscillation of a MovingAverageSimple around its data
Ancestors
- MovingAverageSimpleOscillator
- MovingAverageSimple
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SMMAOsc-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SMMAOscillator-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SimpleMovingAverageOsc-
Oscillation of a MovingAverageSimple around its data
Ancestors
- MovingAverageSimpleOscillator
- MovingAverageSimple
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SimpleMovingAverageOscillator-
Oscillation of a MovingAverageSimple around its data
Ancestors
- MovingAverageSimpleOscillator
- MovingAverageSimple
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SmoothedMovingAverageOsc-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class SmoothedMovingAverageOscillator-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
- ModifiedMovingAverageOsc
- ModifiedMovingAverageOscillator
- MovingAverageSmoothedOsc
- MovingAverageSmoothedOscillator
- MovingAverageWilderOsc
- MovingAverageWilderOscillator
- SMMAOsc
- SMMAOscillator
- SmoothedMovingAverageOsc
- WilderMAOsc
- WilderMAOscillator
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class TEMAOsc-
Oscillation of a TripleExponentialMovingAverage around its data
Ancestors
- TripleExponentialMovingAverageOscillator
- TripleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class TEMAOscillator-
Oscillation of a TripleExponentialMovingAverage around its data
Ancestors
- TripleExponentialMovingAverageOscillator
- TripleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class TripleExponentialMovingAverageOsc-
Oscillation of a TripleExponentialMovingAverage around its data
Ancestors
- TripleExponentialMovingAverageOscillator
- TripleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class TripleExponentialMovingAverageOscillator-
Oscillation of a TripleExponentialMovingAverage around its data
Ancestors
- TripleExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
- MovingAverageTripleExponentialOsc
- MovingAverageTripleExponentialOscillator
- TEMAOsc
- TEMAOscillator
- TripleExponentialMovingAverageOsc
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class WMAOsc-
Oscillation of a WeightedMovingAverage around its data
Ancestors
- WeightedMovingAverageOscillator
- WeightedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class WMAOscillator-
Oscillation of a WeightedMovingAverage around its data
Ancestors
- WeightedMovingAverageOscillator
- WeightedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class WeightedMovingAverageOsc-
Oscillation of a WeightedMovingAverage around its data
Ancestors
- WeightedMovingAverageOscillator
- WeightedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class WeightedMovingAverageOscillator-
Oscillation of a WeightedMovingAverage around its data
Ancestors
- WeightedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
- MovingAverageWeightedOsc
- MovingAverageWeightedOscillator
- WMAOsc
- WMAOscillator
- WeightedMovingAverageOsc
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class WilderMAOsc-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class WilderMAOscillator-
Oscillation of a SmoothedMovingAverage around its data
Ancestors
- SmoothedMovingAverageOscillator
- SmoothedMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZLEMAOsc-
Oscillation of a ZeroLagExponentialMovingAverage around its data
Ancestors
- ZeroLagExponentialMovingAverageOscillator
- ZeroLagExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZLEMAOscillator-
Oscillation of a ZeroLagExponentialMovingAverage around its data
Ancestors
- ZeroLagExponentialMovingAverageOscillator
- ZeroLagExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZLIndOsc-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZLIndOscillator-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZLIndicatorOsc-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZLIndicatorOscillator-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZeroLagEmaOsc-
Oscillation of a ZeroLagExponentialMovingAverage around its data
Ancestors
- ZeroLagExponentialMovingAverageOscillator
- ZeroLagExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZeroLagEmaOscillator-
Oscillation of a ZeroLagExponentialMovingAverage around its data
Ancestors
- ZeroLagExponentialMovingAverageOscillator
- ZeroLagExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZeroLagExponentialMovingAverageOsc-
Oscillation of a ZeroLagExponentialMovingAverage around its data
Ancestors
- ZeroLagExponentialMovingAverageOscillator
- ZeroLagExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZeroLagExponentialMovingAverageOscillator-
Oscillation of a ZeroLagExponentialMovingAverage around its data
Ancestors
- ZeroLagExponentialMovingAverage
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZeroLagIndicatorOsc-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicatorOscillator
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members
class ZeroLagIndicatorOscillator-
Oscillation of a ZeroLagIndicator around its data
Ancestors
- ZeroLagIndicator
- MovingAverageBase
- OscillatorMixIn
- Indicator
- IndicatorBase
- DataAccessor
- LineIterator
- LineSeries
- LineMultiple
- LineRoot
Subclasses
- ECOsc
- ECOscillator
- ErrorCorrectingOsc
- ErrorCorrectingOscillator
- ZLIndOsc
- ZLIndOscillator
- ZLIndicatorOsc
- ZLIndicatorOscillator
- ZeroLagIndicatorOsc
Class variables
var aliasvar aliasedvar frompackagesvar linealiasvar packagesvar paramsvar plotinfovar plotlines
Inherited members