backtrader學習筆記(三).MACD

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @license : (C) Copyright 2017-2020, ZGMicro.com.
# @contact : [email protected]
# @Time    : 2020/5/23 22:38
# @File    : backtrader3.py
# @Software: PyCharm
# @desc    :
from __future__ import (absolute_import, division, print_function,
                        unicode_literals)

import datetime
import backtrader as bt  # 引入backtrader框架


import tushare as ts
import pandas as pd

from datetime import datetime

import os, sys

# 平滑異同移動平均線MACD
# 買入與賣出算法:
#   macd、signal、histo都大於0,買入
#   macd、signal、histo都小於等於0,賣出


class StrategyClass(bt.Strategy):
    '''#平滑異同移動平均線MACD
        DIF(藍線): 計算12天平均和26天平均的差,公式:EMA(C,12)-EMA(c,26)
       Signal(DEM或DEA或MACD) (紅線): 計算macd9天均值,公式:Signal(DEM或DEA或MACD):EMA(MACD,9)
        Histogram (柱): 計算macd與signal的差值,公式:Histogram:MACD-Signal

        period_me1=12
        period_me2=26
        period_signal=9

        macd = ema(data, me1_period) - ema(data, me2_period)
        signal = ema(macd, signal_period)
        histo = macd - signal

    '''

    def __init__(self):
        # sma源碼位於indicators\macd.py
        # 指標必須要定義在策略類中的初始化函數中
        macd = bt.ind.MACD()
        self.macd = macd.macd
        self.signal = macd.signal
        self.histo = bt.ind.MACDHisto()

        self.dataclose = self.datas[0].close

        self.order = None
        self.buyprice = None
        self.buycomm = None

    def log(self, txt, dt=None):
        ''' Logging function for this strategy'''
        dt = dt or self.datas[0].datetime.date(0)
        print('%s, %s' % (dt.isoformat(), txt))

    def notify_cashvalue(self, cash, value):
        self.log('Cash %s Value %s' % (cash, value))

    def notify_order(self, order):
        print(type(order), 'Is Buy ', order.isbuy())
        if order.status in [order.Submitted, order.Accepted]:
            # Buy/Sell order submitted/accepted to/by broker - Nothing to do
            return

        # Check if an order has been completed
        # Attention: broker could reject order if not enough cash
        if order.status in [order.Completed]:
            if order.isbuy():
                self.log(
                    'BUY EXECUTED, Price: %.2f, Cost: %.2f, Comm %.2f' %
                    (order.executed.price,
                     order.executed.value,
                     order.executed.comm))

                self.buyprice = order.executed.price
                self.buycomm = order.executed.comm
            else:  # Sell
                self.log('SELL EXECUTED, Price: %.2f, Cost: %.2f, Comm %.2f' %
                         (order.executed.price,
                          order.executed.value,
                          order.executed.comm))

            self.bar_executed = len(self)


        elif order.status in [order.Canceled, order.Margin, order.Rejected]:
            self.log('Order Canceled/Margin/Rejected')

        self.order = None

    def notify_trade(self, trade):
        if not trade.isclosed:
            return

        self.log('OPERATION PROFIT, GROSS %.2f, NET %.2f' %
                 (trade.pnl, trade.pnlcomm))

    def next(self):

        if self.order: # 檢查是否有指令等待執行,
            return

        # Simply log the closing price of the series from the reference
        self.log('Close, %.2f' % self.dataclose[0])
        # Check if we are in the market
        if not self.getposition(self.datas[0]):

            # self.data.close是表示收盤價
            # 收盤價大於histo,買入
            if self.macd > 0 and self.signal > 0 and self.histo > 0:
                self.log('BUY CREATE,{}'.format(self.dataclose[0]))
                self.order = self.buy(self.datas[0])

        else:

            # 收盤價小於等於histo,賣出
            if self.macd <= 0 or self.signal <= 0 or self.histo <= 0:
                self.log('BUY CREATE,{}'.format(self.dataclose[0]))
                self.log('Pos size %s' % self.position.size)
                self.order = self.sell(self.datas[0])


def get_data(code, start='2018-01-01', end='2020-05-22'):

    df = ts.get_k_data(code, autype='qfq', start=start, end=end)
    df.index = pd.to_datetime(df.date)
    df['openinterest'] = 0
    df = df[['open', 'high', 'low', 'close', 'volume', 'openinterest']]
    return df

def bt3():
    start = datetime(2017, 1, 1)
    end = datetime(2020, 5, 1)
    k_data = get_data('300676', start.strftime("%Y%m%d"), end.strftime("%Y%m%d"))

    # Create a Data Feed
    data = bt.feeds.PandasData(dataname=k_data,
                                 fromdate=start,
                                 todate=end)

    return data

cerebro = bt.Cerebro()

cerebro.adddata(bt3())

cerebro.addstrategy(StrategyClass)
# 設置金額,默認是200000
cerebro.broker.set_cash(200000)
cerebro.run(maxcpu=1)
cerebro.plot()
print('Final Portfolio Value: %.2f' % cerebro.broker.getvalue())

測試結果:

2018-01-02, Cash 200000.0 Value 200000.0
2018-01-03, Cash 200000.0 Value 200000.0
2018-01-04, Cash 200000.0 Value 200000.0
2018-01-05, Cash 200000.0 Value 200000.0
2018-01-08, Cash 200000.0 Value 200000.0
2018-01-09, Cash 200000.0 Value 200000.0
2018-01-10, Cash 200000.0 Value 200000.0
2018-01-11, Cash 200000.0 Value 200000.0
2018-01-12, Cash 200000.0 Value 200000.0
2018-01-15, Cash 200000.0 Value 200000.0
2018-01-16, Cash 200000.0 Value 200000.0
2018-01-17, Cash 200000.0 Value 200000.0
2018-01-18, Cash 200000.0 Value 200000.0
2018-01-19, Cash 200000.0 Value 200000.0
2018-01-22, Cash 200000.0 Value 200000.0
2018-01-23, Cash 200000.0 Value 200000.0
2018-01-24, Cash 200000.0 Value 200000.0
2018-01-25, Cash 200000.0 Value 200000.0
2018-01-26, Cash 200000.0 Value 200000.0
2018-01-29, Cash 200000.0 Value 200000.0
2018-01-30, Cash 200000.0 Value 200000.0
2018-01-31, Cash 200000.0 Value 200000.0
2018-02-01, Cash 200000.0 Value 200000.0
2018-02-02, Cash 200000.0 Value 200000.0
2018-02-05, Cash 200000.0 Value 200000.0
2018-02-06, Cash 200000.0 Value 200000.0
2018-02-07, Cash 200000.0 Value 200000.0
2018-02-08, Cash 200000.0 Value 200000.0
2018-02-09, Cash 200000.0 Value 200000.0
2018-02-12, Cash 200000.0 Value 200000.0
2018-02-13, Cash 200000.0 Value 200000.0
2018-02-14, Cash 200000.0 Value 200000.0
2018-02-22, Cash 200000.0 Value 200000.0
2018-02-23, Cash 200000.0 Value 200000.0
2018-02-23, Close, 150.90
2018-02-26, Cash 200000.0 Value 200000.0
2018-02-26, Close, 165.99
2018-02-27, Cash 200000.0 Value 200000.0
2018-02-27, Close, 167.46
2018-02-28, Cash 200000.0 Value 200000.0
2018-02-28, Close, 168.06
2018-03-01, Cash 200000.0 Value 200000.0
2018-03-01, Close, 170.08
2018-03-02, Cash 200000.0 Value 200000.0
2018-03-02, Close, 164.89
2018-03-05, Cash 200000.0 Value 200000.0
2018-03-05, Close, 174.22
2018-03-06, Cash 200000.0 Value 200000.0
2018-03-06, Close, 174.24
2018-03-07, Cash 200000.0 Value 200000.0
2018-03-07, Close, 170.08
2018-03-08, Cash 200000.0 Value 200000.0
2018-03-08, Close, 171.32
2018-03-09, Cash 200000.0 Value 200000.0
2018-03-09, Close, 174.75
2018-03-12, Cash 200000.0 Value 200000.0
2018-03-12, Close, 175.72
2018-03-13, Cash 200000.0 Value 200000.0
2018-03-13, Close, 177.04
2018-03-14, Cash 200000.0 Value 200000.0
2018-03-14, Close, 170.08
2018-03-15, Cash 200000.0 Value 200000.0
2018-03-15, Close, 166.19
2018-03-16, Cash 200000.0 Value 200000.0
2018-03-16, Close, 165.32
2018-03-19, Cash 200000.0 Value 200000.0
2018-03-19, Close, 164.55
2018-03-20, Cash 200000.0 Value 200000.0
2018-03-20, Close, 174.47
2018-03-21, Cash 200000.0 Value 200000.0
2018-03-21, Close, 166.00
2018-03-22, Cash 200000.0 Value 200000.0
2018-03-22, Close, 165.10
2018-03-23, Cash 200000.0 Value 200000.0
2018-03-23, Close, 152.77
2018-03-26, Cash 200000.0 Value 200000.0
2018-03-26, Close, 157.68
2018-03-27, Cash 200000.0 Value 200000.0
2018-03-27, Close, 162.42
2018-03-28, Cash 200000.0 Value 200000.0
2018-03-28, Close, 165.39
2018-03-29, Cash 200000.0 Value 200000.0
2018-03-29, Close, 163.36
2018-03-30, Cash 200000.0 Value 200000.0
2018-03-30, Close, 166.97
2018-04-02, Cash 200000.0 Value 200000.0
2018-04-02, Close, 170.88
2018-04-03, Cash 200000.0 Value 200000.0
2018-04-03, Close, 171.06
2018-04-04, Cash 200000.0 Value 200000.0
2018-04-04, Close, 168.39
2018-04-09, Cash 200000.0 Value 200000.0
2018-04-09, Close, 163.91
2018-04-10, Cash 200000.0 Value 200000.0
2018-04-10, Close, 165.30
2018-04-11, Cash 200000.0 Value 200000.0
2018-04-11, Close, 161.52
2018-04-12, Cash 200000.0 Value 200000.0
2018-04-12, Close, 160.33
2018-04-13, Cash 200000.0 Value 200000.0
2018-04-13, Close, 160.55
2018-04-16, Cash 200000.0 Value 200000.0
2018-04-16, Close, 158.30
2018-04-17, Cash 200000.0 Value 200000.0
2018-04-17, Close, 155.78
2018-04-18, Cash 200000.0 Value 200000.0
2018-04-18, Close, 156.26
2018-04-19, Cash 200000.0 Value 200000.0
2018-04-19, Close, 162.18
2018-04-20, Cash 200000.0 Value 200000.0
2018-04-20, Close, 155.23
2018-04-23, Cash 200000.0 Value 200000.0
2018-04-23, Close, 153.07
2018-04-24, Cash 200000.0 Value 200000.0
2018-04-24, Close, 156.31
2018-04-25, Cash 200000.0 Value 200000.0
2018-04-25, Close, 158.06
2018-04-26, Cash 200000.0 Value 200000.0
2018-04-26, Close, 150.28
2018-04-27, Cash 200000.0 Value 200000.0
2018-04-27, Close, 149.19
2018-05-02, Cash 200000.0 Value 200000.0
2018-05-02, Close, 149.17
2018-05-03, Cash 200000.0 Value 200000.0
2018-05-03, Close, 146.22
2018-05-04, Cash 200000.0 Value 200000.0
2018-05-04, Close, 146.52
2018-05-07, Cash 200000.0 Value 200000.0
2018-05-07, Close, 149.09
2018-05-08, Cash 200000.0 Value 200000.0
2018-05-08, Close, 150.07
2018-05-09, Cash 200000.0 Value 200000.0
2018-05-09, Close, 150.19
2018-05-10, Cash 200000.0 Value 200000.0
2018-05-10, Close, 151.11
2018-05-11, Cash 200000.0 Value 200000.0
2018-05-11, Close, 147.98
2018-05-14, Cash 200000.0 Value 200000.0
2018-05-14, Close, 143.79
2018-05-15, Cash 200000.0 Value 200000.0
2018-05-15, Close, 145.22
2018-05-16, Cash 200000.0 Value 200000.0
2018-05-16, Close, 154.25
2018-05-17, Cash 200000.0 Value 200000.0
2018-05-17, Close, 150.59
2018-05-18, Cash 200000.0 Value 200000.0
2018-05-18, Close, 149.88
2018-05-21, Cash 200000.0 Value 200000.0
2018-05-21, Close, 151.24
2018-05-22, Cash 200000.0 Value 200000.0
2018-05-22, Close, 154.16
2018-05-23, Cash 200000.0 Value 200000.0
2018-05-23, Close, 150.54
2018-05-24, Cash 200000.0 Value 200000.0
2018-05-24, Close, 151.44
2018-05-25, Cash 200000.0 Value 200000.0
2018-05-25, Close, 147.92
2018-05-28, Cash 200000.0 Value 200000.0
2018-05-28, Close, 147.10
2018-05-29, Cash 200000.0 Value 200000.0
2018-05-29, Close, 145.18
2018-05-30, Cash 200000.0 Value 200000.0
2018-05-30, Close, 136.39
2018-05-31, Cash 200000.0 Value 200000.0
2018-05-31, Close, 138.27
2018-06-01, Cash 200000.0 Value 200000.0
2018-06-01, Close, 134.41
2018-06-04, Cash 200000.0 Value 200000.0
2018-06-04, Close, 135.02
2018-06-05, Cash 200000.0 Value 200000.0
2018-06-05, Close, 138.13
2018-06-06, Cash 200000.0 Value 200000.0
2018-06-06, Close, 136.82
2018-06-07, Cash 200000.0 Value 200000.0
2018-06-07, Close, 135.80
2018-06-08, Cash 200000.0 Value 200000.0
2018-06-08, Close, 131.45
2018-06-11, Cash 200000.0 Value 200000.0
2018-06-11, Close, 125.10
2018-06-12, Cash 200000.0 Value 200000.0
2018-06-12, Close, 125.87
2018-06-13, Cash 200000.0 Value 200000.0
2018-06-13, Close, 120.62
2018-06-14, Cash 200000.0 Value 200000.0
2018-06-14, Close, 120.70
2018-06-15, Cash 200000.0 Value 200000.0
2018-06-15, Close, 114.99
2018-06-19, Cash 200000.0 Value 200000.0
2018-06-19, Close, 104.10
2018-06-20, Cash 200000.0 Value 200000.0
2018-06-20, Close, 107.62
2018-06-21, Cash 200000.0 Value 200000.0
2018-06-21, Close, 104.28
2018-06-22, Cash 200000.0 Value 200000.0
2018-06-22, Close, 109.60
2018-06-25, Cash 200000.0 Value 200000.0
2018-06-25, Close, 108.07
2018-06-26, Cash 200000.0 Value 200000.0
2018-06-26, Close, 109.98
2018-06-27, Cash 200000.0 Value 200000.0
2018-06-27, Close, 100.88
2018-06-28, Cash 200000.0 Value 200000.0
2018-06-28, Close, 92.01
2018-06-29, Cash 200000.0 Value 200000.0
2018-06-29, Close, 96.51
2018-07-02, Cash 200000.0 Value 200000.0
2018-07-02, Close, 96.07
2018-07-03, Cash 200000.0 Value 200000.0
2018-07-03, Close, 105.68
2018-07-04, Cash 200000.0 Value 200000.0
2018-07-04, Close, 107.07
2018-07-05, Cash 200000.0 Value 200000.0
2018-07-05, Close, 99.29
2018-07-06, Cash 200000.0 Value 200000.0
2018-07-06, Close, 98.82
2018-07-09, Cash 200000.0 Value 200000.0
2018-07-09, Close, 100.70
2018-07-10, Cash 200000.0 Value 200000.0
2018-07-10, Close, 99.66
2018-07-11, Cash 200000.0 Value 200000.0
2018-07-11, Close, 96.31
2018-07-12, Cash 200000.0 Value 200000.0
2018-07-12, Close, 102.03
2018-07-13, Cash 200000.0 Value 200000.0
2018-07-13, Close, 102.24
2018-07-16, Cash 200000.0 Value 200000.0
2018-07-16, Close, 92.01
2018-07-17, Cash 200000.0 Value 200000.0
2018-07-17, Close, 82.81
2018-07-18, Cash 200000.0 Value 200000.0
2018-07-18, Close, 82.72
2018-07-19, Cash 200000.0 Value 200000.0
2018-07-19, Close, 77.17
2018-07-20, Cash 200000.0 Value 200000.0
2018-07-20, Close, 78.62
2018-07-23, Cash 200000.0 Value 200000.0
2018-07-23, Close, 75.76
2018-07-24, Cash 200000.0 Value 200000.0
2018-07-24, Close, 79.98
2018-07-25, Cash 200000.0 Value 200000.0
2018-07-25, Close, 79.07
2018-07-26, Cash 200000.0 Value 200000.0
2018-07-26, Close, 78.64
2018-07-27, Cash 200000.0 Value 200000.0
2018-07-27, Close, 76.36
2018-07-30, Cash 200000.0 Value 200000.0
2018-07-30, Close, 73.96
2018-07-31, Cash 200000.0 Value 200000.0
2018-07-31, Close, 72.89
2018-08-01, Cash 200000.0 Value 200000.0
2018-08-01, Close, 70.58
2018-08-02, Cash 200000.0 Value 200000.0
2018-08-02, Close, 70.80
2018-08-03, Cash 200000.0 Value 200000.0
2018-08-03, Close, 68.69
2018-08-06, Cash 200000.0 Value 200000.0
2018-08-06, Close, 70.87
2018-08-07, Cash 200000.0 Value 200000.0
2018-08-07, Close, 75.78
2018-08-08, Cash 200000.0 Value 200000.0
2018-08-08, Close, 72.96
2018-08-09, Cash 200000.0 Value 200000.0
2018-08-09, Close, 74.78
2018-08-10, Cash 200000.0 Value 200000.0
2018-08-10, Close, 74.39
2018-08-13, Cash 200000.0 Value 200000.0
2018-08-13, Close, 74.73
2018-08-14, Cash 200000.0 Value 200000.0
2018-08-14, Close, 75.56
2018-08-15, Cash 200000.0 Value 200000.0
2018-08-15, Close, 72.18
2018-08-16, Cash 200000.0 Value 200000.0
2018-08-16, Close, 70.56
2018-08-17, Cash 200000.0 Value 200000.0
2018-08-17, Close, 69.78
2018-08-20, Cash 200000.0 Value 200000.0
2018-08-20, Close, 71.19
2018-08-21, Cash 200000.0 Value 200000.0
2018-08-21, Close, 72.86
2018-08-22, Cash 200000.0 Value 200000.0
2018-08-22, Close, 71.32
2018-08-23, Cash 200000.0 Value 200000.0
2018-08-23, Close, 72.28
2018-08-24, Cash 200000.0 Value 200000.0
2018-08-24, Close, 71.28
2018-08-27, Cash 200000.0 Value 200000.0
2018-08-27, Close, 73.88
2018-08-28, Cash 200000.0 Value 200000.0
2018-08-28, Close, 74.33
2018-08-29, Cash 200000.0 Value 200000.0
2018-08-29, Close, 75.15
2018-08-30, Cash 200000.0 Value 200000.0
2018-08-30, Close, 73.35
2018-08-31, Cash 200000.0 Value 200000.0
2018-08-31, Close, 71.88
2018-09-03, Cash 200000.0 Value 200000.0
2018-09-03, Close, 73.16
2018-09-04, Cash 200000.0 Value 200000.0
2018-09-04, Close, 73.98
2018-09-05, Cash 200000.0 Value 200000.0
2018-09-05, Close, 71.68
2018-09-06, Cash 200000.0 Value 200000.0
2018-09-06, Close, 71.38
2018-09-07, Cash 200000.0 Value 200000.0
2018-09-07, Close, 71.46
2018-09-10, Cash 200000.0 Value 200000.0
2018-09-10, Close, 70.78
2018-09-11, Cash 200000.0 Value 200000.0
2018-09-11, Close, 71.12
2018-09-12, Cash 200000.0 Value 200000.0
2018-09-12, Close, 73.27
2018-09-13, Cash 200000.0 Value 200000.0
2018-09-13, Close, 73.67
2018-09-14, Cash 200000.0 Value 200000.0
2018-09-14, Close, 71.59
2018-09-17, Cash 200000.0 Value 200000.0
2018-09-17, Close, 64.74
2018-09-18, Cash 200000.0 Value 200000.0
2018-09-18, Close, 65.56
2018-09-19, Cash 200000.0 Value 200000.0
2018-09-19, Close, 66.00
2018-09-20, Cash 200000.0 Value 200000.0
2018-09-20, Close, 65.77
2018-09-21, Cash 200000.0 Value 200000.0
2018-09-21, Close, 66.82
2018-09-25, Cash 200000.0 Value 200000.0
2018-09-25, Close, 66.99
2018-09-26, Cash 200000.0 Value 200000.0
2018-09-26, Close, 66.68
2018-09-27, Cash 200000.0 Value 200000.0
2018-09-27, Close, 63.75
2018-09-28, Cash 200000.0 Value 200000.0
2018-09-28, Close, 64.80
2018-10-08, Cash 200000.0 Value 200000.0
2018-10-08, Close, 60.55
2018-10-09, Cash 200000.0 Value 200000.0
2018-10-09, Close, 60.55
2018-10-10, Cash 200000.0 Value 200000.0
2018-10-10, Close, 60.60
2018-10-11, Cash 200000.0 Value 200000.0
2018-10-11, Close, 55.00
2018-10-12, Cash 200000.0 Value 200000.0
2018-10-12, Close, 56.37
2018-10-15, Cash 200000.0 Value 200000.0
2018-10-15, Close, 56.11
2018-10-16, Cash 200000.0 Value 200000.0
2018-10-16, Close, 50.50
2018-10-17, Cash 200000.0 Value 200000.0
2018-10-17, Close, 48.46
2018-10-18, Cash 200000.0 Value 200000.0
2018-10-18, Close, 48.11
2018-10-19, Cash 200000.0 Value 200000.0
2018-10-19, Close, 50.83
2018-10-22, Cash 200000.0 Value 200000.0
2018-10-22, Close, 52.62
2018-10-23, Cash 200000.0 Value 200000.0
2018-10-23, Close, 49.96
2018-10-24, Cash 200000.0 Value 200000.0
2018-10-24, Close, 54.20
2018-10-25, Cash 200000.0 Value 200000.0
2018-10-25, Close, 52.20
2018-10-26, Cash 200000.0 Value 200000.0
2018-10-26, Close, 51.01
2018-10-29, Cash 200000.0 Value 200000.0
2018-10-29, Close, 52.00
2018-10-30, Cash 200000.0 Value 200000.0
2018-10-30, Close, 54.23
2018-10-31, Cash 200000.0 Value 200000.0
2018-10-31, Close, 54.80
2018-11-01, Cash 200000.0 Value 200000.0
2018-11-01, Close, 57.11
2018-11-02, Cash 200000.0 Value 200000.0
2018-11-02, Close, 58.88
2018-11-05, Cash 200000.0 Value 200000.0
2018-11-05, Close, 58.00
2018-11-06, Cash 200000.0 Value 200000.0
2018-11-06, Close, 61.00
2018-11-07, Cash 200000.0 Value 200000.0
2018-11-07, Close, 59.90
2018-11-08, Cash 200000.0 Value 200000.0
2018-11-08, Close, 59.80
2018-11-09, Cash 200000.0 Value 200000.0
2018-11-09, Close, 60.00
2018-11-12, Cash 200000.0 Value 200000.0
2018-11-12, Close, 60.64
2018-11-13, Cash 200000.0 Value 200000.0
2018-11-13, Close, 60.90
2018-11-14, Cash 200000.0 Value 200000.0
2018-11-14, Close, 61.62
2018-11-15, Cash 200000.0 Value 200000.0
2018-11-15, Close, 62.21
2018-11-16, Cash 200000.0 Value 200000.0
2018-11-16, Close, 63.46
2018-11-19, Cash 200000.0 Value 200000.0
2018-11-19, Close, 62.23
2018-11-20, Cash 200000.0 Value 200000.0
2018-11-20, Close, 59.62
2018-11-20, BUY CREATE,59.62
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
2018-11-21, BUY EXECUTED, Price: 58.63, Cost: 58.63, Comm 0.00
2018-11-21, Cash 199941.37 Value 200001.15
2018-11-21, Close, 59.78
2018-11-22, Cash 199941.37 Value 200000.88
2018-11-22, Close, 59.51
2018-11-23, Cash 199941.37 Value 199998.71
2018-11-23, Close, 57.34
2018-11-26, Cash 199941.37 Value 200000.02
2018-11-26, Close, 58.65
2018-11-27, Cash 199941.37 Value 199998.24
2018-11-27, Close, 56.87
2018-11-27, BUY CREATE,56.87
2018-11-27, Pos size 1
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
2018-11-28, SELL EXECUTED, Price: 56.50, Cost: 58.63, Comm 0.00
2018-11-28, OPERATION PROFIT, GROSS -2.13, NET -2.13
2018-11-28, Cash 199997.87 Value 199997.87
2018-11-28, Close, 57.48
2018-11-29, Cash 199997.87 Value 199997.87
2018-11-29, Close, 56.42
2018-11-30, Cash 199997.87 Value 199997.87
2018-11-30, Close, 57.88
2018-12-03, Cash 199997.87 Value 199997.87
2018-12-03, Close, 59.49
2018-12-04, Cash 199997.87 Value 199997.87
2018-12-04, Close, 58.99
2018-12-05, Cash 199997.87 Value 199997.87
2018-12-05, Close, 58.30
2018-12-06, Cash 199997.87 Value 199997.87
2018-12-06, Close, 55.62
2018-12-07, Cash 199997.87 Value 199997.87
2018-12-07, Close, 54.80
2018-12-10, Cash 199997.87 Value 199997.87
2018-12-10, Close, 54.64
2018-12-11, Cash 199997.87 Value 199997.87
2018-12-11, Close, 55.20
2018-12-12, Cash 199997.87 Value 199997.87
2018-12-12, Close, 54.70
2018-12-13, Cash 199997.87 Value 199997.87
2018-12-13, Close, 55.88
2018-12-14, Cash 199997.87 Value 199997.87
2018-12-14, Close, 54.00
2018-12-17, Cash 199997.87 Value 199997.87
2018-12-17, Close, 54.51
2018-12-18, Cash 199997.87 Value 199997.87
2018-12-18, Close, 54.58
2018-12-19, Cash 199997.87 Value 199997.87
2018-12-19, Close, 53.34
2018-12-20, Cash 199997.87 Value 199997.87
2018-12-20, Close, 53.94
2018-12-21, Cash 199997.87 Value 199997.87
2018-12-21, Close, 55.30
2018-12-24, Cash 199997.87 Value 199997.87
2018-12-24, Close, 56.25
2018-12-25, Cash 199997.87 Value 199997.87
2018-12-25, Close, 56.10
2018-12-26, Cash 199997.87 Value 199997.87
2018-12-26, Close, 54.89
2018-12-27, Cash 199997.87 Value 199997.87
2018-12-27, Close, 56.80
2018-12-28, Cash 199997.87 Value 199997.87
2018-12-28, Close, 60.00
2019-01-02, Cash 199997.87 Value 199997.87
2019-01-02, Close, 61.00
2019-01-03, Cash 199997.87 Value 199997.87
2019-01-03, Close, 60.37
2019-01-04, Cash 199997.87 Value 199997.87
2019-01-04, Close, 60.34
2019-01-07, Cash 199997.87 Value 199997.87
2019-01-07, Close, 61.19
2019-01-08, Cash 199997.87 Value 199997.87
2019-01-08, Close, 59.90
2019-01-08, BUY CREATE,59.9
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
2019-01-09, BUY EXECUTED, Price: 59.71, Cost: 59.71, Comm 0.00
2019-01-09, Cash 199938.16 Value 199998.65
2019-01-09, Close, 60.49
2019-01-10, Cash 199938.16 Value 199999.07
2019-01-10, Close, 60.91
2019-01-11, Cash 199938.16 Value 199998.16
2019-01-11, Close, 60.00
2019-01-14, Cash 199938.16 Value 199996.76
2019-01-14, Close, 58.60
2019-01-15, Cash 199938.16 Value 199997.89
2019-01-15, Close, 59.73
2019-01-16, Cash 199938.16 Value 199998.53
2019-01-16, Close, 60.37
2019-01-17, Cash 199938.16 Value 199997.26
2019-01-17, Close, 59.10
2019-01-18, Cash 199938.16 Value 199998.34
2019-01-18, Close, 60.18
2019-01-21, Cash 199938.16 Value 199998.16
2019-01-21, Close, 60.00
2019-01-22, Cash 199938.16 Value 199997.07
2019-01-22, Close, 58.91
2019-01-23, Cash 199938.16 Value 199997.16
2019-01-23, Close, 59.00
2019-01-24, Cash 199938.16 Value 199996.71
2019-01-24, Close, 58.55
2019-01-25, Cash 199938.16 Value 199996.71
2019-01-25, Close, 58.55
2019-01-28, Cash 199938.16 Value 199995.02
2019-01-28, Close, 56.86
2019-01-29, Cash 199938.16 Value 199995.47
2019-01-29, Close, 57.31
2019-01-30, Cash 199938.16 Value 199995.09
2019-01-30, Close, 56.93
2019-01-30, BUY CREATE,56.93
2019-01-30, Pos size 1
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
2019-01-31, SELL EXECUTED, Price: 57.35, Cost: 59.71, Comm 0.00
2019-01-31, OPERATION PROFIT, GROSS -2.36, NET -2.36
2019-01-31, Cash 199995.51 Value 199995.51
2019-01-31, Close, 57.11
2019-02-01, Cash 199995.51 Value 199995.51
2019-02-01, Close, 59.85
2019-02-11, Cash 199995.51 Value 199995.51
2019-02-11, Close, 60.93
2019-02-11, BUY CREATE,60.93
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
2019-02-12, BUY EXECUTED, Price: 60.70, Cost: 60.70, Comm 0.00
2019-02-12, Cash 199934.81 Value 199995.97
2019-02-12, Close, 61.16
2019-02-13, Cash 199934.81 Value 200002.09
2019-02-13, Close, 67.28
2019-02-14, Cash 199934.81 Value 200003.45
2019-02-14, Close, 68.64
2019-02-15, Cash 199934.81 Value 200002.61
2019-02-15, Close, 67.80
2019-02-18, Cash 199934.81 Value 200005.15
2019-02-18, Close, 70.34
2019-02-19, Cash 199934.81 Value 200004.51
2019-02-19, Close, 69.70
2019-02-20, Cash 199934.81 Value 200004.01
2019-02-20, Close, 69.20
2019-02-21, Cash 199934.81 Value 200003.01
2019-02-21, Close, 68.20
2019-02-22, Cash 199934.81 Value 200005.11
2019-02-22, Close, 70.30
2019-02-25, Cash 199934.81 Value 200011.91
2019-02-25, Close, 77.10
2019-02-26, Cash 199934.81 Value 200014.91
2019-02-26, Close, 80.10
2019-02-27, Cash 199934.81 Value 200013.01
2019-02-27, Close, 78.20
2019-02-28, Cash 199934.81 Value 200014.78
2019-02-28, Close, 79.97
2019-03-01, Cash 199934.81 Value 200015.62
2019-03-01, Close, 80.81
2019-03-04, Cash 199934.81 Value 200017.11
2019-03-04, Close, 82.30
2019-03-05, Cash 199934.81 Value 200016.97
2019-03-05, Close, 82.16
2019-03-06, Cash 199934.81 Value 200018.58
2019-03-06, Close, 83.77
2019-03-07, Cash 199934.81 Value 200015.41999999998
2019-03-07, Close, 80.61
2019-03-08, Cash 199934.81 Value 200010.3
2019-03-08, Close, 75.49
2019-03-11, Cash 199934.81 Value 200014.66
2019-03-11, Close, 79.85
2019-03-12, Cash 199934.81 Value 200014.37
2019-03-12, Close, 79.56
2019-03-13, Cash 199934.81 Value 200012.07
2019-03-13, Close, 77.26
2019-03-14, Cash 199934.81 Value 200012.75
2019-03-14, Close, 77.94
2019-03-15, Cash 199934.81 Value 200012.41
2019-03-15, Close, 77.60
2019-03-18, Cash 199934.81 Value 200015.31
2019-03-18, Close, 80.50
2019-03-19, Cash 199934.81 Value 200014.1
2019-03-19, Close, 79.29
2019-03-20, Cash 199934.81 Value 200012.48
2019-03-20, Close, 77.67
2019-03-21, Cash 199934.81 Value 200012.13999999998
2019-03-21, Close, 77.33
2019-03-22, Cash 199934.81 Value 200012.22
2019-03-22, Close, 77.41
2019-03-25, Cash 199934.81 Value 200009.69
2019-03-25, Close, 74.88
2019-03-26, Cash 199934.81 Value 200007.29
2019-03-26, Close, 72.48
2019-03-27, Cash 199934.81 Value 200008.21
2019-03-27, Close, 73.40
2019-03-28, Cash 199934.81 Value 200007.25
2019-03-28, Close, 72.44
2019-03-29, Cash 199934.81 Value 200010.24
2019-03-29, Close, 75.43
2019-04-01, Cash 199934.81 Value 200012.28
2019-04-01, Close, 77.47
2019-04-02, Cash 199934.81 Value 200011.69
2019-04-02, Close, 76.88
2019-04-03, Cash 199934.81 Value 200011.44
2019-04-03, Close, 76.63
2019-04-04, Cash 199934.81 Value 200010.87
2019-04-04, Close, 76.06
2019-04-08, Cash 199934.81 Value 200007.53
2019-04-08, Close, 72.72
2019-04-09, Cash 199934.81 Value 200007.84
2019-04-09, Close, 73.03
2019-04-10, Cash 199934.81 Value 200008.74
2019-04-10, Close, 73.93
2019-04-11, Cash 199934.81 Value 200006.82
2019-04-11, Close, 72.01
2019-04-11, BUY CREATE,72.01
2019-04-11, Pos size 1
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
2019-04-12, SELL EXECUTED, Price: 71.78, Cost: 60.70, Comm 0.00
2019-04-12, OPERATION PROFIT, GROSS 11.08, NET 11.08
2019-04-12, Cash 200006.59 Value 200006.59
2019-04-12, Close, 72.50
2019-04-15, Cash 200006.59 Value 200006.59
2019-04-15, Close, 71.36
2019-04-16, Cash 200006.59 Value 200006.59
2019-04-16, Close, 70.80
2019-04-17, Cash 200006.59 Value 200006.59
2019-04-17, Close, 69.51
2019-04-18, Cash 200006.59 Value 200006.59
2019-04-18, Close, 70.25
2019-04-19, Cash 200006.59 Value 200006.59
2019-04-19, Close, 70.26
2019-04-22, Cash 200006.59 Value 200006.59
2019-04-22, Close, 69.01
2019-04-23, Cash 200006.59 Value 200006.59
2019-04-23, Close, 69.16
2019-04-24, Cash 200006.59 Value 200006.59
2019-04-24, Close, 71.31
2019-04-25, Cash 200006.59 Value 200006.59
2019-04-25, Close, 68.33
2019-04-26, Cash 200006.59 Value 200006.59
2019-04-26, Close, 66.55
2019-04-29, Cash 200006.59 Value 200006.59
2019-04-29, Close, 65.85
2019-04-30, Cash 200006.59 Value 200006.59
2019-04-30, Close, 66.98
2019-05-06, Cash 200006.59 Value 200006.59
2019-05-06, Close, 60.28
2019-05-07, Cash 200006.59 Value 200006.59
2019-05-07, Close, 60.92
2019-05-08, Cash 200006.59 Value 200006.59
2019-05-08, Close, 60.90
2019-05-09, Cash 200006.59 Value 200006.59
2019-05-09, Close, 60.70
2019-05-10, Cash 200006.59 Value 200006.59
2019-05-10, Close, 62.77
2019-05-13, Cash 200006.59 Value 200006.59
2019-05-13, Close, 64.69
2019-05-14, Cash 200006.59 Value 200006.59
2019-05-14, Close, 62.93
2019-05-15, Cash 200006.59 Value 200006.59
2019-05-15, Close, 63.33
2019-05-16, Cash 200006.59 Value 200006.59
2019-05-16, Close, 62.73
2019-05-17, Cash 200006.59 Value 200006.59
2019-05-17, Close, 60.20
2019-05-20, Cash 200006.59 Value 200006.59
2019-05-20, Close, 61.68
2019-05-21, Cash 200006.59 Value 200006.59
2019-05-21, Close, 62.65
2019-05-22, Cash 200006.59 Value 200006.59
2019-05-22, Close, 61.21
2019-05-23, Cash 200006.59 Value 200006.59
2019-05-23, Close, 59.46
2019-05-24, Cash 200006.59 Value 200006.59
2019-05-24, Close, 59.52
2019-05-27, Cash 200006.59 Value 200006.59
2019-05-27, Close, 61.68
2019-05-28, Cash 200006.59 Value 200006.59
2019-05-28, Close, 61.00
2019-05-29, Cash 200006.59 Value 200006.59
2019-05-29, Close, 61.33
2019-05-30, Cash 200006.59 Value 200006.59
2019-05-30, Close, 60.48
2019-05-31, Cash 200006.59 Value 200006.59
2019-05-31, Close, 60.40
2019-06-03, Cash 200006.59 Value 200006.59
2019-06-03, Close, 59.59
2019-06-04, Cash 200006.59 Value 200006.59
2019-06-04, Close, 58.32
2019-06-05, Cash 200006.59 Value 200006.59
2019-06-05, Close, 57.40
2019-06-06, Cash 200006.59 Value 200006.59
2019-06-06, Close, 54.80
2019-06-10, Cash 200006.59 Value 200006.59
2019-06-10, Close, 55.21
2019-06-11, Cash 200006.59 Value 200006.59
2019-06-11, Close, 57.80
2019-06-12, Cash 200006.59 Value 200006.59
2019-06-12, Close, 56.84
2019-06-13, Cash 200006.59 Value 200006.59
2019-06-13, Close, 56.33
2019-06-14, Cash 200006.59 Value 200006.59
2019-06-14, Close, 55.06
2019-06-17, Cash 200006.59 Value 200006.59
2019-06-17, Close, 55.64
2019-06-18, Cash 200006.59 Value 200006.59
2019-06-18, Close, 56.20
2019-06-19, Cash 200006.59 Value 200006.59
2019-06-19, Close, 56.65
2019-06-20, Cash 200006.59 Value 200006.59
2019-06-20, Close, 57.72
2019-06-21, Cash 200006.59 Value 200006.59
2019-06-21, Close, 59.55
2019-06-24, Cash 200006.59 Value 200006.59
2019-06-24, Close, 58.30
2019-06-25, Cash 200006.59 Value 200006.59
2019-06-25, Close, 57.10
2019-06-26, Cash 200006.59 Value 200006.59
2019-06-26, Close, 58.21
2019-06-27, Cash 200006.59 Value 200006.59
2019-06-27, Close, 57.67
2019-06-28, Cash 200006.59 Value 200006.59
2019-06-28, Close, 57.04
2019-07-01, Cash 200006.59 Value 200006.59
2019-07-01, Close, 60.00
2019-07-02, Cash 200006.59 Value 200006.59
2019-07-02, Close, 60.58
2019-07-03, Cash 200006.59 Value 200006.59
2019-07-03, Close, 61.15
2019-07-04, Cash 200006.59 Value 200006.59
2019-07-04, Close, 62.38
2019-07-05, Cash 200006.59 Value 200006.59
2019-07-05, Close, 61.65
2019-07-08, Cash 200006.59 Value 200006.59
2019-07-08, Close, 60.46
2019-07-09, Cash 200006.59 Value 200006.59
2019-07-09, Close, 60.81
2019-07-10, Cash 200006.59 Value 200006.59
2019-07-10, Close, 61.30
2019-07-11, Cash 200006.59 Value 200006.59
2019-07-11, Close, 62.30
2019-07-12, Cash 200006.59 Value 200006.59
2019-07-12, Close, 62.69
2019-07-12, BUY CREATE,62.69
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
2019-07-15, BUY EXECUTED, Price: 62.48, Cost: 62.48, Comm 0.00
2019-07-15, Cash 199944.11 Value 200005.83
2019-07-15, Close, 61.72
2019-07-16, Cash 199944.11 Value 200005.78
2019-07-16, Close, 61.67
2019-07-17, Cash 199944.11 Value 200008.68999999997
2019-07-17, Close, 64.58
2019-07-18, Cash 199944.11 Value 200007.08
2019-07-18, Close, 62.97
2019-07-19, Cash 199944.11 Value 200007.12
2019-07-19, Close, 63.01
2019-07-22, Cash 199944.11 Value 200004.0
2019-07-22, Close, 59.89
2019-07-23, Cash 199944.11 Value 200004.65999999997
2019-07-23, Close, 60.55
2019-07-24, Cash 199944.11 Value 200006.3
2019-07-24, Close, 62.19
2019-07-25, Cash 199944.11 Value 200006.81
2019-07-25, Close, 62.70
2019-07-26, Cash 199944.11 Value 200007.11
2019-07-26, Close, 63.00
2019-07-29, Cash 199944.11 Value 200006.9
2019-07-29, Close, 62.79
2019-07-30, Cash 199944.11 Value 200007.90999999997
2019-07-30, Close, 63.80
2019-07-31, Cash 199944.11 Value 200006.61
2019-07-31, Close, 62.50
2019-08-01, Cash 199944.11 Value 200006.99
2019-08-01, Close, 62.88
2019-08-02, Cash 199944.11 Value 200005.81
2019-08-02, Close, 61.70
2019-08-05, Cash 199944.11 Value 200004.81
2019-08-05, Close, 60.70
2019-08-06, Cash 199944.11 Value 200001.3
2019-08-06, Close, 57.19
2019-08-07, Cash 199944.11 Value 199999.8
2019-08-07, Close, 55.69
2019-08-07, BUY CREATE,55.69
2019-08-07, Pos size 1
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
2019-08-08, SELL EXECUTED, Price: 56.04, Cost: 62.48, Comm 0.00
2019-08-08, OPERATION PROFIT, GROSS -6.44, NET -6.44
2019-08-08, Cash 200000.15 Value 200000.15
2019-08-08, Close, 56.14
2019-08-09, Cash 200000.15 Value 200000.15
2019-08-09, Close, 56.11
2019-08-12, Cash 200000.15 Value 200000.15
2019-08-12, Close, 57.49
2019-08-13, Cash 200000.15 Value 200000.15
2019-08-13, Close, 56.57
2019-08-14, Cash 200000.15 Value 200000.15
2019-08-14, Close, 57.80
2019-08-15, Cash 200000.15 Value 200000.15
2019-08-15, Close, 58.89
2019-08-16, Cash 200000.15 Value 200000.15
2019-08-16, Close, 58.58
2019-08-19, Cash 200000.15 Value 200000.15
2019-08-19, Close, 62.38
2019-08-20, Cash 200000.15 Value 200000.15
2019-08-20, Close, 62.54
2019-08-21, Cash 200000.15 Value 200000.15
2019-08-21, Close, 62.58
2019-08-22, Cash 200000.15 Value 200000.15
2019-08-22, Close, 62.74
2019-08-23, Cash 200000.15 Value 200000.15
2019-08-23, Close, 62.29
2019-08-26, Cash 200000.15 Value 200000.15
2019-08-26, Close, 62.10
2019-08-27, Cash 200000.15 Value 200000.15
2019-08-27, Close, 63.75
2019-08-27, BUY CREATE,63.75
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
2019-08-28, BUY EXECUTED, Price: 63.50, Cost: 63.50, Comm 0.00
2019-08-28, Cash 199936.65 Value 199998.88
2019-08-28, Close, 62.23
2019-08-29, Cash 199936.65 Value 199998.4
2019-08-29, Close, 61.75
2019-08-30, Cash 199936.65 Value 199998.66999999998
2019-08-30, Close, 62.02
2019-09-02, Cash 199936.65 Value 200004.87
2019-09-02, Close, 68.22
2019-09-03, Cash 199936.65 Value 200006.85
2019-09-03, Close, 70.20
2019-09-04, Cash 199936.65 Value 200007.5
2019-09-04, Close, 70.85
2019-09-05, Cash 199936.65 Value 200007.56
2019-09-05, Close, 70.91
2019-09-06, Cash 199936.65 Value 200009.97
2019-09-06, Close, 73.32
2019-09-09, Cash 199936.65 Value 200009.97
2019-09-09, Close, 73.32
2019-09-10, Cash 199936.65 Value 200009.47
2019-09-10, Close, 72.82
2019-09-11, Cash 199936.65 Value 200009.02
2019-09-11, Close, 72.37
2019-09-12, Cash 199936.65 Value 200009.85
2019-09-12, Close, 73.20
2019-09-16, Cash 199936.65 Value 200009.96
2019-09-16, Close, 73.31
2019-09-17, Cash 199936.65 Value 200007.31
2019-09-17, Close, 70.66
2019-09-18, Cash 199936.65 Value 200006.61
2019-09-18, Close, 69.96
2019-09-19, Cash 199936.65 Value 200007.38
2019-09-19, Close, 70.73
2019-09-20, Cash 199936.65 Value 200006.44999999998
2019-09-20, Close, 69.80
2019-09-23, Cash 199936.65 Value 200006.36
2019-09-23, Close, 69.71
2019-09-24, Cash 199936.65 Value 200005.88
2019-09-24, Close, 69.23
2019-09-25, Cash 199936.65 Value 200003.49
2019-09-25, Close, 66.84
2019-09-26, Cash 199936.65 Value 200001.13999999998
2019-09-26, Close, 64.49
2019-09-27, Cash 199936.65 Value 200001.0
2019-09-27, Close, 64.35
2019-09-30, Cash 199936.65 Value 200000.63
2019-09-30, Close, 63.98
2019-10-08, Cash 199936.65 Value 200001.1
2019-10-08, Close, 64.45
2019-10-08, BUY CREATE,64.45
2019-10-08, Pos size 1
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
2019-10-09, SELL EXECUTED, Price: 64.16, Cost: 63.50, Comm 0.00
2019-10-09, OPERATION PROFIT, GROSS 0.66, NET 0.66
2019-10-09, Cash 200000.81 Value 200000.81
2019-10-09, Close, 64.96
2019-10-10, Cash 200000.81 Value 200000.81
2019-10-10, Close, 65.65
2019-10-11, Cash 200000.81 Value 200000.81
2019-10-11, Close, 65.10
2019-10-14, Cash 200000.81 Value 200000.81
2019-10-14, Close, 67.23
2019-10-15, Cash 200000.81 Value 200000.81
2019-10-15, Close, 60.51
2019-10-16, Cash 200000.81 Value 200000.81
2019-10-16, Close, 59.50
2019-10-17, Cash 200000.81 Value 200000.81
2019-10-17, Close, 59.80
2019-10-18, Cash 200000.81 Value 200000.81
2019-10-18, Close, 59.80
2019-10-21, Cash 200000.81 Value 200000.81
2019-10-21, Close, 59.48
2019-10-22, Cash 200000.81 Value 200000.81
2019-10-22, Close, 59.74
2019-10-23, Cash 200000.81 Value 200000.81
2019-10-23, Close, 59.15
2019-10-24, Cash 200000.81 Value 200000.81
2019-10-24, Close, 58.59
2019-10-25, Cash 200000.81 Value 200000.81
2019-10-25, Close, 58.85
2019-10-28, Cash 200000.81 Value 200000.81
2019-10-28, Close, 61.94
2019-10-29, Cash 200000.81 Value 200000.81
2019-10-29, Close, 59.39
2019-10-30, Cash 200000.81 Value 200000.81
2019-10-30, Close, 59.56
2019-10-31, Cash 200000.81 Value 200000.81
2019-10-31, Close, 58.88
2019-11-01, Cash 200000.81 Value 200000.81
2019-11-01, Close, 58.36
2019-11-04, Cash 200000.81 Value 200000.81
2019-11-04, Close, 60.45
2019-11-05, Cash 200000.81 Value 200000.81
2019-11-05, Close, 60.48
2019-11-06, Cash 200000.81 Value 200000.81
2019-11-06, Close, 60.15
2019-11-07, Cash 200000.81 Value 200000.81
2019-11-07, Close, 60.85
2019-11-08, Cash 200000.81 Value 200000.81
2019-11-08, Close, 61.12
2019-11-11, Cash 200000.81 Value 200000.81
2019-11-11, Close, 59.09
2019-11-12, Cash 200000.81 Value 200000.81
2019-11-12, Close, 59.66
2019-11-13, Cash 200000.81 Value 200000.81
2019-11-13, Close, 60.34
2019-11-14, Cash 200000.81 Value 200000.81
2019-11-14, Close, 61.06
2019-11-15, Cash 200000.81 Value 200000.81
2019-11-15, Close, 59.66
2019-11-18, Cash 200000.81 Value 200000.81
2019-11-18, Close, 60.41
2019-11-19, Cash 200000.81 Value 200000.81
2019-11-19, Close, 61.46
2019-11-20, Cash 200000.81 Value 200000.81
2019-11-20, Close, 62.23
2019-11-21, Cash 200000.81 Value 200000.81
2019-11-21, Close, 62.77
2019-11-22, Cash 200000.81 Value 200000.81
2019-11-22, Close, 61.37
2019-11-25, Cash 200000.81 Value 200000.81
2019-11-25, Close, 60.74
2019-11-26, Cash 200000.81 Value 200000.81
2019-11-26, Close, 60.65
2019-11-27, Cash 200000.81 Value 200000.81
2019-11-27, Close, 60.99
2019-11-28, Cash 200000.81 Value 200000.81
2019-11-28, Close, 59.99
2019-11-29, Cash 200000.81 Value 200000.81
2019-11-29, Close, 59.29
2019-12-02, Cash 200000.81 Value 200000.81
2019-12-02, Close, 59.40
2019-12-03, Cash 200000.81 Value 200000.81
2019-12-03, Close, 59.16
2019-12-04, Cash 200000.81 Value 200000.81
2019-12-04, Close, 59.53
2019-12-05, Cash 200000.81 Value 200000.81
2019-12-05, Close, 60.27
2019-12-06, Cash 200000.81 Value 200000.81
2019-12-06, Close, 60.20
2019-12-09, Cash 200000.81 Value 200000.81
2019-12-09, Close, 60.30
2019-12-10, Cash 200000.81 Value 200000.81
2019-12-10, Close, 60.31
2019-12-11, Cash 200000.81 Value 200000.81
2019-12-11, Close, 60.50
2019-12-12, Cash 200000.81 Value 200000.81
2019-12-12, Close, 59.64
2019-12-13, Cash 200000.81 Value 200000.81
2019-12-13, Close, 60.45
2019-12-16, Cash 200000.81 Value 200000.81
2019-12-16, Close, 61.21
2019-12-17, Cash 200000.81 Value 200000.81
2019-12-17, Close, 62.18
2019-12-18, Cash 200000.81 Value 200000.81
2019-12-18, Close, 61.95
2019-12-19, Cash 200000.81 Value 200000.81
2019-12-19, Close, 67.73
2019-12-20, Cash 200000.81 Value 200000.81
2019-12-20, Close, 65.68
2019-12-20, BUY CREATE,65.68
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
2019-12-23, BUY EXECUTED, Price: 65.28, Cost: 65.28, Comm 0.00
2019-12-23, Cash 199935.53 Value 200000.32
2019-12-23, Close, 64.79
2019-12-24, Cash 199935.53 Value 200000.52
2019-12-24, Close, 64.99
2019-12-25, Cash 199935.53 Value 200001.38
2019-12-25, Close, 65.85
2019-12-26, Cash 199935.53 Value 200001.26
2019-12-26, Close, 65.73
2019-12-27, Cash 199935.53 Value 200001.09
2019-12-27, Close, 65.56
2019-12-30, Cash 199935.53 Value 200002.63
2019-12-30, Close, 67.10
2019-12-31, Cash 199935.53 Value 200004.23
2019-12-31, Close, 68.70
2020-01-02, Cash 199935.53 Value 200004.03
2020-01-02, Close, 68.50
2020-01-03, Cash 199935.53 Value 200004.23
2020-01-03, Close, 68.70
2020-01-06, Cash 199935.53 Value 200002.69
2020-01-06, Close, 67.16
2020-01-07, Cash 199935.53 Value 200003.49
2020-01-07, Close, 67.96
2020-01-08, Cash 199935.53 Value 200001.09
2020-01-08, Close, 65.56
2020-01-09, Cash 199935.53 Value 200002.03
2020-01-09, Close, 66.50
2020-01-10, Cash 199935.53 Value 200002.53
2020-01-10, Close, 67.00
2020-01-13, Cash 199935.53 Value 200003.53
2020-01-13, Close, 68.00
2020-01-14, Cash 199935.53 Value 200003.66
2020-01-14, Close, 68.13
2020-01-15, Cash 199935.53 Value 200005.29
2020-01-15, Close, 69.76
2020-01-16, Cash 199935.53 Value 200004.28
2020-01-16, Close, 68.75
2020-01-17, Cash 199935.53 Value 200005.49
2020-01-17, Close, 69.96
2020-01-20, Cash 199935.53 Value 200012.13
2020-01-20, Close, 76.60
2020-01-21, Cash 199935.53 Value 200013.88
2020-01-21, Close, 78.35
2020-01-22, Cash 199935.53 Value 200010.03
2020-01-22, Close, 74.50
2020-01-23, Cash 199935.53 Value 200015.03
2020-01-23, Close, 79.50
2020-02-03, Cash 199935.53 Value 200022.98
2020-02-03, Close, 87.45
2020-02-04, Cash 199935.53 Value 200025.52
2020-02-04, Close, 89.99
2020-02-05, Cash 199935.53 Value 200026.26
2020-02-05, Close, 90.73
2020-02-06, Cash 199935.53 Value 200024.07
2020-02-06, Close, 88.54
2020-02-07, Cash 199935.53 Value 200019.21
2020-02-07, Close, 83.68
2020-02-10, Cash 199935.53 Value 200015.62
2020-02-10, Close, 80.09
2020-02-11, Cash 199935.53 Value 200015.19
2020-02-11, Close, 79.66
2020-02-12, Cash 199935.53 Value 200015.31
2020-02-12, Close, 79.78
2020-02-13, Cash 199935.53 Value 200012.43
2020-02-13, Close, 76.90
2020-02-14, Cash 199935.53 Value 200012.3
2020-02-14, Close, 76.77
2020-02-17, Cash 199935.53 Value 200014.24
2020-02-17, Close, 78.71
2020-02-18, Cash 199935.53 Value 200017.5
2020-02-18, Close, 81.97
2020-02-19, Cash 199935.53 Value 200014.11
2020-02-19, Close, 78.58
2020-02-20, Cash 199935.53 Value 200014.52
2020-02-20, Close, 78.99
2020-02-21, Cash 199935.53 Value 200015.63
2020-02-21, Close, 80.10
2020-02-24, Cash 199935.53 Value 200018.7
2020-02-24, Close, 83.17
2020-02-25, Cash 199935.53 Value 200021.73
2020-02-25, Close, 86.20
2020-02-26, Cash 199935.53 Value 200017.38999999998
2020-02-26, Close, 81.86
2020-02-27, Cash 199935.53 Value 200016.18
2020-02-27, Close, 80.65
2020-02-28, Cash 199935.53 Value 200018.38
2020-02-28, Close, 82.85
2020-03-02, Cash 199935.53 Value 200021.46
2020-03-02, Close, 85.93
2020-03-03, Cash 199935.53 Value 200023.69
2020-03-03, Close, 88.16
2020-03-04, Cash 199935.53 Value 200021.16
2020-03-04, Close, 85.63
2020-03-05, Cash 199935.53 Value 200020.87
2020-03-05, Close, 85.34
2020-03-06, Cash 199935.53 Value 200021.95
2020-03-06, Close, 86.42
2020-03-09, Cash 199935.53 Value 200018.29
2020-03-09, Close, 82.76
2020-03-10, Cash 199935.53 Value 200014.91
2020-03-10, Close, 79.38
2020-03-11, Cash 199935.53 Value 200015.63
2020-03-11, Close, 80.10
2020-03-12, Cash 199935.53 Value 200014.91
2020-03-12, Close, 79.38
2020-03-13, Cash 199935.53 Value 200012.38
2020-03-13, Close, 76.85
2020-03-16, Cash 199935.53 Value 200009.23
2020-03-16, Close, 73.70
2020-03-16, BUY CREATE,73.7
2020-03-16, Pos size 1
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
<class 'backtrader.order.SellOrder'> Is Buy  False
2020-03-17, SELL EXECUTED, Price: 75.00, Cost: 65.28, Comm 0.00
2020-03-17, OPERATION PROFIT, GROSS 9.72, NET 9.72
2020-03-17, Cash 200010.53 Value 200010.53
2020-03-17, Close, 72.01
2020-03-18, Cash 200010.53 Value 200010.53
2020-03-18, Close, 73.60
2020-03-19, Cash 200010.53 Value 200010.53
2020-03-19, Close, 73.84
2020-03-20, Cash 200010.53 Value 200010.53
2020-03-20, Close, 74.28
2020-03-23, Cash 200010.53 Value 200010.53
2020-03-23, Close, 70.10
2020-03-24, Cash 200010.53 Value 200010.53
2020-03-24, Close, 70.00
2020-03-25, Cash 200010.53 Value 200010.53
2020-03-25, Close, 73.93
2020-03-26, Cash 200010.53 Value 200010.53
2020-03-26, Close, 81.32
2020-03-27, Cash 200010.53 Value 200010.53
2020-03-27, Close, 83.40
2020-03-30, Cash 200010.53 Value 200010.53
2020-03-30, Close, 82.12
2020-03-31, Cash 200010.53 Value 200010.53
2020-03-31, Close, 84.70
2020-04-01, Cash 200010.53 Value 200010.53
2020-04-01, Close, 80.95
2020-04-02, Cash 200010.53 Value 200010.53
2020-04-02, Close, 81.60
2020-04-03, Cash 200010.53 Value 200010.53
2020-04-03, Close, 82.02
2020-04-07, Cash 200010.53 Value 200010.53
2020-04-07, Close, 82.98
2020-04-07, BUY CREATE,82.98
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
<class 'backtrader.order.BuyOrder'> Is Buy  True
2020-04-08, BUY EXECUTED, Price: 83.50, Cost: 83.50, Comm 0.00
2020-04-08, Cash 199927.03 Value 200010.91
2020-04-08, Close, 83.88
2020-04-09, Cash 199927.03 Value 200011.87
2020-04-09, Close, 84.84
2020-04-10, Cash 199927.03 Value 200008.56
2020-04-10, Close, 81.53
2020-04-13, Cash 199927.03 Value 200013.26
2020-04-13, Close, 86.23
2020-04-14, Cash 199927.03 Value 200017.59
2020-04-14, Close, 90.56
2020-04-15, Cash 199927.03 Value 200024.48
2020-04-15, Close, 97.45
2020-04-16, Cash 199927.03 Value 200034.23
2020-04-16, Close, 107.20
2020-04-17, Cash 199927.03 Value 200029.22
2020-04-17, Close, 102.19
2020-04-20, Cash 199927.03 Value 200039.44
2020-04-20, Close, 112.41
2020-04-21, Cash 199927.03 Value 200037.63
2020-04-21, Close, 110.60
2020-04-22, Cash 199927.03 Value 200034.88999999998
2020-04-22, Close, 107.86
2020-04-23, Cash 199927.03 Value 200041.61
2020-04-23, Close, 114.58
2020-04-24, Cash 199927.03 Value 200033.05
2020-04-24, Close, 106.02
2020-04-27, Cash 199927.03 Value 200035.49
2020-04-27, Close, 108.46
2020-04-28, Cash 199927.03 Value 200035.47
2020-04-28, Close, 108.44
2020-04-29, Cash 199927.03 Value 200037.0
2020-04-29, Close, 109.97
2020-04-30, Cash 199927.03 Value 200032.27
2020-04-30, Close, 105.24
Final Portfolio Value: 200032.27

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章