Exemplo n.º 1
0
def recreate_stock_qfq_data():
    start = MIN_START_DATE
    end = date_time_utils.Date().as_str()
    init_qfq_repo()
    print('START recreate QFQ data')
    code_list = SECURITY_DATA_READ_SERVICE.read_security_codes()
    execute_tasks(code_list, update_qfq_for_single_code, start, end)
    print('DONE recreate QFQ data')
Exemplo n.º 2
0
 def recreate_all_codes(self, codes, create_start_date, end):
     DB_CLIENT.remove_all_from(self.repo_name())
     DB_CLIENT.create_index_for_collection_with_date_and_code(
         self.repo_name())
     start = date_time_utils.Date.from_str(create_start_date)
     end = date_time_utils.Date.from_str(end)
     executor.execute_tasks(codes, self.update_for_single_code,
                            start.as_str(), end.as_str())
 def update_all_codes(self, codes):
     end = date_time_utils.Date()
     start = end.get_before(days=self.days_to_update())
     executor.execute_tasks(
         codes,
         self.update_for_single_code,
         start.as_str(),
         end.as_str()
     )
Exemplo n.º 4
0
    def recreate_all_codes(self, start_date, end):
        DB_CLIENT.remove_all_from(self.repo_name_for_backtest())
        DB_CLIENT.remove_all_from(self.repo_name_for_trade())
        DB_CLIENT.create_index_for_collection_with_date_and_code(self.repo_name_for_backtest())
        DB_CLIENT.create_index_for_collection_with_date_and_code(self.repo_name_for_trade())

        code_list = SECURITY_DATA_READ_SERVICE.read_security_codes()
        start = date_time_utils.Date.from_str(start_date)
        end = date_time_utils.Date.from_str(end)
        executor.execute_tasks(code_list, self.update_for_single_code, start.as_str(), end.as_str())
Exemplo n.º 5
0
 def update_bars_by_dates(self,
                          start,
                          end,
                          typ: SeType = SeType.Stock,
                          freq: SeFreq = SeFreq.DAY,
                          codes=None):
     DB_CLIENT.create_index(typ.repo_name(freq), freq.keys_to_index())
     if codes is None:
         codes = self.read_security_codes(typ)
     executor.execute_tasks(codes, self.do_fetch_and_replace_by_dates, typ,
                            start, end, freq)
     print("These codes failed to update: [" + ','.join(self.failed_codes) +
           "]")
Exemplo n.º 6
0
 def update_bars(self,
                 typ: SeType = SeType.Stock,
                 freq: SeFreq = SeFreq.DAY,
                 codes=None,
                 days_to_update=DAYS_TO_UPDATE):
     DB_CLIENT.create_index(typ.repo_name(freq), freq.keys_to_index())
     if codes is None:
         codes = self.read_security_codes(typ)
     end = date_time_utils.Date()
     start = end.get_before(days_to_update)
     executor.execute_tasks(codes, self.do_fetch_and_save_bars, typ,
                            start.as_str(), end.as_str(), freq)
     print("These codes failed to update: [" + ','.join(self.failed_codes) +
           "]")
Exemplo n.º 7
0
    def recreate_all_codes(self,
                           codes,
                           create_start_date=DEFAULT_MIN_START_DATE):
        if codes is None:
            if self.db_service.confirm_and_drop():
                codes = SECURITY_DATA_READ_SERVICE.read_security_codes()
            else:
                return
        else:
            self.db_service.remove_all(codes)

        end = Date()
        start = Date.from_str(create_start_date)
        executor.execute_tasks(codes, self.update_for_single_code,
                               start.as_str(), end.as_str())
Exemplo n.º 8
0
 def refetch_and_save_bars(self,
                           typ: SeType,
                           freq: SeFreq = SeFreq.DAY,
                           codes=None):
     if codes is None:
         if self.__confirm_drop():
             self.drop_bar_repo(typ, freq)
             print('删除完成。')
             codes = self.read_security_codes(typ)
         else:
             print("操作已取消。")
             return
     else:
         DB_CLIENT.remove_all_from(typ.repo_name(freq),
                                   query={'code': {
                                       '$in': codes
                                   }})
     DB_CLIENT.create_index(typ.repo_name(freq), freq.keys_to_index())
     end = date_time_utils.Date()
     start = date_time_utils.Date.from_str(MIN_START_TIME)
     executor.execute_tasks(codes, self.do_fetch_and_save_bars, typ,
                            start.as_str(), end.as_str(), freq)
Exemplo n.º 9
0
def verify_xian_backtest():
    repo1 = 'xian_backtest'
    repo2 = 'xian_stock_day_long_fp'
    # codes = ['600158']
    execute_tasks(codes, verifier.compare_basic_data_of_repos, start, end, repo1, repo2, ['open', 'close'])
Exemplo n.º 10
0
def update_stock_qfq_data():
    end = date_time_utils.Date()
    start = end.get_before(days=15)
    code_list = SECURITY_DATA_READ_SERVICE.read_security_codes()
    execute_tasks(code_list, update_qfq_for_single_code, start.as_str(),
                  end.as_str())
Exemplo n.º 11
0
 def update_by_dates(self, codes, start, end):
     executor.execute_tasks(codes, self.do_update_by_dates_for_code, start,
                            end)
Exemplo n.º 12
0
def verify_chan_fp():
    repo1 = 'indicator_chan_current_fp_1min'
    repo2 = 'indicator_chan_current_fp_1min_copy'
    # codes = ['600158']
    execute_tasks(codes, verifier.compare_basic_data_of_repos, start, end, repo1, repo2, ['pFpTime', 'pFpType', 'pFpPrice'])
Exemplo n.º 13
0
def verify_chan_zs():
    repo1 = 'indicator_chan_current_zs_1min'
    repo2 = 'indicator_chan_current_zs_1min_copy'
    # codes = ['600158']
    execute_tasks(codes, verifier.compare_basic_data_of_repos, start, end, repo1, repo2, ['xd_time', 'zs_time', 'zs_low', 'zs_high'])
Exemplo n.º 14
0
def verify_fp_marks_data():
    for fpd in [20, 50, 120]:
        repo1 = 'fp_marks_' + str(fpd)
        repo2 = 'indicator_fp_marks_' + str(fpd) + '_day'
        cols = ['fp_type', 'fp_around_' + str(fpd)]
        execute_tasks(codes, verifier.compare_basic_data_of_repos, start, end, repo1, repo2, cols)
Exemplo n.º 15
0
 def update_all_codes(self, days_to_update=60):
     code_list = SECURITY_DATA_READ_SERVICE.read_security_codes()
     end = date_time_utils.Date()
     start = end.get_before(days=int(days_to_update * 1.5))
     executor.execute_tasks(code_list, self.update_for_single_code, start.as_str(), end.as_str())
Exemplo n.º 16
0
def verify_qfq_data():
    repo1 = 'stock_day_qfq'
    repo2 = 'stock_day_qfq_new_stock_day_with_old_xdxr'
    # codes = ['600158']
    execute_tasks(codes, verifier.compare_basic_data_of_repos, start, end, repo1, repo2, BASIC_DATA_COLUMNS)
Exemplo n.º 17
0
 def recreate_for_codes(self, codes, start_date, end):
     DB_CLIENT.remove_by_codes_from(self.repo_name_for_backtest(), codes)
     DB_CLIENT.remove_by_codes_from(self.repo_name_for_trade(), codes)
     start = date_time_utils.Date.from_str(start_date)
     end = date_time_utils.Date.from_str(end)
     executor.execute_tasks(codes, self.update_for_single_code, start.as_str(), end.as_str())