Пример #1
0
    def setUp(self):
        parser = CSVOrderParser("data/SimpleOrdersFile.csv")
        parser.parse()
        orders = parser.get_parsed_orders()
        start_date, end_date = parser.get_dates_range()

        self.market = Market(parser.get_symbols_traded(), start_date, end_date)
        self.portfolio = Portfolio(self.market, 1000000)
        for order in orders:
            self.portfolio.add_order(order)

        self.portfolio.calculate_number_of_shares_held()
        self.portfolio.calculate_portfolio_value()

        self.portfolio_report = PortfolioReport(self.portfolio)
Пример #2
0
class PortfolioReportTest(unittest.TestCase):
    def setUp(self):
        parser = CSVOrderParser("data/SimpleOrdersFile.csv")
        parser.parse()
        orders = parser.get_parsed_orders()
        start_date, end_date = parser.get_dates_range()

        self.market = Market(parser.get_symbols_traded(),start_date,end_date)
        self.portfolio = Portfolio(self.market, 1000000)
        for order in orders:
            self.portfolio.add_order(order)

        self.portfolio.calculate_number_of_shares_held()
        self.portfolio.calculate_portfolio_value()

        self.portfolio_report = PortfolioReport(self.portfolio)

    def test_get_total_return(self):
        self.assertEqual(self.portfolio_report.get_total_return(), -61900)

    def test_get_return(self):
        self.assertEqual(self.portfolio_report.get_return(), -0.1267)
Пример #3
0
class PortfolioReportTest(unittest.TestCase):
    def setUp(self):
        parser = CSVOrderParser("data/SimpleOrdersFile.csv")
        parser.parse()
        orders = parser.get_parsed_orders()
        start_date, end_date = parser.get_dates_range()

        self.market = Market(parser.get_symbols_traded(), start_date, end_date)
        self.portfolio = Portfolio(self.market, 1000000)
        for order in orders:
            self.portfolio.add_order(order)

        self.portfolio.calculate_number_of_shares_held()
        self.portfolio.calculate_portfolio_value()

        self.portfolio_report = PortfolioReport(self.portfolio)

    def test_get_total_return(self):
        self.assertEqual(self.portfolio_report.get_total_return(), -61900)

    def test_get_return(self):
        self.assertEqual(self.portfolio_report.get_return(), -0.1267)
Пример #4
0
    def setUp(self):
        parser = CSVOrderParser("data/SimpleOrdersFile.csv")
        parser.parse()
        orders = parser.get_parsed_orders()
        start_date, end_date = parser.get_dates_range()

        self.market = Market(parser.get_symbols_traded(),start_date,end_date)
        self.portfolio = Portfolio(self.market, 1000000)
        for order in orders:
            self.portfolio.add_order(order)

        self.portfolio.calculate_number_of_shares_held()
        self.portfolio.calculate_portfolio_value()

        self.portfolio_report = PortfolioReport(self.portfolio)
Пример #5
0
from backtesting.Portfolio import Portfolio
from backtesting.Report.PortfolioReport import PortfolioReport
import matplotlib.pyplot as plt
import pylab

#A simple program used to run and play around with
#Portfolio and Market
#Plots value of all holdings

order_parser = CSVOrderParser("test/data/SimpleOrdersFile.csv")
order_parser.parse()

start_date, end_date = order_parser.get_dates_range()
market = Market(order_parser.get_symbols_traded(), start_date, end_date)

portfolio = Portfolio(market, 1000000)

for order in order_parser.get_parsed_orders():
    portfolio.add_order(order)

portfolio.execute()
portfolio.calculate_portfolio_value()

report = PortfolioReport(portfolio)
print report.get_return()

figure = plt.figure()

figure.axes.append(portfolio.holdings_value_sum.plot())

pylab.show()
Пример #6
0
from backtesting.Portfolio import Portfolio
from backtesting.Report.PortfolioReport import PortfolioReport
import matplotlib.pyplot as plt
import pylab

#A simple program used to run and play around with
#Portfolio and Market
#Plots value of all holdings

order_parser = CSVOrderParser("test/data/SimpleOrdersFile.csv")
order_parser.parse()

start_date, end_date = order_parser.get_dates_range()
market = Market(order_parser.get_symbols_traded(),start_date,end_date)

portfolio = Portfolio(market, 1000000)

for order in order_parser.get_parsed_orders():
    portfolio.add_order(order)

portfolio.execute()
portfolio.calculate_portfolio_value()

report = PortfolioReport(portfolio)
print report.get_return()

figure = plt.figure()

figure.axes.append(portfolio.holdings_value_sum.plot())

pylab.show()