合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

        代寫聚寬量化策略 聚寬代碼代寫

        時間:2024-03-28  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯


        '''
        1、首先計算:
        (1)N日High的最高價HH, N日Close的最低價LC;
        (2)N日Close的最高價HC,N日Low的最低價LL;
        (3)Range = Max(HH-LC,HC-LL)
        (4)BuyLine = Open + K1*Range
        (5)SellLine = Open + K2*Range

        2.構造系統
        (1)當價格向上突破上軌時,如果當時持有空倉,則先平倉,再開多倉;如果沒有持倉,則直接開多倉;
        (2)當價格向下突破下軌時,如果當時持有多倉,則先平倉,再開空倉;如果沒有持倉,則直接開空倉;
        '''

        def initialize(context):
            # 設定滬深300作為基準
            set_benchmark('000300.XSHG')
            # True為開啟動態復權模式,使用真實價格交易
            set_option('use_real_price', True) 
            # 設定成交量比例
            set_option('order_volume_ratio', 1)
            # 關閉訂單提醒
            # log.set_level('order', 'error')
            # 設定期貨保證金比例
            set_option('futures_margin_rate', 0.3)
            # 設定操作金融期貨
            set_subportfolios([SubPortfolioConfig(cash=context.portfolio.cash, type='index_futures')])
            # 金融期貨close_today_commission可不用設定,平今倉默認0.0023
            set_order_cost(OrderCost(open_commission=0.000023, close_commission=0.000023, close_today_commission=0.0023), type='index_futures')
            #運行函數
            run_daily(set_info, time='before_open', reference_security='IF1512.CCFX')
            run_daily(trade, time='every_bar', reference_security='IF1512.CCFX')

        def set_info(context):
            # 分鐘計數
            g.minute_count = 0

        def trade(context):
            # 開盤第一分鐘
            if g.minute_count == 0:
                # 獲取當月可交易的 HS300 股指期貨合約
                g.security = get_stock_index_futrue_code(context,symbol='IF',month='current_month')
                # 獲取 BuyLine, SellLine
                g.BuyLine, g.SellLine = dual_thrust(g.security,n=10,K1=0.5,K2=0.5)
                # 分鐘計數
                g.minute_count += 1
            # 開盤第一分鐘之后
            else:
                # 獲取標的可平多倉
                long_closeable_amount = context.portfolio.long_positions[g.security].closeable_amount
                # 獲取標的可平空倉
                short_closeable_amount = context.portfolio.short_positions[g.security].closeable_amount
                # 獲取標的的最新價
                current_price = attribute_history(g.security, 1, '1m', ['close'], df=False)['close'][0]

                # 當價格向上突破上軌時
                if current_price > g.BuyLine:
                    # 如果當時持有空倉,則先平倉,再開多倉;
                    if(short_closeable_amount>0):
                        # 平空倉
                        order_target(g.security, 0 , side='short')
                        # 開1手多倉
                        order(g.security, 1, side='long')
                        log.info('持有空倉,先平倉,再開多倉')
                    # 如果沒有持倉,則直接開多倉;
                    elif (short_closeable_amount == 0) and (long_closeable_amount == 0):
                        # 開1手多倉
                        order(g.security, 1, side='long')
                        log.info('沒有持倉,開多倉')
                # 當價格向下突破下軌時
                elif current_price < g.SellLine:
                    # 如果當時持有多倉,則先平倉,再開空倉;
                    if (long_closeable_amount>0):
                        # 平多倉
                        order_target(g.security, 0 , side='long')
                        # 開1手空倉
                        order(g.security, 1, side='short')
                        log.info('持有多倉,先平倉,再開空倉')
                    # 如果沒有持倉,則直接開空倉;
                    elif (short_closeable_amount == 0) and (long_closeable_amount == 0):
                        # 開1手空倉
                        order(g.security, 1, side='short')
                        log.info('沒有持倉,則直接開空倉')

                # 分鐘計數
                g.minute_count += 1

        ## 獲取 BuyLine 和 SellLine
        def dual_thrust(security,n,K1,K2):
            hist = attribute_history(security, n, '1d', ['high','low','close','open'], df=False)
            HH = max(hist['high'])
            LC = min(hist['close'])
            HC = max(hist['close'])
            LL = min(hist['low'])
            Open = get_current_data()[security].day_open
            # 獲取 Range
            Range = max((HH-LC),(HC-LL))
            # 計算BuyLine 和 SellLine
            
            BuyLine = Open + K1 * Range
            SellLine = Open - K2 * Range
            # 返回結果
            return BuyLine, SellLine

        ## 獲取當天時間正在交易的股指期貨合約
        def get_stock_index_futrue_code(context,symbol,month='current_month'):
            '''
            獲取當天時間正在交易的股指期貨合約。其中:
            symbol:
                    'IF' #滬深300指數期貨
                    'IC' #中證500股指期貨
                    'IH' #上證50股指期貨
            month:
                    'current_month' #當月
                    'next_month'    #隔月
                    'next_quarter'  #下季
                    'skip_quarter'  #隔季
            '''
            display_name_dict = {'IF':'滬深300指數期貨','IC':'中證500股指期貨','IH':'上證50股指期貨'}
            month_dict = {'current_month':0, 'next_month':1, 'next_quarter':2, 'skip_quarter':3}

            display_name = display_name_dict[symbol]
            n = month_dict[month]
            dt = context.current_dt.date()
            a = get_all_securities(types=['futures'], date=dt)
            try:
                df = a[(a.display_name == display_name) & (a.start_date <= dt) & (a.end_date >= dt)]
                if (len(df)>4) and (month in ('next_quarter','skip_quarter')):
                    return df.index[n+1]
                else:
                    return df.index[n]
            except:
                return 'WARRING: 無此合約'

        # 獲取金融期貨合約到期日
        def get_CCFX_end_date(fature_code):
            return get_security_info(fature_code).end_date



        如有需要,請加QQ:88652583 或微信: 88652583

        掃一掃在手機打開當前頁
      1. 上一篇:代寫CPSC 217、代做python編程設計
      2. 下一篇:菲律賓機場小黑屋 &#160;為什么會被關進菲律賓小黑屋
      3. 無相關信息
        合肥生活資訊

        合肥圖文信息
        出評 開團工具
        出評 開團工具
        挖掘機濾芯提升發動機性能
        挖掘機濾芯提升發動機性能
        戴納斯帝壁掛爐全國售后服務電話24小時官網400(全國服務熱線)
        戴納斯帝壁掛爐全國售后服務電話24小時官網
        菲斯曼壁掛爐全國統一400售后維修服務電話24小時服務熱線
        菲斯曼壁掛爐全國統一400售后維修服務電話2
        美的熱水器售后服務技術咨詢電話全國24小時客服熱線
        美的熱水器售后服務技術咨詢電話全國24小時
        海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
        海信羅馬假日洗衣機亮相AWE 復古美學與現代
        合肥機場巴士4號線
        合肥機場巴士4號線
        合肥機場巴士3號線
        合肥機場巴士3號線
      4. 上海廠房出租 短信驗證碼 酒店vi設計

        主站蜘蛛池模板: 国产精品一区二区毛卡片| 成人丝袜激情一区二区| 久久一区二区三区精华液使用方法 | 色婷婷av一区二区三区仙踪林| 国产在线乱子伦一区二区| 一区二区三区免费视频网站| 日本一道高清一区二区三区| 末成年女AV片一区二区| 国产一区二区三区高清在线观看| 乱色熟女综合一区二区三区| 精品国产一区二区二三区在线观看| 精品一区二区三区四区| 国产精品日本一区二区在线播放| 上原亚衣一区二区在线观看| 在线中文字幕一区| 国产成人久久精品麻豆一区| 日韩一区二区三区在线观看| 亚洲AV永久无码精品一区二区国产| 国产一区精品视频| 日本在线视频一区| 国产情侣一区二区三区| 国精品无码A区一区二区| 夜夜嗨AV一区二区三区 | 麻豆一区二区三区精品视频| 无码免费一区二区三区免费播放| 免费一区二区无码东京热| 国产精品一区二区久久不卡 | 国产91精品一区| 偷拍精品视频一区二区三区| 一区二区三区在线看| 国产一区二区视频在线观看| 制服丝袜一区二区三区| 国产高清不卡一区二区| 国产精品福利一区二区久久| 夜夜精品视频一区二区| 波多野结衣精品一区二区三区| 国产成人无码精品一区在线观看| 中文字幕在线观看一区二区三区| 国产伦理一区二区| 蜜桃AV抽搐高潮一区二区| 国产一区二区视频免费|