mysql數據庫操作

連接mysql

from sqlalchemy import create_engine
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import pymssql
from scipy.interpolate import interp1dfrom datetime import timedelta
#正常顯示畫圖時出現的中文和負號
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] =False
#顯示所有列
pd.set_option('display.max_columns',None)
#顯示所有行
pd.set_option('display.max_rows',None)#連接數據庫
conn = pymssql.connect(host = '.',user ='sa',password = 'test',database = 'databasename',charset ='utf8')
engine = create_engine('mssql+pymssql://sa:test@127.0.0.1/databasename')

數據存入

#保存數據
df.to_sql(name = 'sheetname',con=engine,if_exists='append',index=False)

獲取數據

#獲取數據
sql = 'select * from stock_data '
df0 = pd.read_sql(sql,conn)

tushare獲取股票數據并存入

#獲取數據
def get_data(code,start,end):#設置tokentoken=''pro = ts.pro_api(token)df = pro.daily(ts_code =code,adj='qfq',start_date=start,end_date=end)return df#上傳數據
def insert_sql(data,db_name,if_exists='append'):try:data.to_sql(db_name,engine,index=False,if_exists= if_exists)except:pass

更新數據

#更新數據
def updata_sql(start,end,db_name):for code in get_coe():data=get_data(code,start,end)insert_sql(data,db_name)print(f'{start}:{end}期間數據已成功更新')

數據可視化?

#數據可視化
def plot_data(df):count_ = data_info.groupby('trade_date')['ts_code'].count()attr = count_.indexv1 = count_.valuesbar = Bar()bar.add('',at,v1,is_splitline_show=False,linewidth=2)return bar

篩選股票池

#篩選數據.制作股票池
def get_new_code(date):df0  = pro.stock_basic(exchange = '',list_status='L')df1 =  pro.daily(trade_date = date)df = pd.merge(df0,df1,on='ts_code')#print(df.head())df.info()
#剔除2017年以后上市的新股   df = df[df['list_date'].apply(int)<20200101]#剔除stdf = df[-df['name'].apply(lambda x:x.startswith('*ST'))]#剔除動態市盈率為負df = df[df.change>0]codes = df.ts_code.valuesreturn codes

查找指定股票

def find_stock(date):print(get_new_code(date))engine = create_engine('mssql+pymssql://sa:test@127.0.0.1/pos')df_all_data=pd.read_sql('stock_data',engine)f_code =[]for code in  get_new_code(date):try:data = df_all_data.loc[df_all_data.ts_code==code].copy()data.index= pd.to_datetime(data.trade_date)data=data.sort_index()data['ma_20'] = ta.MA(data.close,timeperiod=20)if data.iloc[-1]['close'] > data.iloc[-1]['ma_20']:print(code)f_code.append(code)except:passreturn f_code

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/449566.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449566.shtml
英文地址,請注明出處:http://en.pswp.cn/news/449566.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AutoHotkey調用VBA實現批量精確篩選數據透視表某字段內容。

如上圖&#xff0c;想在數據透視表中只顯示紅色區域的內容&#xff0c;手動勾選就比較繁瑣。 實現思路&#xff1a; 先復制紅色的內容。鼠標停留在數據透視表【型號】列的任意數據上&#xff08;通過該單元格可以獲取數據透視表和字段&#xff09;由于數據透視表的字段不能全部…

SQL中的case when then else end用法

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Case具有兩種格式。簡單Case函數和Case搜索函數。 --簡單Case函數 CASE sexWHEN 1 THEN 男WHEN 2 THEN 女 ELSE 其他 END --Case搜索函數…

HEVC/H265 性能分析

HEVC/H265 標準中的目標是&#xff1a;H264的碼率一般&#xff0c;質量一樣&#xff0c;是否達到&#xff0c;數據說話。 下面是視頻編解碼大師測試數據&#xff1a; HEVC: is it really twice as good as H.264? The new standard for video compression, High Efficiency V…

“90后”臺灣籍乘務長的第一個大陸春運

中新網上海1月25日電 題&#xff1a;“90后”臺灣籍乘務長的第一個大陸春運 中新網記者 李佳佳 黃佳瑩&#xff0c;“90后”的臺北妹子。年紀雖小&#xff0c;資歷卻不淺&#xff0c;2018年她晉升為春秋航空客艙部乘務長&#xff0c;成為大陸首批臺灣籍乘務長之一。“90后”臺灣…

mysql+tushare搭建本地數據庫

創建股票數據庫 #!/usr/bin/env python # -*- coding: utf-8 -*- # Date : 2018-09-04 14:34:59 # Author : Michael Li # Version : $V2.0$import pandas as pd import numpy as np import datetime import random import pymssql from sqlalchemy import create_engine …

hbase單機搭建

一、下載 https://hbase.apache.org/downloads.html  2.1.3版本 解壓&#xff0c;拷貝到文件夾 /hbase/hbase-2.1.3 設置HBASE_HOME環境變量&#xff0c;把它加到path環境變量中去 source /etc/profile 二、配置 &#xff11;.在/data下創建目錄 mkdir /data/hbase mkdir /d…

mysql查詢報錯: ORDER BY clause is not in GROUP BY..this is incompatible with sql_mode=only_full_group_by

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 我的情況 &#xff1a; Mysql 5.7.21 版本運行sql 報錯如題&#xff0c;同樣的 sql 直接本地運行不報錯。 但是當連接的是服務器上的 …

多股票投資組合+馬科維茨計算組合

import matplotlib.pyplot as plt from pandas import read_excel import numpy as np import tushare as ts import pandas as pd import datetime token prots.pro_api(token) 獲取財務數據 #獲取財務數據 ticker_list [601318.SH,601336.SH,601398.SH,601888.SH,603993.S…

并發編程(十六)——java7 深入并發包 ConcurrentHashMap 源碼解析

以前寫過介紹HashMap的文章&#xff0c;文中提到過HashMap在put的時候&#xff0c;插入的元素超過了容量&#xff08;由負載因子決定&#xff09;的范圍就會觸發擴容操作&#xff0c;就是rehash&#xff0c;這個會重新將原數組的內容重新hash到新的擴容數組中&#xff0c;在多線…

[邊分治+線段樹合并]「CTSC2018」暴力寫掛

題目梗概 給出兩棵1為根的樹,求\(d[x]d[y]-d[lca(x,y)]-d[lca(x,y)]\)的最大值 解題思路 套路化簡之后\((d[x]d[y]dis(x,y)-2*d[lca(x,y)])/2\) 第二棵樹上的lca化不掉,所以考慮在第二棵上枚舉lca 先說說這題的解法,邊分樹的合并. 邊分和點分有什么區別,邊分在合并類似\(d[x]d[…

HEVC/H265 文檔獲得

HEVC/H265文檔是很重要的標準&#xff0c;因為代碼有時由于效率問題而修改&#xff0c;這是最重要的參考&#xff1a; HEVC approved by ITU-T and ISO/IEC "Geneva, 25 January 2013 – A new video coding standard building on the PrimeTime Emmy award winning IT…

期權計算隱含波動率

牛頓迭代法 from scipy.stats import norm import numpy as np def bscall(S,K,r,sigma,t):d1(np.log(S/K)(r0.5*sigma**2)*t)/(sigma*np.sqrt(t))d2d1-sigma*np.sqrt(t)return S*norm.cdf(d1)-K*np.exp(-r*t)*norm.cdf(d2) def bsput(S,K,r,sigma,t):d1(np.log(S/K)(r0.5*sigm…

進擊的二維碼 | ArcBlock 課堂預告

ArcBlock Technical Learning Series 第十七期進擊的二維碼本周三&#xff0c;1 月 30 日下午 1:30 時 &#xff08;美國太平洋時間 29日下午 21:30 時&#xff09;&#xff0c;由 ArcBloc 后端工程師孫博山 授課。復制代碼二維碼源于日本,如今世界各國都在使用。一張簡單的二維…

期權數據計算

判斷是否為調倉日 ef is_adjust_day(self, dom1):判斷是否是每月的調倉日。 :params int dom: 每月第幾個交易日進行調倉&#xff0c;缺省是第1個交易日。:return: 如果是調倉日&#xff0c;返回True&#xff0c;否則返回False。ret Falsetoday self.datetime.date()…

由Docker的MySQL官方鏡像配置的容器無法啟動問題解決辦法(修改配置后無法啟動)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 為了方便閱讀&#xff0c;我在原文基礎上加了一些批注&#xff0c;說明我自己的情況&#xff0c;用紅色標示。 這篇文章記錄了我在使用…

HEVC/H265 主要設計者談HEVC/H265

Overview of the High Ef?ciency Video Coding (HEVC) Standard Gary J. Sullivan, Fellow, IEEE, Jens-Rainer Ohm, Member, IEEE, Woo-Jin Han, Member, IEEE, and Thomas Wiegand, Fellow, IEEE Gary J. Sullivan是H263&#xff…

阿里云 Aliplayer高級功能介紹(九):自動播放體驗

基本介紹經常會碰到客戶詢問&#xff0c;為什么我設置了autoplay為true&#xff0c;但是沒有自動播放&#xff0c;每次都要向客戶解釋這個是瀏覽器從用戶體驗角度考慮做的限制&#xff0c;客戶會繼續詢問那我要怎么做&#xff1f; 針對這個問題Aliplayer也專們做過優化&#xf…

指數定投(行不行學習)

import tushare as ts import pandas as pd import numpy as np from scipy import stats import tushare as ts import matplotlib.pyplot as plt %matplotlib inline #正常顯示畫圖時出現的中文和負號 from pylab import mpl mpl.rcParams[font.sans-serif][SimHei] mpl…

centOS安裝python3.7.2

1.查看centos中自帶的Python地址&#xff1a;which python&#xff08;一般在 /usr/bin/python&#xff09; 2.切換到python安裝目錄&#xff1a;cd /usr/bin 3.查看對應的Python版本指向&#xff1a;ls -l python* 4.創建一個空目錄&#xff1a;mkdir /usr/local/python3 5.…

有進度條圓周率Π計算

圓周率π的計算 一、圓周率π的簡介 圓周率的介紹圓周率用希臘字母 π&#xff08;讀作pi&#xff09;表示&#xff0c;是一個常數&#xff08;約等于3.141592654&#xff09;&#xff0c;是代表圓周長和直徑的比值。它是一個即無限不循環小數&#xff0c;在日常生活中&#xf…