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

已经有域名 怎么修改网站网站推广找客户

已经有域名 怎么修改网站,网站推广找客户,2023年最火的电商平台,上海网站建设shwzzz书接上两回 柒拾- tushare 模拟策略交易 #xff08;一#xff09; 柒拾壹- tushare 模拟策略交易 #xff08;二#xff09; 开始 终于我们可以可以来进行模拟了 复杂 的我不会#xff0c;所以就写个最简单的策略吧#xff1a; 买入条件 比两年前是上升的比一年前…书接上两回 柒拾- tushare 模拟策略交易 一 柒拾壹- tushare 模拟策略交易 二 开始 终于我们可以可以来进行模拟了 复杂 的我不会所以就写个最简单的策略吧 买入条件 比两年前是上升的比一年前是上升的比一个月前上升更下降的区间在 ± 0.38% 内比昨天上涨 0.1% 以上 0.5% 以下 卖出条件 如果当前下跌 5% 则全卖出 进行模拟 设计模拟时间 先进行模拟时间即回测多少天 strStartDate 20230101 strEndDate 20240407就是从 2023年的1月1日开始进行策略2024年4月7日结束 选股范围 strIndustry 银行只选择银行股进行回测 中间计算 因为需要计算 2年、1年、半年等时间窗口各股票的涨跌用 Python 比较麻烦于是使用 SQL 进行计算 完整代码 Descripttion: 就简单回测 Version: 1.0 Author: BerryBC Date: 2024-02-18 12:09:31 LastEditors: BerryBC LastEditTime: 2024-04-07 11:07:43 import datetime from Lib.DBConn import claDBConn from Lib.BackTestingDailyDeal import claBackTestingDailyDealbtDaily claBackTestingDailyDeal(研究银行股, 根据时间窗口看追涨, 100000) dbConn claDBConn()strStartDate 20240101 strEndDate 20240407strStock 601988.SHstrMaxDate # 时间序列 strSQLTime SELECT * FROM tb_calendar WHERE trade_date \strStartDate AND trade_date strEndDate ORDER BY trade_date listCal dbConn.ReturnSQLData(strSQLTime)# 打印快照 btDaily.AssetSnapshot(listCal[0][0])# 循环验证 for tubDay in listCal:# 计算日期strNowDate tubDay[0]strMaxDatestrNowDate.::::..::::::::.:::::::::::..:::::::::::::::::::::::.::::::::::::::::::::::::....::::::::::::.::::::::::::::::::::::::::::: .:::.:::: ::::: .::::::::..:::: :::: .:::::::::::..::: ::::: .::::::::: :::::..:: :::::.::::::::: :::::..:: :::::::::::::: ::::....::: :::::::::::: ::.:. ::::::::: ::::...::::: :..# 追涨杀跌# # 每日数据# strSQLQuote SELECT * FROM tb_daily_stock_quote WHERE trade_date \# strNowDate AND ts_code strStock# listQuote dbConn.ReturnSQLData(strSQLQuote)# if listQuote[0][8] 0.2:# btDaily.BuyStock(strNowDate, strStock, 500,追涨)# elif listQuote[0][8] -0.1:# strSQLSell SELECT * FROM tb_bt_daily_tmp_my_stock_pool WHERE stock_code strStock AND bt_ind str(btDaily.intInd)# listSell dbConn.ReturnSQLData(strSQLSell)# if len(listSell) 0 and listSell[0][0] is not None:# btDaily.SellStock(strNowDate, strStock, listSell[0][2], 全部卖了).::::..::::::::.:::::::::::..:::::::::::::::::::::::.::::::::::::::::::::::::....::::::::::::.::::::::::::::::::::::::::::: .:::.:::: ::::: .::::::::..:::: :::: .:::::::::::..::: ::::: .::::::::: :::::..:: :::::.::::::::: :::::..:: :::::::::::::: ::::....::: :::::::::::: ::.:. ::::::::: ::::...::::: :..# 长期来看是否可以买# 针对某个行业的股票listPeriod [720,360,180,90,30,5]strIndustry 银行strEndDate DATE(datetime.datetime.strptime(strNowDate, %Y%m%d)).strftime(%Y-%m-%d)# 计算趋势中间表strSQLTruncate TRUNCATE TABLE TB_BT_MID_DAILY_PERIOD_TRENDdbConn.RunSQLOnce(strSQLTruncate)# 根据不同时间长度如2年、1年、半年等计算股价升降for intCalPeriod in listPeriod:strSQLInsert -- CREATE TABLE TB_BT_MID_DAILY_PERIOD_TREND asINSERT INTO TB_BT_MID_DAILY_PERIOD_TRENDWITH CHECK_STOCK_LIST AS (-- 获取行业对应的所有股票SELECTTS_CODE,NAME,INDUSTRY,EXCHANGEFROMTB_ALL_STOCK_LISTWHERE11AND INDUSTRY strIndustry)SELECTstr(intCalPeriod) AS DAY_GAP,strEndDate AS END_DATE,S_L_O.TS_CODE,S_L_O.NAME,S_L_O.INDUSTRY,S_L_O.EXCHANGE,-- 获取整体的上升下降趋势以及简单统计MIN(TTL_U.TRADE_DAY) AS TRADE_DAY,MIN(TTL_U.MIN_COLSE) AS MIN_COLSE,MIN(TTL_U.MAX_COLSE) AS MAX_COLSE,MIN(TTL_U.MIN_PCT_CHG) AS MIN_PCT_CHG,MIN(TTL_U.MAX_PCT_CHG) AS MAX_PCT_CHG,MIN(TTL_U.DOWN_DAY) AS DOWN_DAY,MIN(TTL_U.UP_DAY) AS UP_DAY,-- 期间内的最早收盘价以及最终收盘价MIN(TTL_U.BEGIN_CLOSE) AS BEGIN_CLOSE,MIN(TTL_U.END_CLOSE) AS END_CLOSE,(MIN(TTL_U.END_CLOSE) / MIN(TTL_U.BEGIN_CLOSE) - 1)*100 AS ALL_PCT_CHG,-- 期间内涨跌的天数占比MIN(TTL_U.UP_DAY) / MIN(TTL_U.TRADE_DAY) AS UP_DAY_PCT,MIN(TTL_U.DOWN_DAY) / MIN(TTL_U.TRADE_DAY) AS DOWN_DAY_PCT,MIN(TTL_U.END_CLOSE_PCT_C) AS END_CLOSE_PCT_CFROM((-- 整体统计趋势SELECTS_DQ.TS_CODE,COUNT(1) AS TRADE_DAY,MIN(S_DQ.CLOSE) AS MIN_COLSE,MAX(S_DQ.CLOSE) AS MAX_COLSE,MIN(S_DQ.PCT_CHG) AS MIN_PCT_CHG,MAX(S_DQ.PCT_CHG) AS MAX_PCT_CHG,COUNT(CASEWHEN S_DQ.PCT_CHG 0 THEN 1ELSE NULLEND) AS DOWN_DAY,COUNT(CASEWHEN S_DQ.PCT_CHG 0 THEN 1ELSE NULLEND) AS UP_DAY,NULL AS BEGIN_CLOSE,NULL AS END_CLOSE,NULL AS END_CLOSE_PCT_CFROMTB_CALENDAR S_TINNER JOIN TB_DAILY_STOCK_QUOTE S_DQON S_T.TRADE_DATE S_DQ.TRADE_DATEINNER JOIN CHECK_STOCK_LIST S_LISTON S_DQ.TS_CODE S_LIST.TS_CODEWHERE11AND S_T.TRADE_DATE_DT strEndDateAND S_T.TRADE_DATE_DT DATE_SUB(strEndDate, INTERVAL str(intCalPeriod) DAY)GROUP BYS_DQ.TS_CODE)UNION ALL(-- 计算时间窗口内最早那天的收盘价SELECTMIN_MID.TS_CODE,NULL AS TRADE_DAY,NULL AS MIN_COLSE,NULL AS MAX_COLSE,NULL AS MIN_PCT_CHG,NULL AS MAX_PCT_CHG,NULL AS DOWN_DAY,NULL AS UP_DAY,MIN_MID.CLOSE AS BEGIN_CLOSE,NULL AS END_CLOSE,NULL AS END_CLOSE_PCT_CFROM(SELECTS_DQ_MIN.TS_CODE,S_DQ_MIN.CLOSE,RANK() OVER(PARTITION BY S_DQ_MIN.TS_CODE ORDER BY S_T_MIN.TRADE_DATE_DT ASC) AS RNKFROMTB_CALENDAR S_T_MININNER JOIN TB_DAILY_STOCK_QUOTE S_DQ_MINON S_T_MIN.TRADE_DATE S_DQ_MIN.TRADE_DATEINNER JOIN CHECK_STOCK_LIST S_LISTON S_DQ_MIN.TS_CODE S_LIST.TS_CODEWHERE11AND S_T_MIN.TRADE_DATE_DT strEndDateAND S_T_MIN.TRADE_DATE_DT DATE_SUB(strEndDate, INTERVAL str(intCalPeriod) DAY)) MIN_MIDWHEREMIN_MID.RNK 1)UNION ALL(-- 计算当前收盘价SELECTMAX_MID.TS_CODE,NULL AS TRADE_DAY,NULL AS MIN_COLSE,NULL AS MAX_COLSE,NULL AS MIN_PCT_CHG,NULL AS MAX_PCT_CHG,NULL AS DOWN_DAY,NULL AS UP_DAY,NULL AS BEGIN_CLOSE,MAX_MID.CLOSE AS END_CLOSE,MAX_MID.PCT_CHG AS END_CLOSE_PCT_CFROM(SELECTS_DQ_MAX.TS_CODE,S_DQ_MAX.CLOSE,S_DQ_MAX.PCT_CHG,RANK() OVER(PARTITION BY S_DQ_MAX.TS_CODE ORDER BY S_T_MAX.TRADE_DATE_DT DESC) AS RNKFROMTB_CALENDAR S_T_MAXINNER JOIN TB_DAILY_STOCK_QUOTE S_DQ_MAXON S_T_MAX.TRADE_DATE S_DQ_MAX.TRADE_DATEINNER JOIN CHECK_STOCK_LIST S_LISTON S_DQ_MAX.TS_CODE S_LIST.TS_CODEWHERE11AND S_T_MAX.TRADE_DATE_DT strEndDateAND S_T_MAX.TRADE_DATE_DT DATE_SUB(strEndDate, INTERVAL str(intCalPeriod) DAY)) MAX_MIDWHEREMAX_MID.RNK 1)) TTL_UINNER JOIN CHECK_STOCK_LIST S_L_OON TTL_U.TS_CODE S_L_O.TS_CODEGROUP BYS_L_O.TS_CODE,S_L_O.NAME,S_L_O.INDUSTRY,S_L_O.EXCHANGEdbConn.RunSQLOnce(strSQLInsert)# 计算趋势strSQLQuote SELECTEND_DATE,TS_CODE,NAME,INDUSTRY,EXCHANGE,MIN(END_CLOSE) AS END_CLOSE,MIN(CASEWHEN DAY_GAP 720 THEN ALL_PCT_CHGELSE NULLEND) AS ALL_PCT_CHG_720,MIN(CASEWHEN DAY_GAP 360 THEN ALL_PCT_CHGELSE NULLEND) AS ALL_PCT_CHG_360,MIN(CASEWHEN DAY_GAP 180 THEN ALL_PCT_CHGELSE NULLEND) AS ALL_PCT_CHG_180,MIN(CASEWHEN DAY_GAP 90 THEN ALL_PCT_CHGELSE NULLEND) AS ALL_PCT_CHG_90,MIN(CASEWHEN DAY_GAP 30 THEN ALL_PCT_CHGELSE NULLEND) AS ALL_PCT_CHG_30,MIN(CASEWHEN DAY_GAP 5 THEN ALL_PCT_CHGELSE NULLEND) AS ALL_PCT_CHG_5,MIN(CASEWHEN DAY_GAP 720 THEN UP_DAY_PCTELSE NULLEND) AS UP_DAY_PCT_720,MIN(CASEWHEN DAY_GAP 360 THEN UP_DAY_PCTELSE NULLEND) AS UP_DAY_PCT_360,MIN(CASEWHEN DAY_GAP 180 THEN UP_DAY_PCTELSE NULLEND) AS UP_DAY_PCT_180,MIN(CASEWHEN DAY_GAP 90 THEN UP_DAY_PCTELSE NULLEND) AS UP_DAY_PCT_90,MIN(CASEWHEN DAY_GAP 30 THEN UP_DAY_PCTELSE NULLEND) AS UP_DAY_PCT_30,MIN(CASEWHEN DAY_GAP 5 THEN UP_DAY_PCTELSE NULLEND) AS UP_DAY_PCT_5,MIN(END_CLOSE_PCT_C) AS END_CLOSE_PCT_CFROMTB_BT_MID_DAILY_PERIOD_TRENDWHERE11AND END_DATE strEndDateGROUP BYEND_DATE,TS_CODE,NAME,INDUSTRY,EXCHANGElistQuote dbConn.ReturnSQLData(strSQLQuote)# 针对不同的股票看整体趋势再看买还是卖for listStockQuote in listQuote:# 买入条件# 1. 比两年前是上升的# 2. 比一年前是上升的# 3. 比一个月前上升更下降的区间在 ± 0.38% 内# 4. 比昨天上涨 0.1% 以上 0.5% 以下if listStockQuote[18] is not None and listStockQuote[6]0 and listStockQuote[7]0 and listStockQuote[10]0.38 and listStockQuote[10]-0.38 and listStockQuote[18]0.1 and listStockQuote[18]0.5:# 判断有没有持仓有则不买strSQLSell SELECT * FROM tb_bt_daily_tmp_my_stock_pool WHERE stock_code listStockQuote[1] AND bt_ind str(btDaily.intInd)listSell dbConn.ReturnSQLData(strSQLSell)if len(listSell) 0 :btDaily.BuyStock(strNowDate, listStockQuote[1], 1000,追涨)# 如果当前下跌 5% 则全卖出if listStockQuote[18] is not None and listStockQuote[18]-0.5 :strSQLSell SELECT * FROM tb_bt_daily_tmp_my_stock_pool WHERE stock_code listStockQuote[1] AND bt_ind str(btDaily.intInd)listSell dbConn.ReturnSQLData(strSQLSell)if len(listSell) 0 and listSell[0][0] is not None:btDaily.SellStock(strNowDate, listStockQuote[1], listSell[0][2], 全部卖了)# 打印快照 btDaily.AssetSnapshot(strMaxDate) 结果 不得不说结果实在让人忧伤我决定就不展示了 反正亏得裤衩都不剩了
http://www.pierceye.com/news/281021/

相关文章:

  • 企业网站备案资料样本自建网站要多少钱
  • 女生做网站推广常用的网站推广方法
  • 营销型网站建设公司哪家建设开封做网站公司汉狮
  • 烟台专业网站建设seo实战培训教程
  • 上海建设项目环保验收公示网站dw做网站首页长宽设置多少
  • 中山网站制作系统创意视差wordpress主题
  • 安康网站开发公司广州微网站建设哪家好
  • 网站建设企业官网源码被代运营骗了怎么追回
  • 网站服务器 重启用邮箱做网站
  • 网站建设修改建议书网站快速收录方法
  • 网站建设项目步骤网站空间可以换吗
  • 美食网站界面设计网页设计制作代码大全
  • 宁波网站建设托管网站正在建设维护中页面
  • 古色古香网站模板响应式布局网站
  • 网站建设制作设计开发福建网站开发文档撰写
  • 钢管公司网站建设国外平面设计欣赏网站
  • 网站建设如何销售济南专门做网站的公司
  • 2018年淘宝客网站怎么做iis网站建设中
  • 网站倒计时代码企业网站建设运营方案
  • 课程网站开发过程东莞外贸模板建站
  • asp.net 网站提速廊坊企业官网搭建
  • 网站开发全过程电商数据分析
  • 代理 指定网站 hostwordpress图片无限放大
  • 中材建设有限公司招标网站包装设计网课答案
  • python云服务器网站开发实例外贸小家电网站推广
  • 郑州做网站公司中天猫商城的商品来源
  • 织梦网站首页互联网保险平台排名
  • 免费做链接的网站做动画相册在哪个网站好
  • 做思维导图好看的网站可以做富集分析的网站
  • wordpress 媒体库 cos百度网站怎样优化排名