当前位置: 首页 > news >正文

做go富集的网站备案网站建设方案

做go富集的网站,备案网站建设方案,spring mvc 做网站,做系统和做网站的区别小白量化《穿云箭集群量化》#xff08;9#xff09;用指标公式实现miniQMT全自动交易 在穿云箭量化平台中#xff0c;支持3中公式源码运行模式#xff0c;还支持在Python策略中使用仿指标公式源码运行#xff0c;编写策略。 我们先看如何使用指标公式源码。 #编程_直接使…小白量化《穿云箭集群量化》9用指标公式实现miniQMT全自动交易 在穿云箭量化平台中支持3中公式源码运行模式还支持在Python策略中使用仿指标公式源码运行编写策略。 我们先看如何使用指标公式源码。 #编程_直接使用通达信自编指标公式显示K线指标 import os,sys sys.path.append(os.path.abspath(.)) sys.path.append(os.path.abspath(..)) import pandas as pd import numpy as np import matplotlib.pyplot as plt import HP_tdx as htdx#小白通达信行情库 from HP_formula import * #小白股票指标公式函数库 import HP_tdxgs as hgs #小白通达信公式库plt.rcParams[font.sans-serif][SimHei] #用来正常显示中文标签 plt.rcParams[axes.unicode_minus]False #用来正常显示负号tdxapihtdx.TdxInit(ip180.153.18.171) code600019 dfhgs.get_security_bars(nCategory4,nMarket -1,codecode) print(df) #df.to_csv( 股票数据源.csv , encoding gbk) #df2pd.read_csv(股票数据源.csv , encoding gbk) #KDJ指标 gs N:9; M1:3; M2:3; RSV:(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100; K:SMA(RSV,M1,1), CIRCLEDOT,COLORFF0000,LINETHICK2; D:SMA(K,M2,1), LINETHICK3 , COLOR00FF00 ; J:3*K-2*D, LINETHICK2, COLOR0000FF; #MACD指标 gs2 SHORT:12; LONG:26; MID:9; DIF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG); DEA:EMA(DIF,MID); MACD2:(DIF-DEA)*2,COLORSTICK; #LHXJ 猎狐先觉 gs3 VAR1(CLOSE*2HIGHLOW)/4; VAR2EMA(VAR1,13)-EMA(VAR1,34); VAR3EMA(VAR2,5); ZLQP:(-2)*(VAR2-VAR3)*3.8; ZLKP:2*(VAR2-VAR3)*3.8; #绘制图形 plt.figure(1,figsize(10,6), dpi100) #绘制主图指标 ax1plt.subplot(311) #绘制副图指标 ax2plt.subplot(312) #绘制副图指标 ax3plt.subplot(313)tgs1hgs.Tdxgs() tgs1.loaddf(df) mydftgs1.rungs(gs) print(KDJ指标\n,gs) print(公式变量,tgs1.bl) print(输出变量,tgs1.bl2) tgs1.brawline(ax1) print(mydf) #mydf.to_csv( 股票数据KDJ返回结果.csv , encoding gbk) #mydf2pd.read_csv(股票数据KDJ返回结果.csv , encoding gbk)#print(gs2) tgs2hgs.Tdxgs() tgs2.loaddf(df) mydf2tgs2.rungs(gs2) tgs2.brawline(ax2)#print(gs2) tgs3hgs.Tdxgs() tgs3.loaddf(df) mydf3tgs3.rungs(gs3) tgs3.brawline(ax3) plt.show() 程序运行结果 我们可以在穿云箭量化平台上使用指标公式源码一键生成easytrader策略和miniQMT自动交易策略。 我们可以直接使用有买卖信号的专家系统公式也可以自定义BUY和SELL信号也支持B和S交易信号。 上图是通达信KD专家系统公式我们点按钮显示图形能够正常显示买卖信号。 我们直接点【生成miniQMT交易】按钮生成miniQMT全自动交易策略源代码源代码如下用户只要修改程序路径和用户就可以直接在穿云箭量化软件高级版面中进行实盘。 也可以将策略中的自编指标更换为其他自编公式源码。 策略名高级_miniQMT公式策略 import pandas as pd import time,os import HP_tdx as htdx #小白量化行情模块 import HP_global as hg #建立高级全局数据域hg from HP_formula import * #小白量化公式模块 from HP_factor import * #小白量化因子公式及Alpha公式模块 import HP_factor as hf #小白量化因子公式及Alpha公式模块 import HP_formula as gs #小白量化公式模块 import HP_quant as hpq #穿云箭量化模块 from HP_quant import * #穿云箭量化模块 import HP_tdx as htdx #通达信行情模块 import HP_tdxgs as tgs #公式运行模块 import random, time, logging, datetime, json, akshare from xtquant import xtdata, xttrader, xtconstant from xtquant.xttrader import XtQuantTrader, XtQuantTraderCallback from xtquant.xttype import StockAccount import HP_xbdata as hpx import HP_mqmt as hqmttrader hqmt.Trader()##########修改帐户信息######################## qmt_pathD:\\华宝证券QMT实盘交易端 account_id ############################################# session_id random.randint(20000, 60000) qmt_dir qmt_path \\userdata_mini account_type STOCK # 账号类型可选STOCK、CREDIT xtdata.data_dir qmt_path \\datadir connect_result trader.set_trader(qmt_dir, session_id) trader.set_account(account_id, account_typeaccount_type) print(交易连接成功) if connect_result 0 else print(交易连接失败)mygstgs.Tdxgs() def initialize(context):#context.istestTrue context.zhxiaoba #账户context.zhlx回测 #账户类型,2个汉字context.firstcash1000000.00 #初始现金context.cashcontext.firstcashcontext.portfolio.available_cashcontext.firstcash# 设置我们要操作的股票池#g.stockshpq.get_universe()#g.stocks[000001.SZ,000776.SZ,600030.SH]#codeshtdx.getzxgfile(G2022X500.blk)codeshpq.get_universe()g.cwsj{} #财务数据 codes2[]for m,c in codes:if m0:ccc.SZelif m1:ccc.SHcodes2.append(cc)cwxtdata.get_instrument_detail(cc)g.cwsj[cc]cw#print(m,cc,cw)g.stockscodes2hpq.set_universe(g.stocks)hpq.log.info(----策略环境信息-----)print(量化模块版本: ,hpq.ver)print(量化模块最后修改日期: ,hpq.mdate)print(svrip: ,hpq.svrip)print(svrport: ,hpq.svrport)print(\n----开始运行策略-----\n)print(策略名:策略名)qhcsj2time.strftime(%Y%m%d %H:%M:%S,time.localtime(time.time()))print(开始运行时间:qhcsj2)# 设定基准set_benchmark(000001.SH)# 开启动态复权模式(真实价格)set_option(use_real_price, True)set_times(6) #设置多少圈读一次持仓hg.hqsl0 #行情数量hg.seemsgFalseasset trader.xt_trader.query_stock_asset(trader.account)context.portfolio.total_valueasset.total_asset #总资产context.portfolio.available_cashasset.cash #可用金额context.portfolio.positions_valueasset.market_value #股票市值context.portfolio.locked_cashasset.frozen_cash #冻结金额holdinghqmt.query_holding(trader)g.zstimedatetime.datetime.now()g.codezs[]g.holds[] #持仓证券代码print(asset.total_asset,asset.cash)for i in range(len(holding)):股票代码holding[i][0][股票代码]g.holds.append(股票代码)if 股票代码 not in context.portfolio.positions:context.portfolio.positions[股票代码]hpq.Position(股票代码)context.portfolio.positions[股票代码].total_amountholding[i][0][持仓]context.portfolio.positions[股票代码].closeable_amountholding[i][0][可用持仓]context.portfolio.positions[股票代码].acc_avg_costholding[i][0][成本]context.portfolio.positions[股票代码].valueholding[i][0][持仓市值]context.ccsg.holdshpq.contextcontextg.MAX50g.hd0.003 #滑点g.zsfd-0.03 #止损幅度g.amount100 #买入数量g.xdzj10000.00 #买入金额下单资金g.cs0 #策略运行次数#中文Python学习交流群 934165481g.gs{自编指标公式最好用专家系统公式}N:9; M1:3; RSV:(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100; K:SMA(RSV,M1,1); D:SMA(K,M1,1); J:3*K-2*D; ENTERLONG:CROSS(J,D); EXITLONG:CROSS(D,J);# 每个单位时间(如果按天回测,则每天调用一次,如果按分钟,则每分钟调用一次)调用一次 def market_open(context):starttime datetime.datetime.now()g.csg.cs1#开始撤单if g.cs%21:wtchqmt.query_order(trader,) #获取委托池for i in range(len(wtc)):wtwtc[i]if wt[委托状态]已报 or wt[委托状态]部分成交:订单编号wt[订单编号]hqmt.trade_cancel_order(trader,订单编号)##获取账户资金asset trader.xt_trader.query_stock_asset(trader.account)context.portfolio.total_valueasset.total_asset #总资产context.portfolio.available_cashasset.cash #可用金额context.portfolio.positions_valueasset.market_value #股票市值context.portfolio.locked_cashasset.frozen_cash #冻结金额##获取持仓holdinghqmt.query_holding(trader)print(len(holding))g.holds[] #持仓证券代码for i in range(len(holding)):security股票代码holding[i][0][股票代码]g.holds.append(股票代码)tickhqmt.get_tick_data(股票代码)pricetick[lastPrice]if 股票代码 not in context.portfolio.positions:context.portfolio.positions[股票代码]hpq.Position(股票代码)context.portfolio.positions[股票代码].total_amountholding[i][0][持仓]context.portfolio.positions[股票代码].closeable_amountholding[i][0][可用持仓]context.portfolio.positions[股票代码].acc_avg_costholding[i][0][成本]context.portfolio.positions[股票代码].valueholding[i][0][持仓市值]context.portfolio.positions[股票代码].pricepricecontext.portfolio.positions[股票代码].issellFalsecontext.portfolio.positions[股票代码].isbuyFalseelse:context.portfolio.positions[股票代码].total_amountholding[i][0][持仓]context.portfolio.positions[股票代码].closeable_amountholding[i][0][可用持仓]context.portfolio.positions[股票代码].acc_avg_costholding[i][0][成本]context.portfolio.positions[股票代码].valueholding[i][0][持仓市值] context.portfolio.positions[股票代码].pricepricecontext.portfolio.positions[股票代码].issellFalsecontext.portfolio.positions[股票代码].isbuyFalseamosholding[i][0][可用持仓]acc_avg_costcontext.portfolio.positions[股票代码].acc_avg_cost#dfhqmt.get_day_line(security)dfhqmt.get_day_line(security)price df.close.iloc[-1]if security not in g.cwsj: cwxtdata.get_instrument_detail(security)g.cwsj[security]cwif amos0:##响尾蛇导弹自动止损和回撤止盈sellhf.autosell(security,priceprice,costacc_avg_cost,withdraw0.3,stoplossg.zsfd,minp0.02,t99999)if sell2: #止损p5round(price*(1-g.hd),2)xorder_target(security,0,pp5)hpq.log.info(context.current_dt 止损卖出: %s ,数量:%d,卖出价格:%.2f,成交资金%0.2f%(security,amos,p5,amos*p5))print(security,p5,amos,price)time.sleep(0.1)order_id trader.xt_trader.order_stock(trader.account,security, xtconstant.STOCK_SELL,amos, xtconstant.FIX_PRICE, p5, 策略TTMJ, 止损) context.portfolio.positions[security].sellpricep5context.portfolio.positions[security].issellpriceTruecontext.portfolio.positions[security].total_amount0context.portfolio.positions[security].closeable_amount0elif sell1: #止盈p5round(price*(1-g.hd),2)xorder_target(security,0,pp5)hpq.log.info(context.current_dt 止盈卖出: %s ,数量:%d,卖出价格:%.2f,成交资金%0.2f%(security,amos,p5,amos*p5))print(security,p5,amos,price)time.sleep(0.1)order_id trader.xt_trader.order_stock(trader.account,security, xtconstant.STOCK_SELL,amos, xtconstant.FIX_PRICE, p5, 策略TTMJ, 止盈) context.portfolio.positions[security].sellpricep5context.portfolio.positions[security].issellpriceTruecontext.portfolio.positions[security].total_amount0context.portfolio.positions[security].closeable_amount0dfhqmt.get_day_line(security)if len(df)1:continueprice df.close.iloc[-1]closepricehigh df.high.iloc[-1]low df.low.iloc[-1]#value context.portfolio.positions[security].valueacc_avg_cost context.portfolio.positions[security].acc_avg_cost #买入成本价 amoscontext.portfolio.positions[security].closeable_amount #可卖数量amos2context.portfolio.positions[security].total_amount #总数量CAPTIALdf[capital]g.cwsj[security][FloatVolume] mydfgs.initmydf(df) ##初始化mydf表CCLOSEgs.CLOSELLOWgs.LOWHHIGHgs.HIGHOOPENgs.OPENVVOLmydf[volume]AMOAMOUNTmydf[amount]CAPTIALmydf[capital]g.cwsj[security][FloatVolume]HSLV/CAPTIAL ##换手率pre_closeCLOSE.iloc[-1] #前收盘ZXAMO/(V0.00001)/100 BL(C-ZX)/(ZX0.00001)mydfgs.initmydf(df) ##初始化mydf表mygs.loaddf(mydf) #加载行情数据mydfmygs.execgs(g.gs) #运行指标公式if ENTERLONG in mydf.columns:BUYmydf[ENTERLONG] #买点elif BUY in mydf.columns:BUYmydf[BUY] #买点elif B in mydf.columns:BUYmydf[B] #买点if EXITLONG in mydf.columns:SELLmydf[EXITLONG] #卖点elif SELL in mydf.columns:SELLmydf[SELL] #卖点elif S in mydf.columns:SELLmydf[S] #卖点 cashcontext.portfolio.available_cash #资金余额if BUY0 and amos20 and context.portfolio.positions[security].isbuyFalse and context.onlysellFalse : #保留资金price2round(price*(1g.hd),2)amountg.xdzj/price2 g.amountint(amount/100)*100xorder_target(security,g.amount,pprice2)context.portfolio.positions[security].isbuyTrueorder_id trader.xt_trader.order_stock(trader.account,security, xtconstant.STOCK_BUY, g.amount, xtconstant.FIX_PRICE, price2, strategy_name, remark) context.portfolio.positions[security].total_amountg.amountif x !None:hpq.log.info(context.current_dt 买入: %s ,数量:%d,买入价格:%.2f,成交资金%0.2f%(security,x.amount,price,x.amount*price))amoscontext.portfolio.positions[security].closeable_amount #可卖数量if SELL0 and amos0 and context.onlybuyFalse:price2round(price*(1-g.hd),2)xorder_target(security,0,pprice2)context.portfolio.positions[security].issellTrueorder_id trader.xt_trader.order_stock(trader.account,security, xtconstant.STOCK_SELL, amos, xtconstant.FIX_PRICE, price2, strategy_name, remark) hpq.log.info(context.current_dt 卖出: %s ,数量:%d,卖出价格:%.2f,成交资金%0.2f%(security,amos,price2,amos*price2))context.portfolio.positions[security].total_amount0endtime datetime.datetime.now()costtime(endtime - starttime).secondst1costtime-int(costtime/60)*60t2int(costtime/60)-int(int(costtime/60)/60)*60t3int(int(costtime/60)/60)print(花费时间%d:%d:%d%(t3,t2,t1)) 上面给了出了使用指标公式实现miniQMT全自动交易如果没有miniQMT也可以生成easytrader自动交易策略。 后面我们将介绍更多的量化交易技术。 超越自己是我的每一步我的进步就是你的进步
http://www.w-s-a.com/news/692932/

相关文章:

  • 石家庄招聘哪个网站做的好网站设计建设公司服务商
  • 建设公司网站大概需要多少钱建站平台和网站开发的区别
  • 淄川区住房和城乡建设局网站门户网站模板源码下载
  • 室内设计公司 网站建设建站塔山双喜
  • 网站建设属于什么经营范围销售网站开发业务
  • 企业建站系统平台优秀网站作品截图
  • 杭州品牌网站制作wordpress多域名移动主题
  • 北京网站网站建设icp备案 网站备案
  • 长春网站公司哪家好电子商务网站建设作文
  • 网站开发php程序员网上店铺怎么运营
  • mip网站怎么做匹配h5婚纱摄影网站模板
  • 怎么注册建设公司网站域名历史价格查询
  • 爱站网seo工具包互联网软件开发工程师
  • 百度站长工具平台登录郑州seo规则
  • 财税公司做网站精品建站教程
  • 建设区块链网站区块链开发平台有哪些
  • 青年人爱看的网站ie显示wordpress网页不完整
  • 优惠券推广网站怎么做青岛正规网站建设哪家便宜
  • 怎么搞一个服务器建设网站wordpress页眉编辑
  • 计算机企业网站建设论文流量平台是什么意思
  • 成都建设网站公司哪家好上海有名的广告公司
  • 收录优美图片找不到了整站seo优化一般多少钱
  • 大型网站建设哪家好汉川网页设计
  • 深圳品牌策划公司推荐南昌网站怎么做seo
  • 滨州做微商城网站备案时暂时关闭网站
  • 手机网站样式代码网站是怎样制作的
  • 任务发布网站建设苏州园区房价
  • 网站的认识知识付费做的最好的平台
  • 企业电子商务网站设计的原则深圳的网站建设公司怎么样
  • 个人网站趋向wordpress图片搬家