-p 0 (plotting) -f orders/orders1.csv (ordersfile) -n -1 (order_id) -c 1000000 (start_value) -t 9.95 (transaction_fee) -m 0.005 (market_impact_factor) -l 0 (do_leverage) -s solution (do_leverage) --- begin student code ------------------------------------------------ 1) orders are (panda frame): Symbol Order Shares Date 2011-01-10 AAPL BUY 1500 2011-01-13 AAPL SELL 1500 2011-01-13 IBM BUY 4000 2011-01-26 GOOG BUY 1000 2011-02-02 XOM SELL 4000 2011-02-10 XOM BUY 4000 2011-03-03 GOOG SELL 1000 2011-03-03 IBM SELL 2200 2011-06-03 IBM SELL 3300 2011-05-03 IBM BUY 1500 2011-06-10 AAPL BUY 1200 2011-08-01 GOOG BUY 55 2011-08-01 GOOG SELL 55 2011-12-20 AAPL SELL 1200: 2) orders are (sorted): Symbol Order Shares Date 2011-01-10 AAPL BUY 1500 2011-01-13 AAPL SELL 1500 2011-01-13 IBM BUY 4000 2011-01-26 GOOG BUY 1000 2011-02-02 XOM SELL 4000 2011-02-10 XOM BUY 4000 2011-03-03 GOOG SELL 1000 2011-03-03 IBM SELL 2200 2011-05-03 IBM BUY 1500 2011-06-03 IBM SELL 3300 2011-06-10 AAPL BUY 1200 2011-08-01 GOOG BUY 55 2011-08-01 GOOG SELL 55 2011-12-20 AAPL SELL 1200 4) 'change' order (list) is: [('2011-01-10', 'AAPL', 1500), ('2011-01-13', 'AAPL', -1500), ('2011-01-13', 'IBM', 4000), ('2011-01-26', 'GOOG', 1000), ('2011-02-02', 'XOM', -4000), ('2011-02-10', 'XOM', 4000), ('2011-03-03', 'GOOG', -1000), ('2011-03-03', 'IBM', -2200), ('2011-05-03', 'IBM', 1500), ('2011-06-03', 'IBM', -3300), ('2011-06-10', 'AAPL', 1200), ('2011-08-01', 'GOOG', 55), ('2011-08-01', 'GOOG', -55), ('2011-12-20', 'AAPL', -1200)] 5) symbols to pull are: ['AAPL', 'AAPL', 'IBM', 'GOOG', 'XOM', 'XOM', 'GOOG', 'IBM', 'IBM', 'IBM', 'AAPL', 'GOOG', 'GOOG', 'AAPL'] 6) symbols (non duplicates) to pull are: ['GOOG', 'AAPL', 'XOM', 'IBM'] 7) dates: DatetimeIndex(['2011-01-10', '2011-01-11', '2011-01-12', '2011-01-13', '2011-01-14', '2011-01-15', '2011-01-16', '2011-01-17', '2011-01-18', '2011-01-19', ... '2011-12-11', '2011-12-12', '2011-12-13', '2011-12-14', '2011-12-15', '2011-12-16', '2011-12-17', '2011-12-18', '2011-12-19', '2011-12-20'], dtype='datetime64[ns]', length=345, freq='D') 8) get adjusting closing prices of symbols date range : SPY GOOG AAPL XOM IBM 2011-01-10 123.19 614.21 340.99 72.02 143.41 2011-01-11 123.63 616.01 340.18 72.56 143.06 2011-01-12 124.74 616.87 342.95 73.41 144.82 2011-01-13 124.54 616.69 344.20 73.54 144.55 2011-01-14 125.44 624.18 346.99 74.62 145.70 2011-01-18 125.65 639.63 339.19 75.45 146.33 2011-01-19 124.42 631.75 337.39 75.00 151.22 2011-01-20 124.26 626.77 331.26 74.53 151.33 2011-01-21 124.54 611.83 325.32 75.71 151.04 2011-01-24 125.25 611.08 336.01 75.34 155.05 2011-01-25 125.31 619.91 339.94 75.43 156.81 2011-01-26 125.80 616.50 342.38 76.37 156.42 2011-01-27 126.11 616.79 341.74 76.58 156.45 2011-01-28 123.91 600.99 334.66 75.72 154.64 2011-01-31 124.84 600.36 337.87 77.34 157.35 2011-02-01 126.84 611.04 343.55 80.44 158.87 2011-02-02 126.60 612.00 342.85 79.96 158.62 2011-02-03 126.88 610.15 341.97 79.99 158.84 2011-02-04 127.24 610.98 345.02 79.84 159.30 2011-02-07 128.03 614.29 350.38 80.46 160.09 2011-02-08 128.61 618.38 353.68 79.97 161.93 2011-02-09 128.32 616.50 356.63 79.55 160.56 2011-02-10 128.37 616.44 353.02 80.18 160.02 2011-02-11 129.14 624.50 355.32 79.81 159.78 2011-02-14 129.45 628.15 357.64 81.83 159.17 2011-02-15 129.04 624.15 358.36 79.96 158.80 2011-02-16 129.85 624.22 361.58 80.65 159.34 2011-02-17 130.24 625.26 356.77 80.83 160.16 2011-02-18 130.51 630.08 349.06 81.43 160.75 2011-02-22 127.90 610.21 337.16 82.34 157.93 ... ... ... ... ... ... 2011-11-08 125.87 612.34 404.49 78.27 184.96 2011-11-09 121.22 600.95 393.59 75.95 180.01 2011-11-10 122.36 595.08 383.57 77.23 181.10 2011-11-11 124.67 608.35 382.98 78.24 185.08 2011-11-14 123.49 613.00 377.64 77.49 185.05 2011-11-15 124.10 616.56 387.17 77.62 186.44 2011-11-16 122.13 611.47 383.13 76.79 184.33 2011-11-17 120.19 600.87 375.80 76.41 183.45 2011-11-18 120.06 594.88 373.34 76.45 182.97 2011-11-21 117.78 580.94 367.43 75.48 179.26 2011-11-22 117.31 580.00 374.90 74.61 179.09 2011-11-23 114.73 570.11 365.42 73.19 175.77 2011-11-25 114.51 563.00 362.02 72.52 174.89 2011-11-28 117.83 588.19 374.51 74.43 179.98 2011-11-29 118.16 582.93 371.60 75.50 178.72 2011-11-30 123.02 599.39 380.57 78.94 185.70 2011-12-01 123.00 613.77 386.27 78.30 187.13 2011-12-02 122.89 620.36 388.03 78.30 187.34 2011-12-05 124.23 625.65 391.33 78.95 188.50 2011-12-06 124.27 623.77 389.28 79.31 190.58 2011-12-07 124.74 623.39 387.43 79.57 191.67 2011-12-08 122.00 616.05 388.99 78.38 189.23 2011-12-09 124.07 627.42 391.94 79.82 192.18 2011-12-12 122.26 625.39 390.16 78.56 189.83 2011-12-13 121.11 625.63 387.15 79.03 188.81 2011-12-14 119.82 618.07 378.56 77.96 186.41 2011-12-15 120.26 619.54 377.32 78.54 185.18 2011-12-16 120.44 625.96 379.39 78.67 181.32 2011-12-19 119.15 621.83 380.58 78.05 180.65 2011-12-20 122.75 630.37 394.26 80.47 184.95 [240 rows x 5 columns] 9) extract SPY from prices : GOOG AAPL XOM IBM 2011-01-10 614.21 340.99 72.02 143.41 2011-01-11 616.01 340.18 72.56 143.06 2011-01-12 616.87 342.95 73.41 144.82 2011-01-13 616.69 344.20 73.54 144.55 2011-01-14 624.18 346.99 74.62 145.70 2011-01-18 639.63 339.19 75.45 146.33 2011-01-19 631.75 337.39 75.00 151.22 2011-01-20 626.77 331.26 74.53 151.33 2011-01-21 611.83 325.32 75.71 151.04 2011-01-24 611.08 336.01 75.34 155.05 2011-01-25 619.91 339.94 75.43 156.81 2011-01-26 616.50 342.38 76.37 156.42 2011-01-27 616.79 341.74 76.58 156.45 2011-01-28 600.99 334.66 75.72 154.64 2011-01-31 600.36 337.87 77.34 157.35 2011-02-01 611.04 343.55 80.44 158.87 2011-02-02 612.00 342.85 79.96 158.62 2011-02-03 610.15 341.97 79.99 158.84 2011-02-04 610.98 345.02 79.84 159.30 2011-02-07 614.29 350.38 80.46 160.09 2011-02-08 618.38 353.68 79.97 161.93 2011-02-09 616.50 356.63 79.55 160.56 2011-02-10 616.44 353.02 80.18 160.02 2011-02-11 624.50 355.32 79.81 159.78 2011-02-14 628.15 357.64 81.83 159.17 2011-02-15 624.15 358.36 79.96 158.80 2011-02-16 624.22 361.58 80.65 159.34 2011-02-17 625.26 356.77 80.83 160.16 2011-02-18 630.08 349.06 81.43 160.75 2011-02-22 610.21 337.16 82.34 157.93 ... ... ... ... ... 2011-11-08 612.34 404.49 78.27 184.96 2011-11-09 600.95 393.59 75.95 180.01 2011-11-10 595.08 383.57 77.23 181.10 2011-11-11 608.35 382.98 78.24 185.08 2011-11-14 613.00 377.64 77.49 185.05 2011-11-15 616.56 387.17 77.62 186.44 2011-11-16 611.47 383.13 76.79 184.33 2011-11-17 600.87 375.80 76.41 183.45 2011-11-18 594.88 373.34 76.45 182.97 2011-11-21 580.94 367.43 75.48 179.26 2011-11-22 580.00 374.90 74.61 179.09 2011-11-23 570.11 365.42 73.19 175.77 2011-11-25 563.00 362.02 72.52 174.89 2011-11-28 588.19 374.51 74.43 179.98 2011-11-29 582.93 371.60 75.50 178.72 2011-11-30 599.39 380.57 78.94 185.70 2011-12-01 613.77 386.27 78.30 187.13 2011-12-02 620.36 388.03 78.30 187.34 2011-12-05 625.65 391.33 78.95 188.50 2011-12-06 623.77 389.28 79.31 190.58 2011-12-07 623.39 387.43 79.57 191.67 2011-12-08 616.05 388.99 78.38 189.23 2011-12-09 627.42 391.94 79.82 192.18 2011-12-12 625.39 390.16 78.56 189.83 2011-12-13 625.63 387.15 79.03 188.81 2011-12-14 618.07 378.56 77.96 186.41 2011-12-15 619.54 377.32 78.54 185.18 2011-12-16 625.96 379.39 78.67 181.32 2011-12-19 621.83 380.58 78.05 180.65 2011-12-20 630.37 394.26 80.47 184.95 [240 rows x 4 columns] 10) address the NaNs : GOOG AAPL XOM IBM 2011-01-10 614.21 340.99 72.02 143.41 2011-01-11 616.01 340.18 72.56 143.06 2011-01-12 616.87 342.95 73.41 144.82 2011-01-13 616.69 344.20 73.54 144.55 2011-01-14 624.18 346.99 74.62 145.70 2011-01-18 639.63 339.19 75.45 146.33 2011-01-19 631.75 337.39 75.00 151.22 2011-01-20 626.77 331.26 74.53 151.33 2011-01-21 611.83 325.32 75.71 151.04 2011-01-24 611.08 336.01 75.34 155.05 2011-01-25 619.91 339.94 75.43 156.81 2011-01-26 616.50 342.38 76.37 156.42 2011-01-27 616.79 341.74 76.58 156.45 2011-01-28 600.99 334.66 75.72 154.64 2011-01-31 600.36 337.87 77.34 157.35 2011-02-01 611.04 343.55 80.44 158.87 2011-02-02 612.00 342.85 79.96 158.62 2011-02-03 610.15 341.97 79.99 158.84 2011-02-04 610.98 345.02 79.84 159.30 2011-02-07 614.29 350.38 80.46 160.09 2011-02-08 618.38 353.68 79.97 161.93 2011-02-09 616.50 356.63 79.55 160.56 2011-02-10 616.44 353.02 80.18 160.02 2011-02-11 624.50 355.32 79.81 159.78 2011-02-14 628.15 357.64 81.83 159.17 2011-02-15 624.15 358.36 79.96 158.80 2011-02-16 624.22 361.58 80.65 159.34 2011-02-17 625.26 356.77 80.83 160.16 2011-02-18 630.08 349.06 81.43 160.75 2011-02-22 610.21 337.16 82.34 157.93 ... ... ... ... ... 2011-11-08 612.34 404.49 78.27 184.96 2011-11-09 600.95 393.59 75.95 180.01 2011-11-10 595.08 383.57 77.23 181.10 2011-11-11 608.35 382.98 78.24 185.08 2011-11-14 613.00 377.64 77.49 185.05 2011-11-15 616.56 387.17 77.62 186.44 2011-11-16 611.47 383.13 76.79 184.33 2011-11-17 600.87 375.80 76.41 183.45 2011-11-18 594.88 373.34 76.45 182.97 2011-11-21 580.94 367.43 75.48 179.26 2011-11-22 580.00 374.90 74.61 179.09 2011-11-23 570.11 365.42 73.19 175.77 2011-11-25 563.00 362.02 72.52 174.89 2011-11-28 588.19 374.51 74.43 179.98 2011-11-29 582.93 371.60 75.50 178.72 2011-11-30 599.39 380.57 78.94 185.70 2011-12-01 613.77 386.27 78.30 187.13 2011-12-02 620.36 388.03 78.30 187.34 2011-12-05 625.65 391.33 78.95 188.50 2011-12-06 623.77 389.28 79.31 190.58 2011-12-07 623.39 387.43 79.57 191.67 2011-12-08 616.05 388.99 78.38 189.23 2011-12-09 627.42 391.94 79.82 192.18 2011-12-12 625.39 390.16 78.56 189.83 2011-12-13 625.63 387.15 79.03 188.81 2011-12-14 618.07 378.56 77.96 186.41 2011-12-15 619.54 377.32 78.54 185.18 2011-12-16 625.96 379.39 78.67 181.32 2011-12-19 621.83 380.58 78.05 180.65 2011-12-20 630.37 394.26 80.47 184.95 [240 rows x 4 columns] 11) add cash column (value of cash $1 is worth $1) to prices : GOOG AAPL XOM IBM _CASH 2011-01-10 614.21 340.99 72.02 143.41 1.0 2011-01-11 616.01 340.18 72.56 143.06 1.0 2011-01-12 616.87 342.95 73.41 144.82 1.0 2011-01-13 616.69 344.20 73.54 144.55 1.0 2011-01-14 624.18 346.99 74.62 145.70 1.0 2011-01-18 639.63 339.19 75.45 146.33 1.0 2011-01-19 631.75 337.39 75.00 151.22 1.0 2011-01-20 626.77 331.26 74.53 151.33 1.0 2011-01-21 611.83 325.32 75.71 151.04 1.0 2011-01-24 611.08 336.01 75.34 155.05 1.0 2011-01-25 619.91 339.94 75.43 156.81 1.0 2011-01-26 616.50 342.38 76.37 156.42 1.0 2011-01-27 616.79 341.74 76.58 156.45 1.0 2011-01-28 600.99 334.66 75.72 154.64 1.0 2011-01-31 600.36 337.87 77.34 157.35 1.0 2011-02-01 611.04 343.55 80.44 158.87 1.0 2011-02-02 612.00 342.85 79.96 158.62 1.0 2011-02-03 610.15 341.97 79.99 158.84 1.0 2011-02-04 610.98 345.02 79.84 159.30 1.0 2011-02-07 614.29 350.38 80.46 160.09 1.0 2011-02-08 618.38 353.68 79.97 161.93 1.0 2011-02-09 616.50 356.63 79.55 160.56 1.0 2011-02-10 616.44 353.02 80.18 160.02 1.0 2011-02-11 624.50 355.32 79.81 159.78 1.0 2011-02-14 628.15 357.64 81.83 159.17 1.0 2011-02-15 624.15 358.36 79.96 158.80 1.0 2011-02-16 624.22 361.58 80.65 159.34 1.0 2011-02-17 625.26 356.77 80.83 160.16 1.0 2011-02-18 630.08 349.06 81.43 160.75 1.0 2011-02-22 610.21 337.16 82.34 157.93 1.0 ... ... ... ... ... ... 2011-11-08 612.34 404.49 78.27 184.96 1.0 2011-11-09 600.95 393.59 75.95 180.01 1.0 2011-11-10 595.08 383.57 77.23 181.10 1.0 2011-11-11 608.35 382.98 78.24 185.08 1.0 2011-11-14 613.00 377.64 77.49 185.05 1.0 2011-11-15 616.56 387.17 77.62 186.44 1.0 2011-11-16 611.47 383.13 76.79 184.33 1.0 2011-11-17 600.87 375.80 76.41 183.45 1.0 2011-11-18 594.88 373.34 76.45 182.97 1.0 2011-11-21 580.94 367.43 75.48 179.26 1.0 2011-11-22 580.00 374.90 74.61 179.09 1.0 2011-11-23 570.11 365.42 73.19 175.77 1.0 2011-11-25 563.00 362.02 72.52 174.89 1.0 2011-11-28 588.19 374.51 74.43 179.98 1.0 2011-11-29 582.93 371.60 75.50 178.72 1.0 2011-11-30 599.39 380.57 78.94 185.70 1.0 2011-12-01 613.77 386.27 78.30 187.13 1.0 2011-12-02 620.36 388.03 78.30 187.34 1.0 2011-12-05 625.65 391.33 78.95 188.50 1.0 2011-12-06 623.77 389.28 79.31 190.58 1.0 2011-12-07 623.39 387.43 79.57 191.67 1.0 2011-12-08 616.05 388.99 78.38 189.23 1.0 2011-12-09 627.42 391.94 79.82 192.18 1.0 2011-12-12 625.39 390.16 78.56 189.83 1.0 2011-12-13 625.63 387.15 79.03 188.81 1.0 2011-12-14 618.07 378.56 77.96 186.41 1.0 2011-12-15 619.54 377.32 78.54 185.18 1.0 2011-12-16 625.96 379.39 78.67 181.32 1.0 2011-12-19 621.83 380.58 78.05 180.65 1.0 2011-12-20 630.37 394.26 80.47 184.95 1.0 [240 rows x 5 columns] 12) create change frame with index and symbols : GOOG AAPL XOM IBM 2011-01-10 NaN NaN NaN NaN 2011-01-11 NaN NaN NaN NaN 2011-01-12 NaN NaN NaN NaN 2011-01-13 NaN NaN NaN NaN 2011-01-14 NaN NaN NaN NaN 2011-01-18 NaN NaN NaN NaN 2011-01-19 NaN NaN NaN NaN 2011-01-20 NaN NaN NaN NaN 2011-01-21 NaN NaN NaN NaN 2011-01-24 NaN NaN NaN NaN 2011-01-25 NaN NaN NaN NaN 2011-01-26 NaN NaN NaN NaN 2011-01-27 NaN NaN NaN NaN 2011-01-28 NaN NaN NaN NaN 2011-01-31 NaN NaN NaN NaN 2011-02-01 NaN NaN NaN NaN 2011-02-02 NaN NaN NaN NaN 2011-02-03 NaN NaN NaN NaN 2011-02-04 NaN NaN NaN NaN 2011-02-07 NaN NaN NaN NaN 2011-02-08 NaN NaN NaN NaN 2011-02-09 NaN NaN NaN NaN 2011-02-10 NaN NaN NaN NaN 2011-02-11 NaN NaN NaN NaN 2011-02-14 NaN NaN NaN NaN 2011-02-15 NaN NaN NaN NaN 2011-02-16 NaN NaN NaN NaN 2011-02-17 NaN NaN NaN NaN 2011-02-18 NaN NaN NaN NaN 2011-02-22 NaN NaN NaN NaN ... ... ... ... ... 2011-11-08 NaN NaN NaN NaN 2011-11-09 NaN NaN NaN NaN 2011-11-10 NaN NaN NaN NaN 2011-11-11 NaN NaN NaN NaN 2011-11-14 NaN NaN NaN NaN 2011-11-15 NaN NaN NaN NaN 2011-11-16 NaN NaN NaN NaN 2011-11-17 NaN NaN NaN NaN 2011-11-18 NaN NaN NaN NaN 2011-11-21 NaN NaN NaN NaN 2011-11-22 NaN NaN NaN NaN 2011-11-23 NaN NaN NaN NaN 2011-11-25 NaN NaN NaN NaN 2011-11-28 NaN NaN NaN NaN 2011-11-29 NaN NaN NaN NaN 2011-11-30 NaN NaN NaN NaN 2011-12-01 NaN NaN NaN NaN 2011-12-02 NaN NaN NaN NaN 2011-12-05 NaN NaN NaN NaN 2011-12-06 NaN NaN NaN NaN 2011-12-07 NaN NaN NaN NaN 2011-12-08 NaN NaN NaN NaN 2011-12-09 NaN NaN NaN NaN 2011-12-12 NaN NaN NaN NaN 2011-12-13 NaN NaN NaN NaN 2011-12-14 NaN NaN NaN NaN 2011-12-15 NaN NaN NaN NaN 2011-12-16 NaN NaN NaN NaN 2011-12-19 NaN NaN NaN NaN 2011-12-20 NaN NaN NaN NaN [240 rows x 4 columns] 13) fill changes with zeros : GOOG AAPL XOM IBM 2011-01-10 0 0 0 0 2011-01-11 0 0 0 0 2011-01-12 0 0 0 0 2011-01-13 0 0 0 0 2011-01-14 0 0 0 0 2011-01-18 0 0 0 0 2011-01-19 0 0 0 0 2011-01-20 0 0 0 0 2011-01-21 0 0 0 0 2011-01-24 0 0 0 0 2011-01-25 0 0 0 0 2011-01-26 0 0 0 0 2011-01-27 0 0 0 0 2011-01-28 0 0 0 0 2011-01-31 0 0 0 0 2011-02-01 0 0 0 0 2011-02-02 0 0 0 0 2011-02-03 0 0 0 0 2011-02-04 0 0 0 0 2011-02-07 0 0 0 0 2011-02-08 0 0 0 0 2011-02-09 0 0 0 0 2011-02-10 0 0 0 0 2011-02-11 0 0 0 0 2011-02-14 0 0 0 0 2011-02-15 0 0 0 0 2011-02-16 0 0 0 0 2011-02-17 0 0 0 0 2011-02-18 0 0 0 0 2011-02-22 0 0 0 0 ... ... ... ... ... 2011-11-08 0 0 0 0 2011-11-09 0 0 0 0 2011-11-10 0 0 0 0 2011-11-11 0 0 0 0 2011-11-14 0 0 0 0 2011-11-15 0 0 0 0 2011-11-16 0 0 0 0 2011-11-17 0 0 0 0 2011-11-18 0 0 0 0 2011-11-21 0 0 0 0 2011-11-22 0 0 0 0 2011-11-23 0 0 0 0 2011-11-25 0 0 0 0 2011-11-28 0 0 0 0 2011-11-29 0 0 0 0 2011-11-30 0 0 0 0 2011-12-01 0 0 0 0 2011-12-02 0 0 0 0 2011-12-05 0 0 0 0 2011-12-06 0 0 0 0 2011-12-07 0 0 0 0 2011-12-08 0 0 0 0 2011-12-09 0 0 0 0 2011-12-12 0 0 0 0 2011-12-13 0 0 0 0 2011-12-14 0 0 0 0 2011-12-15 0 0 0 0 2011-12-16 0 0 0 0 2011-12-19 0 0 0 0 2011-12-20 0 0 0 0 [240 rows x 4 columns] 14) A separae cash series index by prices with zeros: 2011-01-10 0.0 2011-01-11 0.0 2011-01-12 0.0 2011-01-13 0.0 2011-01-14 0.0 2011-01-18 0.0 2011-01-19 0.0 2011-01-20 0.0 2011-01-21 0.0 2011-01-24 0.0 2011-01-25 0.0 2011-01-26 0.0 2011-01-27 0.0 2011-01-28 0.0 2011-01-31 0.0 2011-02-01 0.0 2011-02-02 0.0 2011-02-03 0.0 2011-02-04 0.0 2011-02-07 0.0 2011-02-08 0.0 2011-02-09 0.0 2011-02-10 0.0 2011-02-11 0.0 2011-02-14 0.0 2011-02-15 0.0 2011-02-16 0.0 2011-02-17 0.0 2011-02-18 0.0 2011-02-22 0.0 ... 2011-11-08 0.0 2011-11-09 0.0 2011-11-10 0.0 2011-11-11 0.0 2011-11-14 0.0 2011-11-15 0.0 2011-11-16 0.0 2011-11-17 0.0 2011-11-18 0.0 2011-11-21 0.0 2011-11-22 0.0 2011-11-23 0.0 2011-11-25 0.0 2011-11-28 0.0 2011-11-29 0.0 2011-11-30 0.0 2011-12-01 0.0 2011-12-02 0.0 2011-12-05 0.0 2011-12-06 0.0 2011-12-07 0.0 2011-12-08 0.0 2011-12-09 0.0 2011-12-12 0.0 2011-12-13 0.0 2011-12-14 0.0 2011-12-15 0.0 2011-12-16 0.0 2011-12-19 0.0 2011-12-20 0.0 Length: 240, dtype: float64 15) first value in cash series is amount that we start out with: 2011-01-10 1000000.0 2011-01-11 0.0 2011-01-12 0.0 2011-01-13 0.0 2011-01-14 0.0 2011-01-18 0.0 2011-01-19 0.0 2011-01-20 0.0 2011-01-21 0.0 2011-01-24 0.0 2011-01-25 0.0 2011-01-26 0.0 2011-01-27 0.0 2011-01-28 0.0 2011-01-31 0.0 2011-02-01 0.0 2011-02-02 0.0 2011-02-03 0.0 2011-02-04 0.0 2011-02-07 0.0 2011-02-08 0.0 2011-02-09 0.0 2011-02-10 0.0 2011-02-11 0.0 2011-02-14 0.0 2011-02-15 0.0 2011-02-16 0.0 2011-02-17 0.0 2011-02-18 0.0 2011-02-22 0.0 ... 2011-11-08 0.0 2011-11-09 0.0 2011-11-10 0.0 2011-11-11 0.0 2011-11-14 0.0 2011-11-15 0.0 2011-11-16 0.0 2011-11-17 0.0 2011-11-18 0.0 2011-11-21 0.0 2011-11-22 0.0 2011-11-23 0.0 2011-11-25 0.0 2011-11-28 0.0 2011-11-29 0.0 2011-11-30 0.0 2011-12-01 0.0 2011-12-02 0.0 2011-12-05 0.0 2011-12-06 0.0 2011-12-07 0.0 2011-12-08 0.0 2011-12-09 0.0 2011-12-12 0.0 2011-12-13 0.0 2011-12-14 0.0 2011-12-15 0.0 2011-12-16 0.0 2011-12-19 0.0 2011-12-20 0.0 Length: 240, dtype: float64 16) iterate through sorted series of orders and execute the orders impacts our cash series, and the change frame 2011-01-10: BUYING 1500 AAPL Other costs +2,567.3750 price +511,485.0000 @ +340.9900 Total cash CHANGE is: -514,052.3750 Total cash available: +485,947.6250 2011-01-13: SELLING -1500 AAPL Other costs +2,591.4500 price -516,300.0000 @ +344.2000 Total cash CHANGE is: +513,708.5500 Total cash available: +999,656.1750 2011-01-13: BUYING 4000 IBM Other costs +2,900.9500 price +578,200.0000 @ +144.5500 Total cash CHANGE is: -581,100.9500 Total cash available: +418,555.2250 2011-01-26: BUYING 1000 GOOG Other costs +3,092.4500 price +616,500.0000 @ +616.5000 Total cash CHANGE is: -619,592.4500 Total cash available: -201,037.2250 2011-02-02: SELLING -4000 XOM Other costs +1,609.1500 price -319,840.0000 @ +79.9600 Total cash CHANGE is: +318,230.8500 Total cash available: +117,193.6250 2011-02-10: BUYING 4000 XOM Other costs +1,613.5500 price +320,720.0000 @ +80.1800 Total cash CHANGE is: -322,333.5500 Total cash available: -205,139.9250 2011-03-03: SELLING -1000 GOOG Other costs +3,057.7500 price -609,560.0000 @ +609.5600 Total cash CHANGE is: +606,502.2500 Total cash available: +401,362.3250 2011-03-03: SELLING -2200 IBM Other costs +1,763.5700 price -350,724.0000 @ +159.4200 Total cash CHANGE is: +348,960.4300 Total cash available: +750,322.7550 2011-05-03: BUYING 1500 IBM Other costs +1,274.3000 price +252,870.0000 @ +168.5800 Total cash CHANGE is: -254,144.3000 Total cash available: +496,178.4550 2011-06-03: SELLING -3300 IBM Other costs +2,677.5050 price -533,511.0000 @ +161.6700 Total cash CHANGE is: +530,833.4950 Total cash available: +1,027,011.9500 2011-06-10: BUYING 1200 AAPL Other costs +1,957.0100 price +389,412.0000 @ +324.5100 Total cash CHANGE is: -391,369.0100 Total cash available: +635,642.9400 2011-08-01: BUYING 55 GOOG Other costs +176.8120 price +33,372.3500 @ +606.7700 Total cash CHANGE is: -33,549.1620 Total cash available: +602,093.7780 2011-08-01: SELLING -55 GOOG Other costs +176.8120 price -33,372.3500 @ +606.7700 Total cash CHANGE is: +33,195.5380 Total cash available: +635,289.3160 2011-12-20: SELLING -1200 AAPL Other costs +2,375.5100 price -473,112.0000 @ +394.2600 Total cash CHANGE is: +470,736.4900 Total cash available: +1,106,025.8060 16) append cash to changes: GOOG AAPL XOM IBM _CASH 2011-01-10 0 1500 0 0 485947.625 2011-01-11 0 0 0 0 0.000 2011-01-12 0 0 0 0 0.000 2011-01-13 0 -1500 0 4000 -67392.400 2011-01-14 0 0 0 0 0.000 2011-01-18 0 0 0 0 0.000 2011-01-19 0 0 0 0 0.000 2011-01-20 0 0 0 0 0.000 2011-01-21 0 0 0 0 0.000 2011-01-24 0 0 0 0 0.000 2011-01-25 0 0 0 0 0.000 2011-01-26 1000 0 0 0 -619592.450 2011-01-27 0 0 0 0 0.000 2011-01-28 0 0 0 0 0.000 2011-01-31 0 0 0 0 0.000 2011-02-01 0 0 0 0 0.000 2011-02-02 0 0 -4000 0 318230.850 2011-02-03 0 0 0 0 0.000 2011-02-04 0 0 0 0 0.000 2011-02-07 0 0 0 0 0.000 2011-02-08 0 0 0 0 0.000 2011-02-09 0 0 0 0 0.000 2011-02-10 0 0 4000 0 -322333.550 2011-02-11 0 0 0 0 0.000 2011-02-14 0 0 0 0 0.000 2011-02-15 0 0 0 0 0.000 2011-02-16 0 0 0 0 0.000 2011-02-17 0 0 0 0 0.000 2011-02-18 0 0 0 0 0.000 2011-02-22 0 0 0 0 0.000 ... ... ... ... ... ... 2011-11-08 0 0 0 0 0.000 2011-11-09 0 0 0 0 0.000 2011-11-10 0 0 0 0 0.000 2011-11-11 0 0 0 0 0.000 2011-11-14 0 0 0 0 0.000 2011-11-15 0 0 0 0 0.000 2011-11-16 0 0 0 0 0.000 2011-11-17 0 0 0 0 0.000 2011-11-18 0 0 0 0 0.000 2011-11-21 0 0 0 0 0.000 2011-11-22 0 0 0 0 0.000 2011-11-23 0 0 0 0 0.000 2011-11-25 0 0 0 0 0.000 2011-11-28 0 0 0 0 0.000 2011-11-29 0 0 0 0 0.000 2011-11-30 0 0 0 0 0.000 2011-12-01 0 0 0 0 0.000 2011-12-02 0 0 0 0 0.000 2011-12-05 0 0 0 0 0.000 2011-12-06 0 0 0 0 0.000 2011-12-07 0 0 0 0 0.000 2011-12-08 0 0 0 0 0.000 2011-12-09 0 0 0 0 0.000 2011-12-12 0 0 0 0 0.000 2011-12-13 0 0 0 0 0.000 2011-12-14 0 0 0 0 0.000 2011-12-15 0 0 0 0 0.000 2011-12-16 0 0 0 0 0.000 2011-12-19 0 0 0 0 0.000 2011-12-20 0 -1200 0 0 470736.490 [240 rows x 5 columns] 17) compute the holding everyday (same as) cumulative sum (cumsum): GOOG AAPL XOM IBM _CASH 2011-01-10 0.0 1500.0 0.0 0.0 485947.625 2011-01-11 0.0 1500.0 0.0 0.0 485947.625 2011-01-12 0.0 1500.0 0.0 0.0 485947.625 2011-01-13 0.0 0.0 0.0 4000.0 418555.225 2011-01-14 0.0 0.0 0.0 4000.0 418555.225 2011-01-18 0.0 0.0 0.0 4000.0 418555.225 2011-01-19 0.0 0.0 0.0 4000.0 418555.225 2011-01-20 0.0 0.0 0.0 4000.0 418555.225 2011-01-21 0.0 0.0 0.0 4000.0 418555.225 2011-01-24 0.0 0.0 0.0 4000.0 418555.225 2011-01-25 0.0 0.0 0.0 4000.0 418555.225 2011-01-26 1000.0 0.0 0.0 4000.0 -201037.225 2011-01-27 1000.0 0.0 0.0 4000.0 -201037.225 2011-01-28 1000.0 0.0 0.0 4000.0 -201037.225 2011-01-31 1000.0 0.0 0.0 4000.0 -201037.225 2011-02-01 1000.0 0.0 0.0 4000.0 -201037.225 2011-02-02 1000.0 0.0 -4000.0 4000.0 117193.625 2011-02-03 1000.0 0.0 -4000.0 4000.0 117193.625 2011-02-04 1000.0 0.0 -4000.0 4000.0 117193.625 2011-02-07 1000.0 0.0 -4000.0 4000.0 117193.625 2011-02-08 1000.0 0.0 -4000.0 4000.0 117193.625 2011-02-09 1000.0 0.0 -4000.0 4000.0 117193.625 2011-02-10 1000.0 0.0 0.0 4000.0 -205139.925 2011-02-11 1000.0 0.0 0.0 4000.0 -205139.925 2011-02-14 1000.0 0.0 0.0 4000.0 -205139.925 2011-02-15 1000.0 0.0 0.0 4000.0 -205139.925 2011-02-16 1000.0 0.0 0.0 4000.0 -205139.925 2011-02-17 1000.0 0.0 0.0 4000.0 -205139.925 2011-02-18 1000.0 0.0 0.0 4000.0 -205139.925 2011-02-22 1000.0 0.0 0.0 4000.0 -205139.925 ... ... ... ... ... ... 2011-11-08 0.0 1200.0 0.0 0.0 635289.316 2011-11-09 0.0 1200.0 0.0 0.0 635289.316 2011-11-10 0.0 1200.0 0.0 0.0 635289.316 2011-11-11 0.0 1200.0 0.0 0.0 635289.316 2011-11-14 0.0 1200.0 0.0 0.0 635289.316 2011-11-15 0.0 1200.0 0.0 0.0 635289.316 2011-11-16 0.0 1200.0 0.0 0.0 635289.316 2011-11-17 0.0 1200.0 0.0 0.0 635289.316 2011-11-18 0.0 1200.0 0.0 0.0 635289.316 2011-11-21 0.0 1200.0 0.0 0.0 635289.316 2011-11-22 0.0 1200.0 0.0 0.0 635289.316 2011-11-23 0.0 1200.0 0.0 0.0 635289.316 2011-11-25 0.0 1200.0 0.0 0.0 635289.316 2011-11-28 0.0 1200.0 0.0 0.0 635289.316 2011-11-29 0.0 1200.0 0.0 0.0 635289.316 2011-11-30 0.0 1200.0 0.0 0.0 635289.316 2011-12-01 0.0 1200.0 0.0 0.0 635289.316 2011-12-02 0.0 1200.0 0.0 0.0 635289.316 2011-12-05 0.0 1200.0 0.0 0.0 635289.316 2011-12-06 0.0 1200.0 0.0 0.0 635289.316 2011-12-07 0.0 1200.0 0.0 0.0 635289.316 2011-12-08 0.0 1200.0 0.0 0.0 635289.316 2011-12-09 0.0 1200.0 0.0 0.0 635289.316 2011-12-12 0.0 1200.0 0.0 0.0 635289.316 2011-12-13 0.0 1200.0 0.0 0.0 635289.316 2011-12-14 0.0 1200.0 0.0 0.0 635289.316 2011-12-15 0.0 1200.0 0.0 0.0 635289.316 2011-12-16 0.0 1200.0 0.0 0.0 635289.316 2011-12-19 0.0 1200.0 0.0 0.0 635289.316 2011-12-20 0.0 0.0 0.0 0.0 1106025.806 [240 rows x 5 columns] 18) compute the portfolue value (multiply * holdings): GOOG AAPL XOM IBM _CASH 2011-01-10 0.0 511485.0 0.0 0.0 485947.625 2011-01-11 0.0 510270.0 0.0 0.0 485947.625 2011-01-12 0.0 514425.0 0.0 0.0 485947.625 2011-01-13 0.0 0.0 0.0 578200.0 418555.225 2011-01-14 0.0 0.0 0.0 582800.0 418555.225 2011-01-18 0.0 0.0 0.0 585320.0 418555.225 2011-01-19 0.0 0.0 0.0 604880.0 418555.225 2011-01-20 0.0 0.0 0.0 605320.0 418555.225 2011-01-21 0.0 0.0 0.0 604160.0 418555.225 2011-01-24 0.0 0.0 0.0 620200.0 418555.225 2011-01-25 0.0 0.0 0.0 627240.0 418555.225 2011-01-26 616500.0 0.0 0.0 625680.0 -201037.225 2011-01-27 616790.0 0.0 0.0 625800.0 -201037.225 2011-01-28 600990.0 0.0 0.0 618560.0 -201037.225 2011-01-31 600360.0 0.0 0.0 629400.0 -201037.225 2011-02-01 611040.0 0.0 0.0 635480.0 -201037.225 2011-02-02 612000.0 0.0 -319840.0 634480.0 117193.625 2011-02-03 610150.0 0.0 -319960.0 635360.0 117193.625 2011-02-04 610980.0 0.0 -319360.0 637200.0 117193.625 2011-02-07 614290.0 0.0 -321840.0 640360.0 117193.625 2011-02-08 618380.0 0.0 -319880.0 647720.0 117193.625 2011-02-09 616500.0 0.0 -318200.0 642240.0 117193.625 2011-02-10 616440.0 0.0 0.0 640080.0 -205139.925 2011-02-11 624500.0 0.0 0.0 639120.0 -205139.925 2011-02-14 628150.0 0.0 0.0 636680.0 -205139.925 2011-02-15 624150.0 0.0 0.0 635200.0 -205139.925 2011-02-16 624220.0 0.0 0.0 637360.0 -205139.925 2011-02-17 625260.0 0.0 0.0 640640.0 -205139.925 2011-02-18 630080.0 0.0 0.0 643000.0 -205139.925 2011-02-22 610210.0 0.0 0.0 631720.0 -205139.925 ... ... ... ... ... ... 2011-11-08 0.0 485388.0 0.0 0.0 635289.316 2011-11-09 0.0 472308.0 0.0 0.0 635289.316 2011-11-10 0.0 460284.0 0.0 0.0 635289.316 2011-11-11 0.0 459576.0 0.0 0.0 635289.316 2011-11-14 0.0 453168.0 0.0 0.0 635289.316 2011-11-15 0.0 464604.0 0.0 0.0 635289.316 2011-11-16 0.0 459756.0 0.0 0.0 635289.316 2011-11-17 0.0 450960.0 0.0 0.0 635289.316 2011-11-18 0.0 448008.0 0.0 0.0 635289.316 2011-11-21 0.0 440916.0 0.0 0.0 635289.316 2011-11-22 0.0 449880.0 0.0 0.0 635289.316 2011-11-23 0.0 438504.0 0.0 0.0 635289.316 2011-11-25 0.0 434424.0 0.0 0.0 635289.316 2011-11-28 0.0 449412.0 0.0 0.0 635289.316 2011-11-29 0.0 445920.0 0.0 0.0 635289.316 2011-11-30 0.0 456684.0 0.0 0.0 635289.316 2011-12-01 0.0 463524.0 0.0 0.0 635289.316 2011-12-02 0.0 465636.0 0.0 0.0 635289.316 2011-12-05 0.0 469596.0 0.0 0.0 635289.316 2011-12-06 0.0 467136.0 0.0 0.0 635289.316 2011-12-07 0.0 464916.0 0.0 0.0 635289.316 2011-12-08 0.0 466788.0 0.0 0.0 635289.316 2011-12-09 0.0 470328.0 0.0 0.0 635289.316 2011-12-12 0.0 468192.0 0.0 0.0 635289.316 2011-12-13 0.0 464580.0 0.0 0.0 635289.316 2011-12-14 0.0 454272.0 0.0 0.0 635289.316 2011-12-15 0.0 452784.0 0.0 0.0 635289.316 2011-12-16 0.0 455268.0 0.0 0.0 635289.316 2011-12-19 0.0 456696.0 0.0 0.0 635289.316 2011-12-20 0.0 0.0 0.0 0.0 1106025.806 [240 rows x 5 columns] 19) sum the rows you got the value of portfolio!: 2011-01-10 997432.625 2011-01-11 996217.625 2011-01-12 1000372.625 2011-01-13 996755.225 2011-01-14 1001355.225 2011-01-18 1003875.225 2011-01-19 1023435.225 2011-01-20 1023875.225 2011-01-21 1022715.225 2011-01-24 1038755.225 2011-01-25 1045795.225 2011-01-26 1041142.775 2011-01-27 1041552.775 2011-01-28 1018512.775 2011-01-31 1028722.775 2011-02-01 1045482.775 2011-02-02 1043833.625 2011-02-03 1042743.625 2011-02-04 1046013.625 2011-02-07 1050003.625 2011-02-08 1063413.625 2011-02-09 1057733.625 2011-02-10 1051380.075 2011-02-11 1058480.075 2011-02-14 1059690.075 2011-02-15 1054210.075 2011-02-16 1056440.075 2011-02-17 1060760.075 2011-02-18 1067940.075 2011-02-22 1036790.075 ... 2011-11-08 1120677.316 2011-11-09 1107597.316 2011-11-10 1095573.316 2011-11-11 1094865.316 2011-11-14 1088457.316 2011-11-15 1099893.316 2011-11-16 1095045.316 2011-11-17 1086249.316 2011-11-18 1083297.316 2011-11-21 1076205.316 2011-11-22 1085169.316 2011-11-23 1073793.316 2011-11-25 1069713.316 2011-11-28 1084701.316 2011-11-29 1081209.316 2011-11-30 1091973.316 2011-12-01 1098813.316 2011-12-02 1100925.316 2011-12-05 1104885.316 2011-12-06 1102425.316 2011-12-07 1100205.316 2011-12-08 1102077.316 2011-12-09 1105617.316 2011-12-12 1103481.316 2011-12-13 1099869.316 2011-12-14 1089561.316 2011-12-15 1088073.316 2011-12-16 1090557.316 2011-12-19 1091985.316 2011-12-20 1106025.806 Length: 240, dtype: float64 --- end student code ------------------------------------------------ portfolio values: 2011-01-10 997432.625 2011-01-11 996217.625 2011-01-12 1000372.625 2011-01-13 996755.225 2011-01-14 1001355.225 2011-01-18 1003875.225 2011-01-19 1023435.225 2011-01-20 1023875.225 2011-01-21 1022715.225 2011-01-24 1038755.225 2011-01-25 1045795.225 2011-01-26 1041142.775 2011-01-27 1041552.775 2011-01-28 1018512.775 2011-01-31 1028722.775 2011-02-01 1045482.775 2011-02-02 1043833.625 2011-02-03 1042743.625 2011-02-04 1046013.625 2011-02-07 1050003.625 2011-02-08 1063413.625 2011-02-09 1057733.625 2011-02-10 1051380.075 2011-02-11 1058480.075 2011-02-14 1059690.075 2011-02-15 1054210.075 2011-02-16 1056440.075 2011-02-17 1060760.075 2011-02-18 1067940.075 2011-02-22 1036790.075 ... 2011-11-08 1120677.316 2011-11-09 1107597.316 2011-11-10 1095573.316 2011-11-11 1094865.316 2011-11-14 1088457.316 2011-11-15 1099893.316 2011-11-16 1095045.316 2011-11-17 1086249.316 2011-11-18 1083297.316 2011-11-21 1076205.316 2011-11-22 1085169.316 2011-11-23 1073793.316 2011-11-25 1069713.316 2011-11-28 1084701.316 2011-11-29 1081209.316 2011-11-30 1091973.316 2011-12-01 1098813.316 2011-12-02 1100925.316 2011-12-05 1104885.316 2011-12-06 1102425.316 2011-12-07 1100205.316 2011-12-08 1102077.316 2011-12-09 1105617.316 2011-12-12 1103481.316 2011-12-13 1099869.316 2011-12-14 1089561.316 2011-12-15 1088073.316 2011-12-16 1090557.316 2011-12-19 1091985.316 2011-12-20 1106025.806 Length: 240, dtype: float64 --- begin statistic ------------------------------------------------- Date Range: 2011-01-10 to 2011-12-20 (portfolio) Date Range: 2011-01-10 to 2011-12-20 (on web page) Number of Trading Days: 240 Sharpe Ratio of Fund: +0.99765451773 Average Daily Return of Fund: +0.00045909865 Final Portfolio Value: +1,106,025.80600000010 XX solution 1 240 +0.99765451773 +0.00045909865 +1,106,025.80600000010