亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

用python的matplotlib和numpy庫繪制股票K線均線和成交量

系統(tǒng) 2956 0

? ? ?在用python的matplotlib和numpy庫繪制股票K線均線的整合效果(含從網(wǎng)絡(luò)接口爬取數(shù)據(jù)和驗證交易策略代碼)一文里,我講述了通過爬蟲接口得到股票數(shù)據(jù)并繪制出K線均線圖形的方式,在本文里,將在此基礎(chǔ)上再引入成交量效果圖,并結(jié)合量價理論,給出并驗證一些交易策略。

1?成交量對量化分析的意義

? ? 美國的股市分析家葛蘭碧(Joe Granville)在他所著的《股票市場指標(biāo)》一書里提出著名的“量價理論”。“量價理論”的核心思想是,任何對股價的分析,如果離開了對成交量的分析,都將是無本之木,無水之源,因為成交量的增加或萎縮都表現(xiàn)出一定的股價趨勢。

? ? 成交量是指時間單位內(nèi)已經(jīng)成交的股數(shù)或總手?jǐn)?shù)。成交量能反應(yīng)出股市交易中的供求關(guān)系,其中道理是比較淺顯易懂的,當(dāng)股票供不應(yīng)求時,大家爭相購買,成交量就很大了,反之當(dāng)供過于求時,則說明市場交易冷淡,成交量必然萎縮。

? ? 廣義的成交量包括成交股數(shù)(Volumn或Vol)、成交金額(AMOUNT,時間單位內(nèi)已經(jīng)成交的總金額數(shù))和換手率(TUN,股票每天成交量除以股票的流通總股本所得的比率),而狹義則是指成交股數(shù)。我們用yahoo接口得到的數(shù)據(jù)里,有表示成交股數(shù)的Volumn列,其中的單位是“手”,一手為100股,在本部分里,我們是通過Volumn列數(shù)據(jù)繪制股票的成交量信息。

2?引入成交量

? ? 在K線和均線整合成交量的效果圖里,出于美觀的考慮,我們對整合的效果提出了如下三點要求。

? ? 第一,繪制上下兩個子圖,上圖放K線和均線,下圖放成交量效果。

? ? 第二,上下兩個子圖共享x軸,也就是說,兩者x軸的刻度標(biāo)簽和間隔應(yīng)該是一樣的。

? ? 第三,通過柱狀圖來繪制成交量圖,如果當(dāng)天股票上漲,成交量圖是紅色,下跌則是綠色。? ?

? ? 在如下的drawKMAAndVol.py案例,我們將實現(xiàn)增加成交量圖的效果。

            1    
            
              #
            
            
              !/usr/bin/env python
            
            
2    
            
              #
            
            
              coding=utf-8
            
            
3    
            
              import
            
            
               pandas as pd

            
            4    
            
              import
            
            
               matplotlib.pyplot as plt 

            
            5    
            
              from
            
             mpl 
            
              import
            
            
               candlestick_ochl

            
            6    
            
              from
            
             matplotlib 
            
              import
            
            
               MultipleLocator

            
            7    
            
              #
            
            
              根據(jù)指定代碼和時間范圍,獲取股票數(shù)據(jù)
            
            
8    df = pd.read_csv(
            
              '
            
            
              D:/stockData/ch7/600895.csv
            
            
              '
            
            ,encoding=
            
              '
            
            
              gbk
            
            
              '
            
            
              )

            
            9    
            
              #
            
            
              設(shè)置大小,共享x坐標(biāo)軸
            
            
10    figure,(axPrice, axVol) = plt.subplots(2, sharex=True, figsize=(15,8
            
              ))

            
            11    
            
              #
            
            
              調(diào)用方法,繪制K線圖 
            
            
12    candlestick_ochl(ax = axPrice,          opens=df[
            
              "
            
            
              Open
            
            
              "
            
            ].values, closes=df[
            
              "
            
            
              Close
            
            
              "
            
            ].values,                 highs=df[
            
              "
            
            
              High
            
            
              "
            
            ].values, lows=df[
            
              "
            
            
              Low
            
            
              "
            
            
              ].values,

            
            13                      width=0.75, colorup=
            
              '
            
            
              red
            
            
              '
            
            , colordown=
            
              '
            
            
              green
            
            
              '
            
            
              )

            
            14    axPrice.set_title(
            
              "
            
            
              600895張江高科K線圖和均線圖
            
            
              "
            
            )
            
              #
            
            
              設(shè)置子圖標(biāo)題
            
            
15    df[
            
              '
            
            
              Close
            
            
              '
            
            ].rolling(window=3).plot(ax=axPrice,color=
            
              "
            
            
              red
            
            
              "
            
            ,label=
            
              '
            
            
              3天均線
            
            
              '
            
            
              )

            
            16    df[
            
              '
            
            
              Close
            
            
              '
            
            ].rolling(window=5).plot(ax=axPrice,color=
            
              "
            
            
              blue
            
            
              "
            
            ,label=
            
              '
            
            
              5天均線
            
            
              '
            
            
              )

            
            17    df[
            
              '
            
            
              Close
            
            
              '
            
            ].rolling(window=10).plot(ax=axPrice,color=
            
              "
            
            
              green
            
            
              "
            
            ,label=
            
              '
            
            
              10天均線
            
            
              '
            
            
              )

            
            18    axPrice.legend(loc=
            
              '
            
            
              best
            
            
              '
            
            ) 
            
              #
            
            
              繪制圖例
            
            
19    axPrice.set_ylabel(
            
              "
            
            
              價格(單位:元)
            
            
              "
            
            
              )

            
            20    axPrice.grid(True) 
            
              #
            
            
              帶網(wǎng)格線
            
            
21    
            
              #
            
            
              如下繪制成交量子圖
            
            
22    
            
              #
            
            
              直方圖表示成交量,用for循環(huán)處理不同的顏色
            
            
23    
            
              for
            
             index, row 
            
              in
            
            
               df.iterrows():

            
            24        
            
              if
            
            (row[
            
              '
            
            
              Close
            
            
              '
            
            ] >= row[
            
              '
            
            
              Open
            
            
              '
            
            
              ]):

            
            25            axVol.bar(row[
            
              '
            
            
              Date
            
            
              '
            
            ],row[
            
              '
            
            
              Volume
            
            
              '
            
            ]/1000000,width = 0.5,color=
            
              '
            
            
              red
            
            
              '
            
            
              )

            
            26        
            
              else
            
            
              :    

            
            27            axVol.bar(row[
            
              '
            
            
              Date
            
            
              '
            
            ],row[
            
              '
            
            
              Volume
            
            
              '
            
            ]/1000000,width = 0.5,color=
            
              '
            
            
              green
            
            
              '
            
            
              )

            
            28    axVol.set_ylabel(
            
              "
            
            
              成交量(單位:億手)
            
            
              "
            
            )
            
              #
            
            
              設(shè)置y軸標(biāo)題
            
            
29    axVol.set_title(
            
              "
            
            
              600895張江高科成交量
            
            
              "
            
            )
            
              #
            
            
              設(shè)置子圖的標(biāo)題
            
            
30    axVol.set_ylim(0,df[
            
              '
            
            
              Volume
            
            
              '
            
            ].max()/100000000*1.2)
            
              #
            
            
              設(shè)置y軸范圍
            
            
31    xmajorLocator = MultipleLocator(5) 
            
              #
            
            
              將x軸主刻度設(shè)置為5的倍數(shù)
            
            
32
            
                  axVol.xaxis.set_major_locator(xmajorLocator)

            
            33    axVol.grid(True) 
            
              #
            
            
              帶網(wǎng)格線
            
            
34    
            
              #
            
            
              旋轉(zhuǎn)x軸的展示文字角度
            
            
35    
            
              for
            
             xtick 
            
              in
            
            
               axVol.get_xticklabels():

            
            36        xtick.set_rotation(15
            
              )

            
            37    plt.rcParams[
            
              '
            
            
              font.sans-serif
            
            
              '
            
            ]=[
            
              '
            
            
              SimHei
            
            
              '
            
            
              ]

            
            38    plt.show()
          

? ? 從第8行到第20行,我們一方面是從csv文件里讀取數(shù)據(jù),另一方面在第一個子圖里繪制了K線和均線圖。這部分的代碼和之前很相似,不過請大家注意兩個點。

? ? 第一,在第10行里,不僅設(shè)置了繪圖區(qū)域的大小,更通過sharex=True語句,設(shè)置了axPrice和axVol這兩個子圖共享x軸。

? ? 第二,第二,在第14、18、19和第20行,由于是在K線圖和均線圖的axPrice子圖里操作,所以若干方法的調(diào)用主體是axPrice對象,而不是之前的pyplot.plt對象。

? ? 從第23行到第36行里,我們在axVol子圖里繪制了成交量圖的效果。請大家注意第23行到第27行的for循環(huán),在其中,我們通過第24行的if語句,比較收盤價和開盤價,以判斷當(dāng)天股票是漲是跌,在此基礎(chǔ)上,通過第25行或第27行的bar方法,設(shè)置當(dāng)日成交量圖的填充顏色。從上述代碼能看出,成交量是在自于csv文件里的Volume列。

? ? 在繪制成交量圖的時候有兩個細(xì)節(jié)請大家注意一下。

? ? 第一,在第25行、第27行和第30行里,當(dāng)我們設(shè)置y軸的刻度值和范圍時,我們除以了一個相同的數(shù),這是因為在第28行我們設(shè)置y軸文字時,指定了y軸成交量的單位是“億手“。

? ? 第二, 本次是通過第35行和第36行的for循環(huán),設(shè)置了“x軸文字旋轉(zhuǎn)”的效果,從代碼里我們能看到,本案例中的旋轉(zhuǎn)角度是15度。

? ? 上述代碼的運行效果如下圖所示,從中大家能看兩個x軸刻度一致的子圖,且在成交量子圖里,上漲日和下跌日的成交量填充色分別是紅色和綠色。

用python的matplotlib和numpy庫繪制股票K線均線和成交量的整合效果(含量化驗證交易策略代碼)_第1張圖片

3 成交量與股價的關(guān)系

? ??成交量和股價間也存在著八大規(guī)律,通過下圖,我們能感受到這些規(guī)律,其中縱坐標(biāo)表示價(即股價),橫坐標(biāo)表示量(即成交量)。

用python的matplotlib和numpy庫繪制股票K線均線和成交量的整合效果(含量化驗證交易策略代碼)_第2張圖片

? ? 我們能看出量價之間的八種關(guān)系,即量增價平、量增價升、量平價升、量縮價升、量減價平、量縮價跌、量平價跌、量跌價升,隨著上述周期過程,股價也完成了一個從漲到跌的完整循環(huán),下面我們來具體解釋一下。

? ? 1.量增價平:股價經(jīng)過持續(xù)下跌進入到低位狀態(tài),出現(xiàn)了成交量增加但股價平穩(wěn)的現(xiàn)象,此時不同天的成交量高度落差可能比較明顯,這說明該股在底部積聚上漲動力。

? ? 2.量增價升:成交量在低價位區(qū)持續(xù)上升,同時伴隨著股價上漲趨勢,這說明股價上升得到了成交量的支撐,后市將繼續(xù)看好,這是中短線的買入信號。

? ? 3.量平價升:在股價持續(xù)上漲的過程中,如果多日的成交量保持等量水平,建議在這一階段中可以適當(dāng)增加倉位。

? ? 4.量縮價升:成交量開始減少,但股價依然在上升,此時應(yīng)該視情況繼續(xù)持股。但如果還沒有買入的投資者就不宜再重倉介入,因為股價已經(jīng)有了一定的漲幅,價位開始接近上限。

? ? 5.量減價平:股價經(jīng)長期大幅度上漲后,成交量顯著減少,股價也開始橫向調(diào)整不再上升,這是高位預(yù)警的信號。這個階段里一旦有風(fēng)吹草動,比如突然拉出大陽線和大陰線,建議應(yīng)出貨離場,做到落袋為安。

? ?6.量縮價跌:成交量在高位繼續(xù)減少,股價也開始進入下降通道,這是明確的賣出信號。如果還出現(xiàn)縮量陰跌,這說明股價底部尚遠,不會輕易止跌。

? ? 7.量平價跌:成交量停止減少,但股價卻出現(xiàn)急速下滑現(xiàn)象,這說明市場并沒有形成一致看空的共識。股諺有“多頭不死,跌勢不止“的說法,出現(xiàn)“量平價跌”的情況,說明主力開始逐漸退出市場,這個階段里,應(yīng)繼續(xù)觀望或者出貨,別輕易去買入以所謂的“搶反彈”。

? ? 8. 量增價跌:股價經(jīng)長期大幅下跌之后,有可能出現(xiàn)成交量增加的情況,此時的操作原則是建議賣出,或者空倉觀望。如果低價區(qū)成交量有增加,則說明有資金在此價位區(qū)間接盤,預(yù)示后期有望形成底部并出現(xiàn)反彈。但如果出現(xiàn)量增價跌,則建議應(yīng)清倉出局。

? ? 在下文里,我們將通過Python語言驗證量價理論中的兩個規(guī)則。

4 驗證“量增價平“的買點

? ??在如下的calBuyPointByVol.py案例中,我們將驗證“量增價平“的買點。在這段代碼里我們做了三件事,第一是通過yahoo接口得到了指定股票指定范圍內(nèi)的交易數(shù)據(jù),第二通過pandas接口保存得到的數(shù)據(jù),以便日后驗證,第三通過遍歷dataframe對象,計算量和價的關(guān)系,從而獲得買點日期。? ??

            1    
            
              #
            
            
              !/usr/bin/env python
            
            
2    
            
              #
            
            
              coding=utf-8
            
            
3    
            
              import
            
            
               pandas_datareader

            
            4    
            
              import
            
            
               pandas as pd

            
            5    
            
              import
            
            
               numpy as np

            
            6    
            
              #
            
            
              漲幅是否大于指定比率
            
            
7    
            
              def
            
            
               isMoreThanPer(lessVal,highVal,per):

            
            8        
            
              if
            
             np.abs(highVal-lessVal)/lessVal>per/100
            
              :

            
            9            
            
              return
            
            
               True

            
            10        
            
              else
            
            
              :

            
            11            
            
              return
            
            
               False        

            
            12    
            
              #
            
            
              漲幅是否小于指定比率
            
            
13    
            
              def
            
            
               isLessThanPer(lessVal,highVal,per):

            
            14        
            
              if
            
             np.abs(highVal-lessVal)/lessVal
            
              :
15            
              
                return
              
              
                 True

              
              16        
              
                else
              
              
                :

              
              17            
              
                return
              
              
                 False

              
              18    code=
              
                '
              
              
                600895.ss
              
              
                '
              
              
19    stock = pandas_datareader.get_data_yahoo(code,
              
                '
              
              
                2018-09-01
              
              
                '
              
              ,
              
                '
              
              
                2018-12-31
              
              
                '
              
              
                )

              
              20    
              
                #
              
              
                刪除最后一行,因為get_data_yahoo會多取一天數(shù)據(jù)
              
              
21    stock.drop(stock.index[len(stock)-1],inplace=
              
                True)

              
              22    
              
                #
              
              
                保存在本地
              
              
23    stock.to_csv(
              
                '
              
              
                D:\\stockData\ch7\\60089520181231.csv
              
              
                '
              
              
                )

              
              24    
              
                #
              
              
                從文件里得到數(shù)據(jù)
              
              
25    df = pd.read_csv(
              
                '
              
              
                D:/stockData/ch7/60089520181231.csv
              
              
                '
              
              ,encoding=
              
                '
              
              
                gbk
              
              
                '
              
              
                )

              
              26    cnt=
              
                0    

              
              27    
              
                while
              
               cnt<=len(df)-1
              
                :

              
              28        
              
                try
              
              
                :

              
              29            
              
                #
              
              
                規(guī)則1,連續(xù)三天收盤價變動不超過3%
              
              
30            
              
                if
              
               isLessThanPer(df.iloc[cnt][
              
                '
              
              
                Close
              
              
                '
              
              ],df.iloc[cnt+1][
              
                '
              
              
                Close
              
              
                '
              
              ],3) 
              
                and
              
               isLessThanPer(df.iloc[cnt][
              
                '
              
              
                close
              
              
                '
              
              ],df.iloc[cnt+2][
              
                '
              
              
                Close
              
              
                '
              
              ],3
              
                ) :

              
              31                
              
                #
              
              
                規(guī)則2,連續(xù)三天成交量漲幅超過75%
              
              
32                
              
                if
              
               isMoreThanPer(df.iloc[cnt][
              
                '
              
              
                Volume
              
              
                '
              
              ],df.iloc[cnt+1][
              
                '
              
              
                volume
              
              
                '
              
              ],75) 
              
                and
              
               isMoreThanPer(df.iloc[cnt][
              
                '
              
              
                Volume
              
              
                '
              
              ],df.iloc[cnt+2][
              
                '
              
              
                Volume
              
              
                '
              
              ],75
              
                ) :

              
              33                    
              
                print
              
              (
              
                "
              
              
                Buy Point on:
              
              
                "
              
               + df.iloc[cnt][
              
                '
              
              
                Date
              
              
                '
              
              
                ])

              
              34        
              
                except
              
              
                : 

              
              35            
              
                pass
              
                              
36        cnt=cnt+1
            
          

? ??在第7行定義的isMoreThanPer方法里,我們比較了高價和低價,以判斷是否超過由參數(shù)per指定的漲幅。在第13行的isLessThanPer方法里,我們判斷了跌幅是否超過per指定的范圍。由于這兩個功能經(jīng)常會用到,所以我們把它們封裝成函數(shù)。

? ? 從第18行到第25行,我們完成了獲取并保存數(shù)據(jù)的動作,并用df對象保存了待遍歷的股票數(shù)據(jù)(即張江高科2018-09-01到2018-12-31的數(shù)據(jù))。

? ? 在第27行到第36行按日期遍歷股票數(shù)據(jù)時,我們制定了如下規(guī)則,連續(xù)三天股票的收盤價變動范圍不超過5%(即價平)且3天成交量的漲幅過75%(即量增),把滿足條件的日期打印出來。 運行后,我們能看到11月2日這個買點。

? ? 在之前代碼基礎(chǔ)上改寫下,把時間范圍改成2018-09-01到2018-12-31,再運行下,能看到如下圖所示的效果。? ?? 用python的matplotlib和numpy庫繪制股票K線均線和成交量的整合效果(含量化驗證交易策略代碼)_第3張圖片

? ? 從中我們能看到驗證后的結(jié)果:在11月2日之后,股票的漲幅比較明顯,確實是個合適的買點,從中我們能看出 “量增價平”的指導(dǎo)意義。

5 驗證“量減價平“的賣點

? ??在如下calSellPointByVol.py案例中,我們同樣是分析張江高科2018-09-01到2018-12-31的交易數(shù)據(jù),本次我們制定的策略是,第一,還是連續(xù)三天股票的收盤價變動范圍不超過5%(即價平),第二,較第一日相比,第二日和第三日的成交量下降幅度超過75%(即量減)。? ??

            1    
            
              #
            
            
              !/usr/bin/env python
            
            
2    
            
              #
            
            
              coding=utf-8
            
            
3    
            
              import
            
            
               pandas_datareader

            
            4    
            
              import
            
            
               pandas as pd

            
            5    
            
              import
            
            
               numpy as np

            
            6    
            
              #
            
            
              漲幅是否大于指定比率
            
            
7    
            
              def
            
            
               isMoreThanPer(lessVal,highVal,per):

            
            8        
            
              if
            
             np.abs(highVal-lessVal)/lessVal>per/100
            
              :

            
            9            
            
              return
            
            
               True

            
            10        
            
              else
            
            
              :

            
            11            
            
              return
            
            
               False        

            
            12    
            
              #
            
            
              漲幅是否小于指定比率
            
            
13    
            
              def
            
            
               isLessThanPer(lessVal,highVal,per):

            
            14        
            
              if
            
             np.abs(highVal-lessVal)/lessVal
            
              :
15            
              
                return
              
              
                 True

              
              16        
              
                else
              
              
                :

              
              17            
              
                return
              
              
                 False

              
              18    
              
                #
              
              
                本次直接從文件里得到數(shù)據(jù)
              
              
19    df = pd.read_csv(
              
                '
              
              
                D:/stockData/ch7/60089520181231.csv
              
              
                '
              
              ,encoding=
              
                '
              
              
                gbk
              
              
                '
              
              
                )

              
              20    cnt=
              
                0    

              
              21    
              
                while
              
               cnt<=len(df)-1
              
                :

              
              22        
              
                try
              
              
                :

              
              23            
              
                #
              
              
                規(guī)則1,連續(xù)三天收盤價變動不超過3%
              
              
24            
              
                if
              
               isLessThanPer(df.iloc[cnt][
              
                '
              
              
                Close
              
              
                '
              
              ],df.iloc[cnt+1][
              
                '
              
              
                Close
              
              
                '
              
              ],3) 
              
                and
              
               isLessThanPer(df.iloc[cnt][
              
                '
              
              
                Close
              
              
                '
              
              ],df.iloc[cnt+2][
              
                '
              
              
                close
              
              
                '
              
              ],3
              
                ) :

              
              25                
              
                #
              
              
                規(guī)則2,連續(xù)三天成交量跌幅超過75%
              
              
26                
              
                if
              
               isMoreThanPer(df.iloc[cnt+1][
              
                '
              
              
                Volume
              
              
                '
              
              ],df.iloc[cnt][
              
                '
              
              
                Volume
              
              
                '
              
              ],75) 
              
                and
              
               isMoreThanPer(df.iloc[cnt+2][
              
                '
              
              
                Volume
              
              
                '
              
              ],df.loc[cnt][
              
                '
              
              
                Volume
              
              
                '
              
              ],75
              
                ) :

              
              27                    
              
                print
              
              (
              
                "
              
              
                Sell Point on:
              
              
                "
              
               + df.iloc[cnt][
              
                '
              
              
                Date
              
              
                '
              
              
                ])

              
              28        
              
                except
              
              
                : 

              
              29            
              
                pass
              
                              
30        cnt=cnt+1
            
          

? ? 上述代碼和之前calBuyPointByVol.py案例很相似,只不過我們適當(dāng)變更了第26行判斷“成交量”的if條件。上述代碼運行后,我們能得到的賣點是2018-12-05,從上圖里我們能看出,在這段時間之后的若干交易日里,張江高科的股價確實有下跌現(xiàn)象。

6 求推薦,后文預(yù)告與版權(quán)說明

? ? 在本系列的后面文章中,將陸續(xù)通過python繪制成交量、KDJ、MACD、RSI,BIAS和OBV等指標(biāo),而且還會用Python編寫針對這些指標(biāo)的交易策略,敬請關(guān)注。

? ? 本文用了我將近2個小時,如果大家感覺好,請幫忙推薦下。

? ??關(guān)于轉(zhuǎn)載有如下的說明。

? ? 1 本文文字和代碼均屬原創(chuàng),可轉(zhuǎn)載,但謝絕用于商業(yè)用戶。

? ? 2 轉(zhuǎn)載時請用 鏈接 的方式,給出原文出處,同時寫明原作者是hsm_computer。

? ? 3 在轉(zhuǎn)載時,請原文轉(zhuǎn)載 ,如要 在轉(zhuǎn)載修改本文,請事先告知,謝絕在轉(zhuǎn)載時通過修改本文達到有利于轉(zhuǎn)載者的目的。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 在线色综合 | 激情综合五月亚洲婷婷 | 四虎在线影视在线影库 | 91最新在线观看 | 国产男女猛视频在线观看网站 | 日韩在线看片中文字幕不卡 | 麻豆久久婷婷国产综合五月 | 伊人久久中文字幕 | 欧美亚洲国产成人综合在线 | 性色视频| 国产精品久久福利新婚之夜 | 手机在线精品视频每日更新 | 口国产成人高清在线播放 | 精品国产高清自在线一区二区三区 | 2018天天操天天干 | 国产精品亚洲高清一区二区 | 欧美一级片网站 | 欧美一级成人免费大片 | 在线观看国产一区亚洲bd | 涩涩视频在线观看 | 国产精品一区二区三区久久 | 精品精品国产自在香蕉网 | 欧美日韩大尺码免费专区 | 精品特级一级毛片免费观看 | 天天夜夜狠狠 | 最新欧美一级视频 | 久久视频在线观看免费 | 国产精品视频专区 | 毛片免费视频 | 欧美国产亚洲一区 | 日日骑夜夜操 | 伊人热久久| 精品国产自在久久 | 四虎免费在线观看 | 欧美福利影院 | 亚洲精品国产精品国自产观看 | 麻豆国内精品欧美在线 | 四虎最新在线 | 超碰最新上传 | 国产激情一区二区三区 | 性欧美xo视频在线观看 |