예제 #1
0
파일: data_test.py 프로젝트: rom1212/nns
    def test_match_all(self):
        data, dates = read_tdx('testdata/testdata_1.txt')
        self.assertEqual(9, len(data))
        self.assertEqual(9, len(dates))

        self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                         data[0, :].tolist())
        self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                         data[1, :].tolist())
        self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                         data[2, :].tolist())

        self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                         data[3, :].tolist())
        self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                         data[4, :].tolist())
        self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                         data[5, :].tolist())
        self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                         data[6, :].tolist())
        self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                         data[7, :].tolist())
        self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                         data[8, :].tolist())

        target = data[0:3, :]
        # cands =   data[3:,:]
        cands = data[3:7, :]

        scores = match_all(target, cands)
        self.assertEqual(2, len(scores))
        self.assertEqual([0, 21], scores)
예제 #2
0
파일: data_test.py 프로젝트: rom1212/nns
    def test_match_one(self):
        data, dates = read_tdx('testdata/testdata_1.txt')
        self.assertEqual(9, len(data))
        self.assertEqual(9, len(dates))

        self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                         data[0, :].tolist())
        self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                         data[1, :].tolist())
        self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                         data[2, :].tolist())
        self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                         data[3, :].tolist())
        self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                         data[4, :].tolist())
        self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                         data[5, :].tolist())

        target = data[0:3, :]
        cand = data[3:6, :]
        score = match_one(target, cand)
        self.assertEqual(0, score)
        score = match_one(target, cand, body_only=True)
        self.assertEqual(0, score)

        cand = data[1:4, :]
        score = match_one(target, cand)
        self.assertEqual(160, score)
        score = match_one(target, cand, body_only=True)
        self.assertEqual(80, score)
예제 #3
0
파일: data_test.py 프로젝트: rom1212/nns
 def test_read_tdx(self):
     data, dates = read_tdx('testdata/testdata_1.txt')
     self.assertEqual(9, len(data))
     self.assertEqual(9, len(dates))
     expected_dates = [
         '2010/10/08', '2010/10/11', '2010/10/12', '2010/10/13',
         '2010/10/14', '2010/10/15', '2010/10/16', '2010/10/17',
         '2010/10/18'
     ]
     self.assertEqual(expected_dates, dates)
     self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                      data[0, :].tolist())
     self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                      data[1, :].tolist())
     self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                      data[2, :].tolist())
     self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                      data[3, :].tolist())
     self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                      data[4, :].tolist())
     self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                      data[5, :].tolist())
     self.assertEqual([20.00, 40.00, 10.00, 30.00, 1214862, 14319652.00],
                      data[6, :].tolist())
     self.assertEqual([30.00, 50.00, 20.00, 40.00, 2047844, 24367328.00],
                      data[7, :].tolist())
     self.assertEqual([40.00, 60.00, 30.00, 50.00, 2724569, 32872520.00],
                      data[8, :].tolist())
예제 #4
0
    def test_norm_day(self):
        data, dates = read_tdx('testdata/testdata_1.txt')
        row = data[0,:]
        self.assertEqual([20.00,40.00,10.00,30.00,1214862,14319652.00], row.tolist()) 

        row1 = norm_day(row)
        # make sure the row is not changed.
        self.assertEqual([20.00,40.00,10.00,30.00,1214862,14319652.00], row.tolist()) 
        self.assertEqual([2.00,4.00,1.00,3.00,1214862,14319652.00], row1.tolist()) 
예제 #5
0
    def test_get_set_rows(self):
        data, dates = read_tdx('testdata/testdata_1.txt')
        row = data[0,:]
        self.assertEqual([20.00,40.00,10.00,30.00,1214862,14319652.00], row.tolist()) 
        self.assertEqual(20.00, get_open(row))
        self.assertEqual(30.00, get_close(row))
        self.assertEqual(40.00, get_high(row))
        self.assertEqual(10.00, get_low(row))

        set_open(row, 100)
        set_close(row, 200)
        set_high(row, 300)
        set_low(row, 400)
        self.assertEqual(100.00, get_open(row))
        self.assertEqual(200.00, get_close(row))
        self.assertEqual(300.00, get_high(row))
        self.assertEqual(400.00, get_low(row))
예제 #6
0
    def test_norm_days(self):
        data, dates = read_tdx('testdata/testdata_1.txt')
        self.assertEqual([20.00,40.00,10.00,30.00,1214862,14319652.00], data[0,:].tolist()) 
        self.assertEqual([30.00,50.00,20.00,40.00,2047844,24367328.00], data[1,:].tolist())
        self.assertEqual([40.00,60.00,30.00,50.00,2724569,32872520.00], data[2,:].tolist())

        days = data[0:3,:]

        normed_days = norm_days(days)
        # make sure that "days" is not changed.
        self.assertEqual([20.00,40.00,10.00,30.00,1214862,14319652.00], days[0,:].tolist()) 
        self.assertEqual([30.00,50.00,20.00,40.00,2047844,24367328.00], days[1,:].tolist())
        self.assertEqual([40.00,60.00,30.00,50.00,2724569,32872520.00], days[2,:].tolist())

        self.assertEqual([2.00,4.00,1.00,3.00,1214862,14319652.00], normed_days[0,:].tolist()) 
        self.assertEqual([3.00,5.00,2.00,4.00,2047844,24367328.00], normed_days[1,:].tolist())
        self.assertEqual([4.00,6.00,3.00,5.00,2724569,32872520.00], normed_days[2,:].tolist())
예제 #7
0
파일: show.py 프로젝트: rom1212/nns
#!/usr/bin/python3
import numpy as np
from operator import itemgetter
from day import norm_days, norm_day, get_high, get_low, get_open, get_close
from data import read_csv, read_tdx, match_all, read_dir
from draw import draw_box, plot_row, plot_target
import matplotlib.pyplot as plt
from matplotlib.figure import figaspect

if __name__ == "__main__":
    data, dates = read_csv('./csv1')
    exit()

    data, dates = read_tdx('./testdata/testdata_1.txt')
    factor = 1

    # data, dates = read_tdx('./sample1.txt')
    # data, dates = read_tdx('./600030.txt')
    
    # factor = 100

    print(len(data))
    print(len(dates))
    total_days = len(data)

    ldays = 5
    target = data[total_days - ldays:,:]

    data, dates = read_dir('./stock/', -1, read_tdx)

    # cands = data[:total_days - ldays,:]