Esempio n. 1
0
File: job.py Progetto: wozuiku/stock
    def calculate_moving_average(self):
        sqlUtil = SqlUtil()
        marketUtil = MarketUtil()

        rows = sqlUtil.select_stock()
        for row in rows:
            code = row[0]
            rows_all = sqlUtil.select_stock_history_by_code(code)
            rows_all_count = len(rows_all)

            if rows_all_count >= 5:
                date = rows_all[rows_all_count - 1][0]
                code = rows_all[rows_all_count - 1][1]
                ma5, ma13, ma21, vma50 = marketUtil.cal_ma(rows_all)
                print('date = ' + date)
                print('code = ' + code)
                print('ma5 = ' + str(ma5))
                print('ma13 = ' + str(ma13))
                print('ma21 = ' + str(ma21))
                print('vma50 = ' + str(vma50))

                sqlUtil.update_stock_history_ma(date, code,
                                                str(ma5), str(ma13), str(ma21),
                                                str(vma50))
Esempio n. 2
0
        if len(rows_vma50) == 50:
            vma50 = volume_sum50 / 50
        else:
            vma50 = ''

        # print('ma5 = ' + str(ma5))
        # print('ma13 = ' + str(ma13))
        # print('ma21 = ' + str(ma21))
        # print('vma50 = ' + str(vma50))

        date = rows_all[rows_all_count - 1][0]
        code = rows_all[rows_all_count - 1][1]

        return ma5, ma13, ma21, vma50


if __name__ == "__main__":

    sqlUtil = SqlUtil()
    rows_all = sqlUtil.select_stock_history_by_code('601318')

    marketUtil = MarketUtil()
    ma5, ma13, ma21, vma50 = marketUtil.cal_ma(rows_all)

    print('ma5 = ' + str(ma5))
    print('ma13 = ' + str(ma13))
    print('ma21 = ' + str(ma21))
    print('vma50 = ' + str(vma50))

    #marketUtil.cal_vma(rows_all)
Esempio n. 3
0
                        if turn_over_rate >= 3:
                            remark = '最近9天涨幅小于20%,今天换手率超过3%'
                            code = rows_all[rows_all_count - 1][1]
                            name = rows_all[rows_all_count - 1][2]

                            sqlUtil.insert_stock_select(
                                batch, code, name, '5', remark)
                            print(remark)
                            print(code)
                            print(name)


if __name__ == "__main__":

    sqlUtil = SqlUtil()
    ruleUtil = RuleUtil()

    rows = sqlUtil.select_stock()

    # print('开始时间:%s' % datetime.now())
    #
    # for row in rows:
    #     code = row[0]
    #     rows_all = sqlUtil.select_stock_history_by_code(code)
    #     ruleUtil.rule_1Win9(rows_all)
    #
    # print('结束时间:%s' % datetime.now())

    rows_all = sqlUtil.select_stock_history_by_code('000584')
    ruleUtil.rule_bigDown(rows_all, '20200306')