ztjdtj.py

代码片


# -*- coding: utf-8 -*-
"""
计算涨停价和跌停价, 给定品种和昨天收盘价.

Parameters
----------
lc : 前收盘价, 浮点数
stype : 整型, optional
    证券品种(0=可转债, 1=股票). The default is 0.

Returns
-------
None.

使用举例:
    %run ztjdtj.py 100    # 可转债品种
    %run ztjdtj.py 100 0  # 可转债品种
    %run ztjdtj.py 100 1  # 股票品种

Created on Thu Dec  7 15:09:29 2023
"""

import sys

def get_ztj_dtj(lc, stype=0):
    type_ = '可转债' if stype==0 else '股票'
    if stype==0:
        u = lc * (1+20/100)
        d = lc * (1-20/100)
        print(f'{type_}品种, 前收盘={lc:8.3f}, 涨停价={u:8.3f}, 跌停价={d:8.3f}')
    elif stype==1:
        u = lc * (1+10/100)
        d = lc * (1-10/100)
        print(f'{type_}品种, 前收盘={lc:8.2f}, 涨停价={u:8.2f}, 跌停价={d:8.2f}')
    
    
if __name__=='__main__':
    #用具有异常处理的语句, 使脚本更健硕
    #获取携带的参数
    try:
        lc, stype=sys.argv[1:]  # 当携带2个参数时
        lc, stype = float(lc), int(stype)
    except ValueError: # 当携带1个参数时
        lc, stype = float(sys.argv[1]), 0
        
    get_ztj_dtj(lc, stype)
    
posted @ 2024-01-31 23:11  duanqs  阅读(7)  评论(0编辑  收藏  举报