DEXStrategy#
tradingstrategy.frameworks.backtrader.DEXStrategy Python class in Trading Strategy framework.
- class DEXStrategy[source]#
Bases:
Strategy
A strategy base class with support for Trading Strategy DEX specific use cases.
Methods
__init__
(*args, **kwargs)add_timer
(when[, offset, repeat, weekdays, ...])Note: can be called during
__init__
orstart
addindicator
(indicator)addminperiod
(minperiod)The passed minperiod is fed to the lines
advance
([size])backwards
([size, force])bind2line
([owner, own])bind2lines
([owner, own])bindlines
([owner, own])buy
(*args, **kwargs)Stamps each trade with a timestamp.
buy_bracket
([data, size, price, plimit, ...])Create a bracket order group (low side - buy order - high side).
cancel
(order)Cancels the order in the broker
clear
()close
(*args, **kwargs)Counters a long/short position closing it
extend
([value, size])forward
([value, size])Get the timestamp of the current candle
getdatabyname
(name)Returns a given data by name using the environment (cerebro)
getdatanames
()Returns a list of the existing data names
getindicators
()getindicators_lines
()getobservers
()getposition
([data, broker])Returns the current position for a given data in a given broker.
getpositionbyname
([name, broker])Returns the current position for a given name in a given broker.
getpositions
([broker])Returns the current by data positions directly from the broker
getpositionsbyname
([broker])Returns the current by name positions directly from the broker
getsizer
()Returns the sizer which is in used if automatic statke calculation is used
getsizing
([data, isbuy])Return the stake calculated by the sizer instance for the current situation
getwriterheaders
()getwriterinfo
()getwritervalues
()home
()incminperiod
(minperiod)The passed minperiod is fed to the lines
minbuffer
(size)Receive notification of how large the buffer must at least be
next
()This method will be called for all remaining data points when the minimum period for all datas/indicators have been meet.
next_open
()nextstart
()This method will be called once, exactly when the minimum period for all datas/indicators have been meet.
nextstart_open
()notify_cashvalue
(cash, value)Receives the current fund value, value status of the strategy's broker
notify_data
(data, status, *args, **kwargs)Receives a notification from data
notify_fund
(cash, value, fundvalue, shares)Receives the current cash, value, fundvalue and fund shares
notify_order
(order)Receives an order whenever there has been a change in one
notify_store
(msg, *args, **kwargs)Receives a notification from a store provider
notify_timer
(timer, when, *args, **kwargs)Receives a timer notification where
timer
is the timer which was returned byadd_timer
, andwhen
is the calling time.notify_trade
(trade)Receives a trade whenever there has been a change in one
once
(start, end)Called to calculate values at "once" when the minperiod is over
oncestart
(start, end)It will be called when the minperiod phase is over for the 1st post-minperiod value
order_target_percent
([data, target])Place an order to rebalance a position to have final value of
target
percentage of current portfoliovalue
order_target_size
([data, target])Place an order to rebalance a position to have final size of
target
order_target_value
([data, target, price])Place an order to rebalance a position to have final value of
target
plotlabel
()prenext
()This method will be called before the minimum period of all datas/indicators have been meet for the strategy to start executing
prenext_open
()preonce
(start, end)It will be called during the "minperiod" phase of a "once" iteration
qbuffer
([savemem, replaying])Enable the memory saving schemes.
reset
()rewind
([size])sell
([data, size, price, plimit, exectype, ...])To create a selll (short) order and send it to the broker
sell_bracket
([data, size, price, plimit, ...])Create a bracket order group (low side - buy order - high side).
set_tradehistory
([onoff])setminperiod
(minperiod)Direct minperiod manipulation.
setsizer
(sizer)Replace the default (fixed stake) sizer
start
()Called right before the backtesting is about to be started.
stop
()Called right before the backtesting is about to be stopped
updateminperiod
(minperiod)Update the minperiod if needed.
Attributes
IndType
ObsType
PriceClose
PriceDateTime
PriceHigh
PriceLow
PriceOpen
PriceOpenInteres
PriceVolume
StratType
alias
aliased
array
csv
frompackages
packages
position
Returns the current position for a given data in a given broker.
positionbyname
Returns the current position for a given name in a given broker.
positions
Returns the current by data positions directly from the broker
positionsbyname
Returns the current by name positions directly from the broker
sizer
Returns the sizer which is in used if automatic statke calculation is used
Currently open position
The next() tick counter
- buy(*args, **kwargs)[source]#
Stamps each trade with a timestamp.
Normal Backtrader does not have this functionality.
- Return type:
BuyOrder
- close(*args, **kwargs)[source]#
Counters a long/short position closing it
See the documentation for
buy
for an explanation of the parametersNote:
size
: automatically calculated from the existing position if not provided (default:None
) by the caller
Returns: the submitted order
- lines#
alias of
Lines_LineSeries_LineIterator_DataAccessor_StrategyBase_Strategy_DEXStrategy