Minor fixes for price repair and related tests

Minor fixes for price repair and related tests:
- update out-of-date test, remove delisted ticker
- fix Numpy type mismatch error
This commit is contained in:
Value Raider
2023-12-09 19:37:10 +00:00
parent f30e4ebd4c
commit f7825c1c3a
3 changed files with 13 additions and 8 deletions

View File

@@ -2,10 +2,10 @@ Date,Open,High,Low,Close,Adj Close,Volume,Dividends,Stock Splits
2023-05-18 00:00:00+01:00,193.220001220703,200.839996337891,193.220001220703,196.839996337891,196.839996337891,653125,0,0
2023-05-17 00:00:00+01:00,199.740005493164,207.738006591797,190.121994018555,197.860000610352,197.860000610352,822268,0,0
2023-05-16 00:00:00+01:00,215.600006103516,215.600006103516,201.149993896484,205.100006103516,205.100006103516,451009,243.93939,0.471428571428571
2023-05-15 00:00:00+01:00,215.399955531529,219.19995640346,210.599967302595,217.399987792969,102.39998147147,1761679.3939394,0,0
2023-05-12 00:00:00+01:00,214.599988664899,216.199965558733,209.599965558733,211.399977329799,99.573855808803,1522298.48484849,0,0
2023-05-11 00:00:00+01:00,219.999966430664,219.999966430664,212.199987357003,215.000000871931,101.269541277204,3568042.12121213,0,0
2023-05-10 00:00:00+01:00,218.199954659598,223.000000435965,212.59995640346,215.399955531529,101.457929992676,5599908.78787879,0,0
2023-05-09 00:00:00+01:00,224,227.688003540039,218.199996948242,218.399993896484,102.87100982666,1906090,0,0
2023-05-05 00:00:00+01:00,220.999968174526,225.19996686663,220.799976457868,224.4,105.697140066964,964523.636363637,0,0
2023-05-04 00:00:00+01:00,216.999989972796,222.799965558733,216.881988961356,221.399965994698,104.284055655343,880983.93939394,0,0
2023-05-15 00:00:00+01:00,456.9090,464.9696,446.7272,461.1515,217.2121,830506.0000,0,0
2023-05-12 00:00:00+01:00,455.2121,458.6060,444.6060,448.4242,211.2173,717655.0000,0,0
2023-05-11 00:00:00+01:00,466.6666,466.6666,450.1212,456.0606,214.8142,1682077.0000,0,0
2023-05-10 00:00:00+01:00,462.8484,473.0303,450.9696,456.9090,215.2138,2639957.0000,0,0
2023-05-09 00:00:00+01:00,475.1515,482.9746,462.8485,463.2727,218.2112,898585.2857,0,0
2023-05-05 00:00:00+01:00,468.7878,477.6969,468.3636,476.0000,224.2061,454704.0000,0,0
2023-05-04 00:00:00+01:00,460.3030,472.6060,460.0527,469.6363,221.2086,415321.0000,0,0
1 Date Open High Low Close Adj Close Volume Dividends Stock Splits
2 2023-05-18 00:00:00+01:00 193.220001220703 200.839996337891 193.220001220703 196.839996337891 196.839996337891 653125 0 0
3 2023-05-17 00:00:00+01:00 199.740005493164 207.738006591797 190.121994018555 197.860000610352 197.860000610352 822268 0 0
4 2023-05-16 00:00:00+01:00 215.600006103516 215.600006103516 201.149993896484 205.100006103516 205.100006103516 451009 243.93939 0.471428571428571
5 2023-05-15 00:00:00+01:00 215.399955531529 456.9090 219.19995640346 464.9696 210.599967302595 446.7272 217.399987792969 461.1515 102.39998147147 217.2121 1761679.3939394 830506.0000 0 0
6 2023-05-12 00:00:00+01:00 214.599988664899 455.2121 216.199965558733 458.6060 209.599965558733 444.6060 211.399977329799 448.4242 99.573855808803 211.2173 1522298.48484849 717655.0000 0 0
7 2023-05-11 00:00:00+01:00 219.999966430664 466.6666 219.999966430664 466.6666 212.199987357003 450.1212 215.000000871931 456.0606 101.269541277204 214.8142 3568042.12121213 1682077.0000 0 0
8 2023-05-10 00:00:00+01:00 218.199954659598 462.8484 223.000000435965 473.0303 212.59995640346 450.9696 215.399955531529 456.9090 101.457929992676 215.2138 5599908.78787879 2639957.0000 0 0
9 2023-05-09 00:00:00+01:00 224 475.1515 227.688003540039 482.9746 218.199996948242 462.8485 218.399993896484 463.2727 102.87100982666 218.2112 1906090 898585.2857 0 0
10 2023-05-05 00:00:00+01:00 220.999968174526 468.7878 225.19996686663 477.6969 220.799976457868 468.3636 224.4 476.0000 105.697140066964 224.2061 964523.636363637 454704.0000 0 0
11 2023-05-04 00:00:00+01:00 216.999989972796 460.3030 222.799965558733 472.6060 216.881988961356 460.0527 221.399965994698 469.6363 104.284055655343 221.2086 880983.93939394 415321.0000 0 0

View File

@@ -917,7 +917,7 @@ class TestPriceRepair(unittest.TestCase):
# Stocks that split in 2022 but no problems in Yahoo data,
# so repair should change nothing
good_tkrs = ['AMZN', 'DXCM', 'FTNT', 'GOOG', 'GME', 'PANW', 'SHOP', 'TSLA']
good_tkrs += ['AEI', 'CHRA', 'GHI', 'IRON', 'LXU', 'NUZE', 'RSLS', 'TISI']
good_tkrs += ['AEI', 'GHI', 'IRON', 'LXU', 'NUZE', 'RSLS', 'TISI']
good_tkrs += ['BOL.ST', 'TUI1.DE']
intervals = ['1d', '1wk', '1mo', '3mo']
for tkr in good_tkrs:

View File

@@ -1297,8 +1297,13 @@ class TickerBase:
# Update: if a VERY large dividend is paid out, then can be mistaken for a 1:2 stock split.
# Fix = use adjusted prices
adj = df2['Adj Close'].to_numpy() / df2['Close'].to_numpy()
df_dtype = price_data.dtype
if df_dtype == np.int64:
price_data = price_data.astype('float')
for j in range(price_data.shape[1]):
price_data[:,j] *= adj
if df_dtype == np.int64:
price_data = price_data.astype('int')
_1d_change_x[1:] = price_data[1:, ] / price_data[:-1, ]
f_zero_num_denom = f_zero | np.roll(f_zero, 1, axis=0)