日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GitModel|Task04|随机模拟

發布時間:2024/3/7 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GitModel|Task04|随机模拟 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

  • 動手學隨機模擬
    • 1. 如何通過隨機模擬估計看漲期權的報酬分布
      • 1.1 金融知識:股票與看漲期權
      • 1.2 問題分析與確定建模思路
      • 1.3 如何模擬股票價格:布朗運動
    • 1.4 如何更真實地模擬股票價格:幾何布朗運動
      • 1.5 估計看漲期權的報酬分布
      • 1.6 隨機模擬的幾個關鍵點
    • 2.隨機模擬的關鍵:隨機數生成
      • 2.1 隨機數生成的基礎:均勻分布的隨機數
        • 構造滿足某個離散分布的隨機數
      • 2.2 分布函數生成隨機數(逆變換)
      • 2.3 拒絕采樣生成隨機數
      • 2.4 MCMC(蒙特卡洛馬爾可夫)生成隨機數

動手學隨機模擬

1. 如何通過隨機模擬估計看漲期權的報酬分布

關鍵字:隨機模擬,看漲期權,報酬分布

1.1 金融知識:股票與看漲期權

  • 權利金
  • 行權價格
  • 行權
  • 買進看漲期權
  • 期權的標的資產
    期權買方享有權利而不用承擔義務
import numpy as np import pandas as pd import matplotlib.pyplot as plt %matplotlib inline plt.rcParams['font.sans-serif']=['SimHei','Songti SC','STFangsong'] plt.rcParams['axes.unicode_minus'] = False # 用來正常顯示負號 price_arr = np.linspace(0, 40, 10000) # 定義價格波動,從0~100波動 def get_earnings(price: float, contract_sum: float, contract_cost: float) -> float:return price - (contract_sum + contract_cost) if price > contract_sum else -contract_costmy_earn = [get_earnings(price=price, contract_sum=20, contract_cost = 2) for price in price_arr] plt.figure(figsize=(8,6)) plt.plot(price_arr, my_earn, lw=4, alpha=0.75) plt.xlabel("Price") plt.ylabel("my_earns") plt.title("榴蓮合約的收益曲線") plt.show()

購買了看漲期權,收益上不封頂,虧損最多就是合約金(權利金)
一般來說,權利金的數額是遠遠低于標的資產(股票)本身的資產價格。換句話來說,期權是有杠桿的,現在你用2元的本金撬動了幾十元的收益,這是個十分關鍵的地方

1.2 問題分析與確定建模思路

看漲期權能得到報酬的關鍵點就是標的資產的價格,對于看漲期權來說,標的資產的價格越高,我們獲得報酬相應的也會越高。

問題的關鍵是:

  • (1)在某個時刻如何估計股票的價格分布
  • (2)在某個時刻結合行權價格與股票的價格分布,模擬看漲期權的報酬分布

股票價格是一個隨機過程,而看漲期權的價格(也是衍生品的價格)是隨機過程的函數
估計股票價格=>使用隨機過程近似股票價格這個隨機過程

# 獲取工商銀行股票價格數據 import baostock as bs #登錄系統 lg=bs.login() #顯示登錄返回信息 print('login respond error_code:'+lg.error_code) print('login respond error_msg:'+lg.error_msg) stock_code = 'sh.601398' rs = bs.query_history_k_data_plus(stock_code,"date,close",start_date='2016-01-04', end_date='2021-12-31',frequency="d", adjustflag="3") print('query_history_k_data_plus respond error_code:'+rs.error_code) print('query_history_k_data_plus respond error_msg:'+rs.error_msg) #### 打印結果集 #### data_list = [] while (rs.error_code == '0') & rs.next():# 獲取一條記錄,將記錄合并在一起data_list.append(rs.get_row_data())gsyh = pd.DataFrame(data_list, columns=rs.fields) gsyh['close'] = gsyh['close'].astype('float') gsyh['date'] = pd.to_datetime(gsyh['date'], format='%Y-%m-%d') gsyh # 查看工商銀行的價格走勢圖 plt.figure(figsize=(8,6)) plt.plot(gsyh['date'], gsyh['close'], lw=2, alpha=0.8) plt.xlabel("date") plt.ylabel("Price") plt.title("工商銀行價格走勢圖") plt.show()

我們發現曲線有如下特點:

  • (1)股票價格走勢具有強烈的隨機性;
  • (2)股票價格的曲線是一條"不平滑"的曲線,與我們前面學習的可微分的曲線不太一樣。

可以嘗試使用物理中的布朗運動去近似股票價格的無規律波動,數學上對布朗運動的描述發展相比于物理上的布朗運動要慢一些

1.3 如何模擬股票價格:布朗運動

設有一個粒子在直線上隨機游動, 該粒子在每個單位時間內等可能地向左或向右移動一個單位長度,觀察這個例子的軌跡圖

# 獲取隨機游動的位置 def get_particle_pos(n_times):position_ls = [0]for i in range(n_times-1):left_or_right = np.random.rand()if left_or_right >= 0.5:position_ls.append(1.0)else:position_ls.append(-1.0)position_ls = np.cumsum(position_ls)return position_lsn_times = 10000 position_arr = get_particle_pos(n_times = n_times) plt.figure(figsize=(8, 6)) plt.plot(np.arange(n_times), position_arr, lw=2, alpha=0.8) plt.xlabel("step") plt.ylabel("position") plt.title("隨機游動的位置") plt.show()

我們將粒子的隨機游動與股價走勢放在一起對比一下:

plt.figure(figsize=(16, 6)) plt.subplot(1,2,1) plt.plot(np.arange(n_times), position_arr, lw=2, alpha=0.8) plt.xlabel("step") plt.ylabel("position") plt.title("隨機游動的位置") plt.subplot(1,2,2) plt.plot(gsyh['date'], gsyh['close'], lw=2, alpha=0.8) plt.xlabel("date") plt.ylabel("Price") plt.title("工商銀行價格走勢圖") plt.show()


通過對比一維布朗運動走勢和股票價格的走勢可以發現,這兩者在形狀上非常相似

布朗運動詳細定義
隨機過程 {X(t),t?0}\{X(t), t \geqslant 0\}{X(t),t?0} 如果滿足:
(1) X(0)=0X(0)=0X(0)=0;
(2) {X(t),t?0}\{X(t), t \geqslant 0\}{X(t),t?0} 有平穩獨立增量;
(3) 對每個 t>0,X(t)t>0, X(t)t>0,X(t) 服從正態分布 N(0,σ2t)N\left(0, \sigma^{2} t\right)N(0,σ2t),
則稱 {X(t),t?0}\{X(t), t \geqslant 0\}{X(t),t?0} 為 Brown 運動, 也稱為 Wiener 過程, 常記為 {B(t),t?0}\{B(t), t \geqslant 0\}{B(t),t?0}{W(t),t?0}\{W(t), t \geqslant 0\}{W(t),t?0}
如果 σ=1\sigma=1σ=1, 我們稱為標準 Brown 運動; 如果 σ≠1\sigma \neq 1σ=1, 則可考慮 {X(t)/σ,t?0}\{X(t) / \sigma, t \geqslant 0\}{X(t)/σ,t?0}, 它是標準 Brown 運動。

我們可以驗證一維布朗運動(隨機游走)的定義(3),即:均值函數和方差函數分別為:0與σ2t\sigma^2 tσ2t以及每個時刻的位置分布為正態分布。

plt.figure(figsize=(16, 6)) plt.subplot(1,2,1) ## 模擬10000次隨機漫步 simulate_time = 10000 n_times = 100 result_ls = [] for i in range(simulate_time):position_arr = get_particle_pos(n_times=n_times)plt.plot(np.arange(n_times), position_arr, lw=2, alpha=0.8)result_ls.append(position_arr.tolist()) pos_mean = np.mean(result_ls, axis=0) pos_var = np.var(result_ls, axis=0) plt.plot(np.arange(n_times), pos_mean, lw=4, alpha=0.8, c='red', label='mean_func') plt.plot(np.arange(n_times), pos_var, lw=4, alpha=0.8, c='blue', label='var_func') plt.xlabel("step") plt.ylabel("position") plt.title("隨機游動的位置") plt.legend() plt.subplot(1,2,2) ## 選取index=60的位置分布 pos_60 = np.array(result_ls)[:, 60] plt.hist(pos_60, bins=100, density=1) plt.title("index=60的位置分布") plt.show()

隨機游動的均值函數為0, 方差函數是一個關于時間ttt的直線函數,index為60的位置分布也符合正態分布,以上都是布朗運動的表現。

plt.figure(figsize=(12, 8)) simulate_times = 12 n_times = 10000 for i in range(simulate_times):position_arr = get_particle_pos(n_times=n_times)plt.plot(np.arange(n_times), position_arr, lw=2, alpha=0.75) plt.axhline(y=0, lw=6) plt.plot(np.arange(n_times), np.sqrt(np.arange(n_times)), lw=6, c='red', alpha=0.8, label=r'$t=pos^2$') plt.plot(np.arange(n_times), -np.sqrt(np.arange(n_times)), lw=6, c='red', alpha=0.8) plt.legend() plt.xlabel("t") plt.ylabel("position") plt.show()

  • (1)布朗運動的軌跡線會頻繁穿越pos=0pos = 0pos=0的水平線
    我們把0基準線看成是股票的開盤價,頻繁穿越0基準線意味著股價很大概率會在開盤價上下波動,而不是始終維持在開盤價的上方或者下方。這一點的性質在很多股票投資的實踐經驗都有印證
  • (2)在任意時刻 ttt, 樣本軌跡的位置 B(t)B(t)B(t) 不會偏離正負一個標準差太遠:我們在布朗運動的定義中的(3)可以知道,對每個 t>0,X(t)t>0, X(t)t>0,X(t) 服從正態分布 N(0,σ2t)N\left(0, \sigma^{2} t\right)N(0,σ2t),一個標準差即σt\sigma \sqrt{t}σt?,上圖中的紅色曲線可以包含絕大多數的樣本軌跡。這點可以說明,隨著交易時間ttt的推移,ttt時刻的股票價格始終不會偏離開盤價(0基準線)±t×\pm \sqrt{t} \times±t?× 價格波動的標準差,就算偏離也不會太遠(除了小概率事件)。
    缺點
    布朗運動可以是負數,因為布朗運動的樣本軌跡會頻繁穿越0基準線。然而,股票價格卻肯定不會是負數,這是布朗運動的理論與現實的矛盾。為了解決這個問題,我們可以改進布朗運動描述股票價格走勢,使用幾何布朗運動描述股票價格。

1.4 如何更真實地模擬股票價格:幾何布朗運動

為了解決使用布朗運動描述股票價格走勢會出現負數的問題,我們嘗試給布朗運動加上一個僅和時間 ttt 有關的漂移項 μt\mu tμt, 以及一個尺度參數 σ\sigmaσ,這樣就可以得到帶漂移項的布朗運動:

因為 X(t)X(t)X(t)B(t)B(t)B(t) 的取值隨著時間 ttt 的變化也可以是負數, 但是股票的價格顯然不能是負數,這種辦法并沒有解決實際問題。

我們假設使用S(t)S(t)S(t)表示股票價格而X(t)X(t)X(t)是股票價格的自然對數,即:X(t)=ln(S(t))X(t) = ln(S(t))X(t)=ln(S(t))。因此,帶漂移項的布朗運動就變成了:
X(t)=ln(S(t))=μt+σB(t)X(t) = ln(S(t)) = \mu t+\sigma B(t) X(t)=ln(S(t))=μt+σB(t)

我們對X(t)=ln(S(t))=μt+σB(t)X(t) = ln(S(t)) = \mu t+\sigma B(t)X(t)=ln(S(t))=μt+σB(t)進行微分(簡單的對數函數求導),即:
dS(t)S(t)=μdt+σdB(t)\frac{d S(t)}{S(t)}=\mu d t+\sigma d B(t) S(t)dS(t)?=μdt+σdB(t)
dS(t)/S(t)d S(t) / S(t)dS(t)/S(t) 就 是這段間隔內的收益率
化簡上述的式子dS(t)S(t)=μdt+σdB(t)\frac{d S(t)}{S(t)}=\mu d t+\sigma d B(t)S(t)dS(t)?=μdt+σdB(t)得到:
dS(t)=μS(t)dt+σS(t)dB(t)d S(t)=\mu S(t) d t+\sigma S(t) d B(t) dS(t)=μS(t)dt+σS(t)dB(t)

式子:dS(t)=μS(t)dt+σS(t)dB(t)d S(t)=\mu S(t) d t+\sigma S(t) d B(t)dS(t)=μS(t)dt+σS(t)dB(t)是一個微分方程,這個微分方程是帶有隨機性的微分方程,簡稱"隨機微分方程"。因此,滿足上述隨機微分方程dS(t)=μS(t)dt+σS(t)dB(t)d S(t)=\mu S(t) d t+\sigma S(t) d B(t)dS(t)=μS(t)dt+σS(t)dB(t)的股價 S(t)S(t)S(t) 是一個幾何布朗運動。

我們可以使用歐拉離散化可以得到離散時間模型:
St=St?Δte(μ?12σ2)Δt+σεtΔtS_{t}=S_{t-\Delta t} e^{\left(\mu-\frac{1}{2} \sigma^{2}\right) \Delta t+\sigma \varepsilon_{t} \sqrt{\Delta t}} St?=St?Δt?e(μ?21?σ2)Δt+σεt?Δt?
離散時間模型的參數含義:

  • StS_{t}St? : 證券在t時刻的價格;
  • St?Δt\mathrm{S}_{\mathrm{t}-\Delta \mathrm{t}}St?Δt? : 證券在t ?Δt-\Delta \mathrm{t}?Δt 時刻的價格;
  • μ\muμ :證券收益率的期望值;
  • σ\sigmaσ :證券收益率的波動率;
  • εt\varepsilon_{t}εt? : 服從正態分布(期望為 0 , 方差為 1 )

接下來,我們模擬證券初始價格為10(日收益率均值漂移項為0.005,波動率為0.25),模擬天數為300天,次數為5000次的幾何布朗運動價格。

# 我們模擬證券初始價格為10(日收益率均值漂移項為0.005,波動率為0.25),模擬天數為300天,次數為5000次的幾何布朗運動價格 S0 = 10 # 初始價格 n_days = 300 # 模擬天數 mu = 0.005 sigma = 0.25 delta_t = 1/n_days n_times = 5000 # 模擬次數 price_arr = np.zeros((n_times, n_days)) # n_times*n_days個價格 price_arr[: , 0] = S0 # 初始價格 for t in range(1, n_days):price_arr[:, t] = price_arr[:, t-1]*np.exp((mu-0.5*np.square(sigma))*delta_t+sigma*np.random.standard_normal(n_times)*np.sqrt(delta_t)) # 分別繪制一條軌跡和所有軌跡 plt.figure(figsize=(16, 6)) plt.subplot(1,2,1) plt.plot(np.arange(n_days), price_arr[0, :], lw=2, alpha=0.75) plt.xlabel("t") plt.ylabel("Price") plt.title("1條股價樣本軌跡") plt.subplot(1,2,2) for i in range(n_times):plt.plot(np.arange(n_days), price_arr[i, :], lw=2, alpha=0.75) plt.xlabel("t") plt.ylabel("Price") plt.title("5000條股價樣本軌跡") plt.show()

# 繪制某一天的價格分布 plt.figure(figsize=(8, 6)) plt.hist(price_arr[60, :], bins=50, density=True) plt.xlabel("price") plt.title("index=60的價格分布") plt.show()

以上的案例給定了離散時間模型的參數值,這是一種只會存在于習題中的情況,因為當我們想模擬一只具體的股票時,這些參數信息不會一下子彈到我們腦邊,我們需要根據實際數據估計其中的參數值。估計方法如下(不給證明了):
μ=E[ln?(St+ΔtSt)]/Δtσ2=var?[ln?(St+ΔtSt)]/Δt\begin{aligned} \mu &=E\left[\ln \left(\frac{S_{t+\Delta t}}{S_{t}}\right)\right] / \Delta t \\ \sigma^{2} &=\operatorname{var}\left[\ln \left(\frac{S_{t+\Delta t}}{S_{t}}\right)\right] / \Delta t \end{aligned} μσ2?=E[ln(St?St+Δt??)]t=var[ln(St?St+Δt??)]t?

# 使用工商銀行股票價格數據和幾何布朗運動模擬股價 ## 1. 獲取2021年的工商銀行股票價格數據 # 登陸系統 lg = bs.login() # 顯示登陸返回信息 print('login respond error_code:'+lg.error_code) print('login respond error_msg:'+lg.error_msg) stock_code = 'sh.601398' rs = bs.query_history_k_data_plus(stock_code,"date,close",start_date='2021-01-01', end_date='2021-12-31',frequency="d", adjustflag="3") print('query_history_k_data_plus respond error_code:'+rs.error_code) print('query_history_k_data_plus respond error_msg:'+rs.error_msg) #### 打印結果集 #### data_list = [] while (rs.error_code == '0') & rs.next():# 獲取一條記錄,將記錄合并在一起data_list.append(rs.get_row_data()) gsyh_2021 = pd.DataFrame(data_list, columns=rs.fields) gsyh_2021['close'] = gsyh_2021['close'].astype('float') gsyh_2021['date'] = pd.to_datetime(gsyh_2021['date'], format='%Y-%m-%d')## 2.估計幾何布朗運動中的mu和sigma price_ls = gsyh_2021['close'].tolist() delta_t = 1/len(price_ls) mu = np.mean(np.log(price_ls[1:]) - np.log(price_ls[:-1])) / delta_t sigma2 = np.var(np.log(price_ls[1:]) - np.log(price_ls[:-1])) / delta_t ## 3.使用幾何布朗運動模擬股價走勢 print("==============開始模擬================") S0 = price_ls[-1] # 初始價格 print("初始價格:", S0) n_days = 300 # 模擬天數 sigma = np.sqrt(sigma2) print("估計的mu = ", mu) print("估計的sigma = ", sigma) delta_t = 1/n_days n_times = 10000 # 模擬次數 price_arr = np.zeros((n_times, n_days)) # n_times*n_days個價格 price_arr[: , 0] = S0 # 初始價格 for t in range(1, n_days):price_arr[:, t] = price_arr[:, t-1]*np.exp((mu-0.5*np.square(sigma))*delta_t+sigma*np.random.standard_normal(n_times)*np.sqrt(delta_t)) # 分別繪制一條軌跡和所有軌跡 plt.figure(figsize=(16, 6)) plt.subplot(1,2,1) plt.plot(np.arange(n_days), price_arr[0, :], lw=2, alpha=0.75) plt.xlabel("t") plt.ylabel("Price") plt.title("1條股價樣本軌跡") plt.subplot(1,2,2) for i in range(n_times):plt.plot(np.arange(n_days), price_arr[i, :], lw=2, alpha=0.75) plt.xlabel("t") plt.ylabel("Price") plt.title("10000條股價樣本軌跡") plt.show()

可以從上述模擬中得到第300天的模擬價格分布,即:

import seaborn as sns palette = plt.get_cmap('tab20c') price_300 = price_arr[299, :] plt.figure(figsize=(8,6)) sns.histplot(price_300, kde = True, stat='probability', bins = 20, shrink = 1, color = palette.colors[0], edgecolor = palette.colors[-1]) plt.xlabel("Price") plt.show()

小節:我們通過帶漂移項的布朗運動X(t)=μt+σB(t)X(t)=\mu t+\sigma B(t)X(t)=μt+σB(t)可以知道,X(t)X(t)X(t) 的期望為 E[X(t)]=μtE[X(t)]=\mu tE[X(t)]=μt,即t時刻的價格期望為μt\mu tμt。這是個十分有趣的結論,因為假如μ>0\mu > 0μ>0,那么t時刻的價格期望也會大于0。因此如果我們堅信股市長期來看是一個向上的牛市(雖然很緩慢),那么我們就應該接受短期波動而堅持長期持股,就像巴菲特的價值投資一樣。

1.5 估計看漲期權的報酬分布

現在我們假設行權價格是4.7元,我們來分析報酬在第300天的時候的報酬分布情況(忽略權利金、遠期利率和股息):
當股票價格大于行權價格,那么我將獲利;
當股票價格小于行權價格,那么我將虧損;

# 繪制報酬分布圖 price_300 = price_arr[299, :].tolist() contract_sum = 4.7 profit_sum = [price - contract_sum if price > contract_sum else 0 for price in price_300] #剔除負數 plt.figure(figsize=(8,6)) plt.hist(profit_sum, bins=40, density=True) plt.xlabel("Profit") plt.show()

1.6 隨機模擬的幾個關鍵點

我們可以將隨機模擬分解為以下步驟:

  • (1)確定事件的過程(仿真);
  • (2)在事件中添加合適的分布的隨機數(隨機模擬);(關鍵)
  • (3)得到模擬的結論;
    采樣算法:(拒絕采樣、MCMC采樣)
    (因為要從某個分布中采樣,采樣的樣本就是所謂的隨機數)

2.隨機模擬的關鍵:隨機數生成

  • 計算機生成隨機數的基礎算法:均勻分布采樣
  • 分布函數采樣
  • 拒絕采樣
  • MCMC采樣

2.1 隨機數生成的基礎:均勻分布的隨機數

偽隨機數生成的方法有很多, 比較簡單的一種方式比如:
xn+1=(axn+c)modm\mathrm{x}_{\mathrm{n}+1}=(\mathrm{ax_n} +\mathrm{c}) \bmod \mathrm{m} xn+1?=(axn?+c)modm

其中, XXX 為偽隨機序列,

  • m,m>0m, m>0m,m>0, 模數, 也是生成序列的最大周期
  • a,0<a<ma, 0<a<ma,0<a<m, 乘數
  • c,0≤c<mc, 0 \leq c<mc,0c<m, 增量
  • X0,0≤X0<mX_{0}, 0 \leq X_{0}<mX0?,0X0?<m, 種子點 (起始值)

Xn/n\mathrm{X}_{\mathrm{n}} / nXn?/n 近似服從 (0,1)(0,1)(0,1) 上的均勻分布。

這種方法叫線性同余法,使用線性同余法時需要特別小心參數設置,否則生成的隨機數將會十分糟糕。下面通過一組實驗看看不同的參數設置下生成的隨機數序列:

# 線性同余法 def get_uniform_sample(a, c, m, x0, n_times):uniform_ls = []for i in range(n_times):uniform_sample = (a*x0+c) % muniform_ls.append(uniform_sample)x0 = uniform_samplereturn uniform_lsn_times = 10 # 實驗次數 ## 第一組實驗: a, c, m, x0 = 11, 0, 8, 1 uniform_ls = get_uniform_sample(a, c, m, x0, n_times) print("第一次實驗:") print("a = %d, c = %d, m = %d, x0 = %d:\n" % (a, c, m, x0)) print(uniform_ls) print("============================") ## 第二組實驗: a, c, m, x0 = 25214903917, 11, 2**48, 1 # 這也是java.util.Random中的默認參數設置 uniform_ls = get_uniform_sample(a, c, m, x0, n_times) print("第二次實驗:") print("a = %d, c = %d, m = %d, x0 = %d:\n" % (a, c, m, x0)) print(uniform_ls)

構造滿足某個離散分布的隨機數

上面的線性同余法是構造均勻分布的隨機數,如果我們需要構造滿足某個離散分布的隨機數,如:x=1,2,3,4x = 1, 2, 3, 4x=1,2,3,4分別滿足概率[0.1,0.3,0.5,0.1][0.1, 0.3, 0.5, 0.1][0.1,0.3,0.5,0.1]這個離散分布的隨機數。其實這個問題的解決方法并不難,需要用到均勻分布的隨機數:

  • 生成一個[0,1][0,1][0,1]的均勻分布的隨機數xxx
  • 如果xxx[0,0.1)[0, 0.1)[0,0.1),那么x=1x = 1x=1, 如果xxx[0.1,0.4)[0.1, 0.4)[0.1,0.4),那么x=2x = 2x=2,如果xxx[0.4,0.9)[0.4, 0.9)[0.4,0.9),那么x=3x = 3x=3,如果xxx[0.9,1)[0.9, 1)[0.9,1),那么x=4x = 4x=4
  • 重復以上步驟n_times次就能獲得n_times個符合離散分布的隨機數
# 生成10000個離散分布的隨機數 from collections import Counter def get_discrete_sample(x_ls, p_ls, size):""":param x_ls: 類別序列:param p_ls: 類別的概率序列:param size: 生成隨機數個數:return: 隨機數序列"""p_ls = np.cumsum(p_ls) # [0.1, 0.4, 0.9, 1]x_sample_ls = []for i in range(size):p_uniform = np.random.uniform(0, 1)tmp_ls = [1 if p_uniform < p else 0 for p in p_ls]index = len(tmp_ls) - np.sum(tmp_ls)x_sample_ls.append(x_ls[index])return x_sample_lssize = 10000 x_ls = [1, 2, 3, 4] p_ls = [0.1, 0.3, 0.5, 0.1] x_sample_ls = get_discrete_sample(x_ls, p_ls, size) x_count = Counter(x_sample_ls) x_count = list(x_count.items()) x_ratio = [(x[0], x[1] / len(x_sample_ls)) for x in x_count] print(x_ratio)

2.2 分布函數生成隨機數(逆變換)

通過使用均勻分布的隨機數構造別的分布的隨機數呢?答案是肯定的,這個方法叫逆變換法。

逆變換法的理論依據是:假設 X\mathrm{X}X 是一個連續型隨機變量,它的累積分布函數為 FX(x)F_{X}(x)FX?(x) ; 現在,定義隨機變量 Y=FX(X)Y=F_{X}(X)Y=FX?(X) 。那么, YYY 服從 (0,1)(0,1)(0,1) 上的均勻分布,即
P(Y≤y)=y,0<y<1.?P(Y \leq y)=y, 0<y<1 \text {. } P(Yy)=y,0<y<1.?

換句話說,任意分布的分布函數值服從(0,1)(0,1)(0,1)上的均勻分布
接下來,我們嘗試使用逆變換法通過均勻分布的隨機數構造指數分布的隨機數:

  • 指數分布的概率密度函數為 fX(x)=f_{X}(x)=fX?(x)= λe?λx,x>0\lambda e^{-\lambda x}, x>0λe?λx,x>0 ,它的累積分布函數為
    FX(x)=1?e?λx,x≥0\mathrm{F}_{X}(x)=1-e^{-\lambda x}, \quad \mathrm{x} \geq 0 FX?(x)=1?e?λx,x0

  • 產生 (0,1)(0,1)(0,1) 均勻分布的隨機數 VVV(當作是指數分布的分布函數值)

  • Y=?1λlog?(V)Y=-\frac{1}{\lambda} \log (V)Y=?λ1?log(V)(將滿足均勻分布的分布函數進行逆變換),YYY 即為服從指數分布的隨機數

逆變換法構造指數分布的隨機數 def get_exp_sample(lmd, size):uniform_samples = np.random.uniform(0, 1, size)exp_samples = []for uniform_sample in uniform_samples:exp_sample = -1.0/lmd*np.log(uniform_sample)exp_samples.append(exp_sample)return exp_sampleslmd = 1 size = 10000 exp_samples = get_exp_sample(lmd, size) plt.figure(figsize=(8, 6)) plt.hist(exp_samples, bins=50, density=True, alpha=0.75) plt.xlabel("X") plt.title("X~exp(1)") plt.show()

2.3 拒絕采樣生成隨機數

逆變換法需要求分布函數和逆變換
拒絕采樣開始采用蒙特卡洛的思想構造隨機數,我們先來看看下圖:

  • p(x)p(x)p(x)是我們需要采樣的分布,有時候十分復雜,這里的p(x)=0.3e?(x?0.3)2+0.7e?(x?2.0)20.3p(x) = 0.3 e^{-(x - 0.3)^2} + 0.7e^{-\frac{(x - 2.0)^2}{0.3}}p(x)=0.3e?(x?0.3)2+0.7e?0.3(x?2.0)2?,其中0≤x≤40 \le x \le 40x4
  • q(x)q(x)q(x)是我們的構造的分布,這里我們假設為[0, 4]的均勻分布
# 拒絕采樣演示: M = 4 z0 = 2.5 x = np.linspace(0,4,1000) q_x = np.array([1.0/4]*1000) p_x = 0.3*np.exp(-(x-0.3)**2)+0.7*np.exp(-(x-2.0)**2/0.3) plt.figure(figsize=(8,6)) plt.plot(x, p_x, lw=4, alpha=0.8, label=r'$p(x) = 0.3 e^{-(x - 0.3)^2} + 0.7e^{-\frac{(x - 2.0)^2}{0.3}}$') plt.plot(x, M*q_x, lw=4, alpha=0.8, label=r'$Mq(x)$') plt.vlines(x=0, ymin=0, ymax=1, colors='gray',linestyles='--') plt.vlines(x=4, ymin=0, ymax=1, colors='gray',linestyles='--') plt.vlines(x=z0, ymin=0, ymax=1, colors='red',linestyles='--', lw=2) plt.scatter(z0, 0.3*np.exp(-(z0-0.3)**2)+0.7*np.exp(-(z0-2.0)**2/0.3), s=90, color='red') plt.text(z0+0.1, 0.3*np.exp(-(z0-0.3)**2)+0.7*np.exp(-(z0-2.0)**2/0.3), r'$u_0$') plt.legend() plt.xlabel("x") plt.ylabel("f(x)") plt.title("拒絕采樣演示圖") plt.show()

由于p(x)p(x)p(x)太復雜,我們無法直接采樣,因此我們借助輔助的分布q(x)q(x)q(x),這個輔助的分布滿足一個特點:q(x)q(x)q(x)乘一個常數MMM后的Mq(x)Mq(x)Mq(x)曲線能完全包住我們想要采樣的分布p(x)p(x)p(x)

拒絕采樣的過程如下:

  • 通過輔助分布q(x)q(x)q(x)采樣z0z_0z0?,輔助分布可以選擇常見的均勻分布或者正態分布
  • 計算u0=p(z0)u_0 = p(z_0)u0?=p(z0?)(圖中紅色的點);
  • 在區間(0,Mq(z0)](0, Mq(z_0)](0,Mq(z0?)]范圍的均勻分布隨機采樣kkk,即在紅色的直線范圍按均勻分布采樣kkk
  • 判斷kkk的大小,
    如果k<u0k<u_0k<u0?(即kkk位于u0u_0u0?下方),則接受z0z_0z0?是來自分布p(x)p(x)p(x)的隨機數;
    反之,如果k≥u0k \ge u_0ku0?(即kkk位于u0u_0u0?上方),則拒絕z0z_0z0?是來自分布p(x)p(x)p(x)的隨機數。
  • 重復以上過程,知道采樣個數為size為止。
# 通過拒絕采樣0.3*np.exp(-(x-0.3)**2)+0.7*np.exp(-(x-2.0)**2/0.3)分布的隨機數 from scipy.stats import uniform def get_px(x):return 0.3*np.exp(-(x-0.3)**2)+0.7*np.exp(-(x-2.0)**2/0.3)def get_px_samples(size):M = 4px_sample_ls = []while len(px_sample_ls) <= size:z0 = np.random.uniform(0, 4)u0 = get_px(z0)k = np.random.uniform(0, M*uniform(0, 4).pdf(z0))if k < u0:px_sample_ls.append(z0)return px_sample_lssize = 10000 px_samples = get_px_samples(size) plt.figure(figsize=(8, 6)) plt.hist(px_samples, bins=50, density=True, alpha=0.75) plt.xlim(0,4) plt.xlabel("X") plt.title("X~p(x)") plt.show()

2.4 MCMC(蒙特卡洛馬爾可夫)生成隨機數

我們在馬爾可夫鏈中又一個重要的結論:只要轉移概率矩陣合適,不管初始分布如何都會收斂到同一個平穩分布。

如果我們能找到一個轉移概率矩陣,這個矩陣得到的平穩分布剛好就是我們想要采樣的分布,那么我們可以讓平穩后的狀態就是我們所需要的采樣樣本,因為這些狀態都是由平穩分布得到的。

已知條件是平穩分布(我們需要采樣的分布),想要求一個轉移概率矩陣

隨便找一個轉移概率矩陣QQQπ(i)Q(i,j)≠π(j)Q(j,i)\pi(i) Q(i, j) \neq \pi(j) Q(j, i)π(i)Q(i,j)=π(j)Q(j,i)。如果想讓平穩條件成立,可以引入α(i,j)\alpha(i, j)α(i,j),則:
π(i)Q(i,j)α(i,j)=π(j)Q(j,i)α(j,i)\pi(i) Q(i, j) \alpha(i, j)=\pi(j) Q(j, i) \alpha(j, i) π(i)Q(i,j)α(i,j)=π(j)Q(j,i)α(j,i)
最簡單的α(i,j)\alpha(i, j)α(i,j)α(j,i)\alpha(j, i)α(j,i)是:
α(i,j)=π(j)Q(j,i)α(j,i)=π(i)Q(i,j)\begin{aligned} &\alpha(i, j)=\pi(j) Q(j, i) \\ &\alpha(j, i)=\pi(i) Q(i, j) \end{aligned} ?α(i,j)=π(j)Q(j,i)α(j,i)=π(i)Q(i,j)?

α(i,j)\alpha(i, j)α(i,j) 我們有一般稱之為接受率,α(i,j)\alpha(i, j)α(i,j)取值在 [0,1][0,1][0,1] 之間, 可以理解為一個概率值(可以從均勻分布中采樣)。

最后,我們總結下MCMC采樣的過程:

  • 輸入任意的轉移概率矩陣Q(i,j)Q(i,j)Q(i,j),假設n1n_1n1?次轉移后能夠到達平穩,需要采n2n_2n2?個樣本。因此采樣算法從n1n_1n1?次后才真正進行,目的是放棄平穩前的采樣值,因為只有平穩后的分布才是我們的目標采樣分布,如果采用了平穩前的樣本,這些樣本的分布將不是我們的目標分布。
  • 隨機產生一個初始值x0x_0x0?
  • for t=0t=0t=0 to n1+n2?1n_{1}+n_{2}-1n1?+n2??1 :
    - 從條件概率分布 Q(x∣xt)Q\left(x \mid x_{t}\right)Q(xxt?) 中采樣得到樣本 x?x_{*}x??
    - 從均勻分布采樣 u~uniform[0,1]u \sim uniform[0,1]uuniform[0,1]
    - 如果 u<α(xt,x?)=π(x?)Q(x?,xt)u<\alpha\left(x_{t}, x_{*}\right)=\pi\left(x_{*}\right) Q\left(x_{*}, x_{t}\right)u<α(xt?,x??)=π(x??)Q(x??,xt?) ,則接受轉移 xt→x?x_{t} \rightarrow x_{*}xt?x?? ,即 xt+1=x?x_{t+1}=x_{*}xt+1?=x??
    - 否則不接受轉移,即 xt+1=xtx_{t+1}=x_{t}xt+1?=xt?
  • 樣本集 (xn1,xn1+1,…,xn1+n2?1)\left(x_{n_{1}}, x_{n_{1}+1}, \ldots, x_{n_{1}+n_{2}-1}\right)(xn1??,xn1?+1?,,xn1?+n2??1?) (注意不能取前n1n_1n1?個樣本)即為我們需要的平穩分布對應的隨機樣本。

exp
現在,我們使用MCMC采樣來對p(x)=0.3e?(x?0.3)2+0.7e?(x?2.0)20.3p(x) = 0.3 e^{-(x - 0.3)^2} + 0.7e^{-\frac{(x - 2.0)^2}{0.3}}p(x)=0.3e?(x?0.3)2+0.7e?0.3(x?2.0)2?,其中0≤x≤40 \le x \le 40x4進行隨機采樣:

  • 假設Q(i,j)Q(i,j)Q(i,j)為$\mu ,,\sigma$的正態分布
  • 初始樣本x0=0x_0 = 0x0?=0
# 使用MCMC采樣來對正態分布進行隨機采樣 # 定義任意分布Q的密度函數 def Gussian_q(x,mu,sigma):return 1/(np.sqrt(2*np.pi)*sigma)*np.exp(-np.square((x-mu))/(2*np.square(sigma))) # 從任意分布Q中獲取一個樣本 def get_q_sample(mu, sigma):return np.random.normal(mu, sigma) # 定義需要采樣的分布的密度函數 def p(x):return 0.3*np.exp(-(x-0.3)**2) + 0.7* np.exp(-(x-2.0)**2/0.3) if (x>0) & (x<4) else 0def get_mcmc_normal(size):mu = 0sigma = 1x_0 = 0 # 初始的隨機狀態x0n1 = 5000n2 = sizep_sample_ls = []t = 0while len(p_sample_ls) < n2:t += 1x_1 = get_q_sample(mu, sigma)u = np.random.uniform(0, 1)if u < p(x_1)*Gussian_q(x_0, mu, sigma)/Gussian_q(x_1, mu, sigma):x_0 = x_1if t >= n1:p_sample_ls.append(x_0)return p_sample_lsp_sample_ls = get_mcmc_normal(size=10000) plt.figure(figsize=(8, 6)) plt.hist(p_sample_ls, bins=50, density=True, alpha=0.7) plt.xlim(0,4) plt.xlabel("x") plt.title("使用MCMC抽樣") plt.show()

總結

以上是生活随笔為你收集整理的GitModel|Task04|随机模拟的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

精品久久五月天 | 综合网天天| 国产精品久久久一区二区 | 欧美性生活一级片 | 亚洲丝袜一区二区 | 日韩在线观看一区二区 | 国产一级免费观看 | 亚洲精品456在线播放 | 欧美一区二区三区不卡 | 中文字幕资源在线观看 | 国产探花 | 天天操天天弄 | 狠狠色丁香婷综合久久 | 久久66热这里只有精品 | 在线免费黄色av | 九九九在线观看 | 九九热视频在线播放 | 黄色av电影在线 | 国产综合91 | 国产小视频在线观看免费 | 国产资源av | 国产一级电影在线 | 国产色女人 | 毛片区| 天天爱天天操天天射 | 国语精品视频 | 久草网站在线 | 亚洲精品国精品久久99热一 | 天天干天天插 | 911精品视频 | 免费黄色av电影 | 久久精品99久久久久久 | 国产精品一区二区美女视频免费看 | 中文字幕在线中文 | 色五婷婷 | 欧美日韩精品影院 | 中文字幕网址 | 国产一区二区在线免费播放 | 99视频久| 日日操天天爽 | 五月天久久激情 | 午夜精品一区二区三区免费视频 | 成人福利在线播放 | 国产精品18久久久久白浆 | 欧美性视频网站 | 在线电影 你懂得 | 久久99九九99精品 | 日韩动漫免费观看高清完整版在线观看 | 国产成人精品一区二区三区福利 | 久久久久免费精品国产 | 六月激情网| 最近最新最好看中文视频 | 国产精品ⅴa有声小说 | 69国产盗摄一区二区三区五区 | 日韩亚洲欧美中文字幕 | 国产一级二级三级在线观看 | 综合久久久久久 | 成人国产网址 | 一级久久精品 | 久久99国产精品久久99 | 日韩色区 | 国产一级特黄电影 | 国产999精品久久久久久 | 久久99九九99精品 | 成人中文字幕在线观看 | 911香蕉| 久久久免费播放 | 中文字幕中文字幕在线一区 | 日本最新中文字幕 | 亚洲 欧美日韩 国产 中文 | 亚洲国产精品传媒在线观看 | 在线午夜 | 日韩在线小视频 | 久久人人干 | 在线97 | av黄网站| 欧美视频xxx | 国产精品九九九 | 欧美日韩一区二区久久 | 欧美在线视频一区二区三区 | 免费看片黄色 | 日韩高清av在线 | 九九九在线观看 | 亚洲精品国产精品国 | av一区二区在线观看中文字幕 | 精品久久久久久久久久久久久久久久 | 激情xxxx| 黄色小说视频网站 | 最近中文字幕在线 | 午夜三级在线 | 日韩在线观看视频在线 | 成人欧美日韩国产 | 免费看一级一片 | 亚洲国产剧情 | 日日夜夜天天人人 | 国内小视频 | 国产一级免费片 | 天天草综合 | 99精品一区二区三区 | 夜夜操天天摸 | 男女激情麻豆 | 精品影院 | 香蕉影视 | 久射网 | 操操操综合| 黄网在线免费观看 | 999精品网 | 日韩在线观看视频网站 | 国产欧美在线一区 | 激情欧美丁香 | 国产午夜三级一区二区三桃花影视 | 国产精品网在线观看 | 久久高清片 | 黄色三级在线观看 | 久久久久免费精品国产小说色大师 | 2022国产精品视频 | 久久综合婷婷国产二区高清 | 日韩精品一区二区三区视频播放 | 成人av在线资源 | 成人午夜电影免费在线观看 | 日韩午夜电影院 | 草久久久久久 | 久久视频精品在线 | 国产99久久 | 青青网视频| 成人h动漫精品一区二 | 久久久国产精品一区二区中文 | 久久男人中文字幕资源站 | 91九色在线视频观看 | 日本视频久久久 | 亚洲成人国产 | 精品国产欧美一区二区三区不卡 | 亚洲电影图片小说 | 久久久噜噜噜久久久 | 成人午夜电影网 | 色综合久久久久综合体桃花网 | 天天弄天天干 | 精壮的侍卫呻吟h | 久久理论电影 | 久久久久久久久免费 | 久久久精品久久日韩一区综合 | 一级特黄av| 在线观看日本高清mv视频 | 精品影院 | 国产美女久久久 | 欧美日韩国产高清视频 | 三级黄色理论片 | 国产亚洲成人网 | 丁香久久五月 | 亚在线播放中文视频 | 免费网站看av片 | 亚洲黄色免费电影 | av中文电影 | 国产自产高清不卡 | 中文字幕在线久一本久 | 国产精品女人网站 | 中文字幕亚洲高清 | 一区二区三区在线看 | 色婷婷婷 | 成人一级免费视频 | 亚洲精品av中文字幕在线在线 | www91在线观看| 日韩欧美一区二区三区在线 | 天天骚夜夜操 | 涩涩成人在线 | 日韩在线观看视频免费 | 国产一级片免费观看 | 国产精品电影一区二区 | 一本一本久久a久久精品综合小说 | 91网站免费观看 | 91在线成人 | 亚洲成人av电影在线 | 日韩成人高清在线 | 亚洲天堂社区 | 在线观看网站黄 | 黄色av成人在线观看 | 欧美一级免费高清 | 天天曰视频| 国产精品视频全国免费观看 | 精品中文字幕视频 | 热re99久久精品国产99热 | 成人h视频在线 | 亚洲一级二级 | 日韩免费二区 | 六月天色婷婷 | 在线中文字幕电影 | 国产亚洲aⅴaaaaaa毛片 | 日韩高清一区 | 最新的av网站 | 国产视频精品在线 | 91香蕉视频在线 | 久久av在线播放 | 日韩精品免费一区 | 精品在线观看一区二区三区 | 欧美做受高潮1 | 国产精品第52页 | 精品福利网 | 97在线免费视频观看 | av看片在线观看 | avv天堂| 五月婷婷开心中文字幕 | 免费观看91 | 中文国产成人精品久久一 | 亚洲天堂网在线观看视频 | 国外调教视频网站 | 国产99视频在线观看 | 午夜精品一区二区三区视频免费看 | 综合网天天色 | 青青草华人在线视频 | 婷婷丁香导航 | 国产专区视频在线观看 | 中文字幕超清在线免费 | 日p在线观看 | 97成人精品视频在线播放 | 在线免费精品视频 | 国产精品你懂的在线观看 | 国内精品在线一区 | 狠狠地操| 久久毛片视频 | 啪啪资源| 在线观看完整版 | 丁香电影小说免费视频观看 | 天天操天天色天天射 | 成人羞羞免费 | 欧美另类69| .国产精品成人自产拍在线观看6 | 天天干,天天操 | 日本在线中文 | 久久成年视频 | 特级毛片在线 | 午夜性福利 | 国产五月色婷婷六月丁香视频 | 久久久久久高潮国产精品视 | 国产精品久久久久永久免费 | 久久精品黄色 | av中文字幕在线电影 | 超碰在线最新地址 | 在线国产精品视频 | 亚洲精品久久视频 | 日本中文字幕观看 | 97视频人人 | 色九九影院 | 欧美极品xxx | 久久男人视频 | 亚洲一区免费在线 | 在线亚洲小视频 | 久久激情视频网 | 色婷婷丁香 | 中文字幕 国产精品 | 欧美一级性生活 | 国产麻豆电影 | 五月婷婷六月丁香激情 | 国产日韩欧美在线免费观看 | 日日爽日日操 | 超碰免费av | 激情av综合 | 狠狠干成人综合网 | 午夜av不卡 | 欧美在线aaa | 91资源在线播放 | 免费色视频网站 | 九草在线视频 | 免费情缘 | 国产一区免费在线观看 | 麻豆成人网 | 91pony九色丨交换 | 97国产一区 | 狠狠色丁香婷综合久久 | a√国产免费a | 激情欧美国产 | 精品理论片 | a级片韩国 | 亚洲成av| 日产乱码一二三区别免费 | 人人干狠狠操 | 日韩二区三区在线 | bayu135国产精品视频 | 久久电影网站中文字幕 | 久久成人在线 | 国产拍揄自揄精品视频麻豆 | 欧美亚洲国产一卡 | 中文字幕一区二区三区视频 | 欧美性生活小视频 | 国产一区二区免费看 | 91污视频在线 | 免费高清在线视频一区· | 国产一级片视频 | 蜜臀aⅴ国产精品久久久国产 | 久久久精品一区二区三区 | 欧美日韩亚洲一 | 曰韩在线| 色婷婷国产精品 | 久草在线在线精品观看 | 精品视频久久久久久 | 成年美女黄网站色大片免费看 | 久草在线免费资源 | 午夜久久电影网 | 久久久午夜剧场 | 97视频在线免费观看 | 手机成人在线电影 | 一区二区三区四区在线 | 国产精品色视频 | 国产手机视频在线观看 | 黄色小说视频网站 | 天堂av在线网站 | 91免费高清 | 黄色资源在线观看 | 一区二区视频在线免费观看 | 一级一片免费看 | 天天夜夜亚洲 | 欧美一区二区在线刺激视频 | 另类五月激情 | 狠狠色2019综合网 | 91av免费观看 | 久久露脸国产精品 | 国产午夜精品一区二区三区在线观看 | 日韩影片在线观看 | 精品国产电影一区二区 | 在线观看视频黄 | 久久黄色小说 | 91色影院 | 国产成人精品久久久久蜜臀 | 中文字幕av最新 | 久久视频在线看 | 亚州国产精品 | 天天爱天天操 | 日日爱网址 | 99久久影视 | 不卡av电影在线观看 | 成人超碰在线 | 成人一级电影在线观看 | 色九九影院 | 精品视频中文字幕 | 在线观看91 | 免费色黄 | 欧美性超爽 | 国内毛片毛片 | 日本黄色免费播放 | 久久免费视频一区 | 夜夜躁日日躁狠狠久久av | 中文字幕日韩伦理 | 一级成人免费 | 在线观影网站 | 青青啪| 久久国产精品成人免费浪潮 | 狠狠色噜噜狠狠 | 国产成人一区二区三区久久精品 | 亚洲色综合| 国内精品视频免费 | 亚洲一级片在线观看 | 激情电影在线观看 | 欧美激情在线看 | 国产一区在线不卡 | 偷拍精偷拍精品欧洲亚洲网站 | av网站在线观看播放 | 久久99视频精品 | 久久久久成人精品 | 91丨九色丨国产女 | 视频在线观看入口黄最新永久免费国产 | 国产99久久精品一区二区300 | 国产成人精品国内自产拍免费看 | 五月婷婷欧美视频 | 91精品第一页 | 九九热av| 人人射人人射 | 97超碰中文字幕 | 成人av教育| 国产精品免费观看在线 | 亚洲一级二级 | 国产精品美 | 国产精品去看片 | 中文字幕国产一区 | 日韩成人精品在线观看 | 成人免费视频网站 | 国产精品美女免费 | 欧美一区二区伦理片 | 国产中文字幕第一页 | av色影院 | 色91av | 五月天综合网站 | 91看片在线免费观看 | 久久成人国产 | 欧美性生活大片 | 337p西西人体大胆瓣开下部 | 99精品在线免费视频 | 主播av在线 | 人人擦| 香蕉色综合 | 综合视频在线 | 青青草国产精品 | 激情综合一区 | 中文字幕黄网 | 免费亚洲黄色 | 亚洲精品视频免费在线 | 91精品在线视频观看 | 一本一本久久aa综合精品 | 麻豆视频免费版 | 国产成人久久77777精品 | 久久深夜福利免费观看 | 成人一级在线 | 青草视频免费观看 | 国产毛片aaa | 91中文字幕在线视频 | 天堂在线免费视频 | 91av视频免费在线观看 | 国产欧美综合视频 | 亚洲男男gaygay无套同网址 | 久久久久久久久久久久国产精品 | 免费视频黄 | 特级毛片在线 | www.91av在线| 成人动态视频 | av片子在线观看 | 日韩有码中文字幕在线 | 亚洲影院天堂 | 五月婷在线视频 | 91精品老司机久久一区啪 | 超碰97在线人人 | 日日操日日插 | 婷婷丁香七月 | 成人中文字幕+乱码+中文字幕 | 美女一级毛片视频 | 免费a v观看| 国产一区二区久久久久 | 国产热re99久久6国产精品 | av日韩不卡 | 五月婷婷激情综合网 | 天海翼一区二区三区免费 | av不卡中文 | 韩日电影在线 | 中文字幕在线国产精品 | 日韩成人免费在线观看 | 中文字幕一区在线 | 日日弄天天弄美女bbbb | 国产成人三级一区二区在线观看一 | 天天干,天天草 | 九九免费视频 | 在线精品视频免费播放 | 久久只精品99品免费久23小说 | 性色大片在线观看 | 成人免费共享视频 | 国产精品原创 | 久久久久观看 | 国产亚洲精品综合一区91 | 中文字幕av免费观看 | 2019精品手机国产品在线 | 亚洲精品福利在线观看 | 成年人免费在线播放 | 香蕉影视在线观看 | 天天拍夜夜拍 | 国产精品第10页 | 国产亚州av| 高清av在线免费观看 | 久久久影视 | 天天操夜夜叫 | 亚洲最新av在线网站 | 国产色女人 | 91禁在线观看 | 亚洲激情p| 91超碰免费在线 | 黄色精品国产 | 99热只有精品在线观看 | 精品久久中文 | 国产成人在线观看 | 在线电影中文字幕 | 黄色软件在线观看免费 | 狠狠色伊人亚洲综合成人 | 毛片网站免费 | 成人免费观看a | 精品视频一区在线观看 | 久久亚洲二区 | 国产精品av久久久久久无 | 五月天中文字幕mv在线 | 天天色视频 | 国产精品18久久久久久首页狼 | 成人免费看黄 | 看av在线 | 亚洲最新视频在线播放 | 伊人狠狠色丁香婷婷综合 | 色婷婷婷| 国产精品午夜在线 | 日本中文字幕在线免费观看 | 伊色综合久久之综合久久 | 久草免费在线观看视频 | 96亚洲精品久久久蜜桃 | 国产伦理久久精品久久久久_ | 丁香六月婷婷开心婷婷网 | 免费在线播放黄色 | 九九国产视频 | 成人日批视频 | 中文字幕综合在线 | 综合婷婷 | 日韩欧美在线播放 | 狠狠狠狠狠狠 | 五月天伊人网 | 黄色成年片 | 亚洲理论在线观看 | 国产精品a久久 | 999成人精品 | 婷婷亚洲综合五月天小说 | 亚洲无吗av| 婷婷久月 | 九九九九热精品免费视频点播观看 | 国产96在线 | 欧美三人交 | 99精品偷拍视频一区二区三区 | 日韩高清三区 | 国产一级在线 | 日韩一区正在播放 | 99性视频 | 夜夜躁日日躁狠狠久久av | 日韩国产精品久久久久久亚洲 | 日韩精品你懂的 | 黄色a视频 | 中文字幕久久精品亚洲乱码 | 深爱婷婷久久综合 | 欧美网址在线观看 | 一区二区不卡高清 | 在线免费视频 你懂得 | 婷婷黄色片 | 久久久久久草 | 午夜精品一区二区三区免费视频 | 最新日韩在线观看视频 | 91精品一区二区三区蜜臀 | 日韩av免费一区二区 | 在线观看中文字幕网站 | 国产无遮挡猛进猛出免费软件 | 免费在线视频一区二区 | 亚洲色图色 | 国产精品成人免费 | 国产精品video爽爽爽爽 | www色com| 成人午夜电影网站 | 久久久www成人免费毛片 | 国产精品久久久一区二区三区网站 | 国产精品第一页在线 | 色com网 | 亚洲激情校园春色 | 在线观看的av | 久久久国内精品 | 丁香花中文字幕 | 久久久久久美女 | 免费av观看 | 激情视频二区 | 婷婷伊人网| 人人插人人艹 | 国产精品久久久久av福利动漫 | 97人人澡人人添人人爽超碰 | 美女黄频免费 | 成人一区影院 | 国产亚州av | 超碰人人超 | 91大神一区二区三区 | 成人av高清在线观看 | 亚洲欧美在线视频免费 | 日韩精品视频一二三 | 欧美久久久久久久久 | 国产高清一 | 精品国偷自产国产一区 | 精品久久久久久久久亚洲 | 97天堂网 | 久久综合综合久久综合 | 国产精品久久久久久久久软件 | 国产精品自产拍在线观看蜜 | 中文字幕 欧美性 | 高潮久久久久久久久 | 国产免费区 | 91av原创 | 91桃色国产在线播放 | 婷婷激情av | 国产精品久久久久久模特 | 国产一区二区三区免费视频 | 精品久久久免费视频 | 欧美a级成人淫片免费看 | 狠狠色综合网站久久久久久久 | 欧美日韩高清免费 | 激情婷婷综合 | 91亚洲精品国偷拍自产在线观看 | 伊人中文字幕在线 | 日本三级中文字幕在线观看 | 又色又爽又激情的59视频 | 综合国产视频 | 精品一区二区免费视频 | 97超碰免费在线 | 色干干| 国产精品成人品 | 91视频中文字幕 | 亚洲国产精品久久久久婷婷884 | 欧美综合色在线图区 | 亚洲综合激情 | 日韩欧美在线不卡 | 91av社区| 国产中文自拍 | 福利一区二区在线 | 久久伦理 | 亚洲精品www| 九九热免费精品视频 | 91大神精品视频在线观看 | 三级视频片 | 久久96 | 黄色一级大片在线观看 | 99久久日韩精品免费热麻豆美女 | 蜜臀久久99精品久久久酒店新书 | 精品久久久久久久久久 | 欧美有色 | 91久久国产露脸精品国产闺蜜 | 9999国产精品 | 99色99| 成年人毛片在线观看 | 成人a大片| 亚洲黄色av网址 | 中文成人字幕 | 日韩综合色 | 色综合亚洲精品激情狠狠 | 欧美久久久久久久久久久久 | www.夜夜骑.com| 国产精品久久久久影视 | 最近中文国产在线视频 | 香蕉视频免费看 | ww亚洲ww亚在线观看 | 日本99精品 | 视频在线精品 | 99久久这里有精品 | 毛片网站在线观看 | 182午夜在线观看 | 96看片| 国产美女免费视频 | 国产午夜精品福利视频 | 日韩免费成人 | 中日韩在线视频 | 天天狠狠操 | 99精品视频免费在线观看 | 亚洲欧美日本国产 | 97国产大学生情侣酒店的特点 | 天天操天天干天天爱 | 国产第一页福利影院 | 人人涩| 久久黄色影院 | 黄色一级在线视频 | 在线免费观看涩涩 | 91成人在线观看高潮 | 最新av网址在线 | 精品在线一区二区 | 天天躁日日躁狠狠躁 | 亚洲精品麻豆 | 中文字幕乱码日本亚洲一区二区 | 久久久久久久免费观看 | 综合婷婷 | 一区二区亚洲精品 | 精品亚洲免费 | 久久精品一区二区国产 | 99久久婷婷国产综合亚洲 | 在线免费av网 | 久久不卡日韩美女 | 成人av免费看| 97超碰在线久草超碰在线观看 | av在线电影网站 | 天天干天天干天天干天天干天天干天天干 | 国产精品av免费在线观看 | 久久福利精品 | 五月天天色 | 欧美日本一二三 | 91精品国产福利 | 久99久中文字幕在线 | 夜夜骑日日 | 国产91精品一区二区麻豆亚洲 | 日韩一区二区三区高清免费看看 | 99精品国产一区二区三区不卡 | 久久精品国产精品亚洲精品 | 免费aa大片 | 久久精品99国产精品亚洲最刺激 | 欧美成a人片在线观看久 | 久久在线视频在线 | 狠狠综合| 久久久久女人精品毛片 | 欧美激情精品久久久久久变态 | 操操色| 国产日产高清dvd碟片 | 日本护士三级少妇三级999 | 国产成人精品一区二区在线 | 国产精品不卡在线播放 | 久久精品欧美一区二区三区麻豆 | 天天操综| 人人舔人人爱 | 日韩av一区二区三区在线观看 | 欧美不卡视频在线 | 日本久久电影 | 久久av高清 | 免费在线国产视频 | 深夜成人av | 午夜狠狠操 | 在线成人看片 | 日日干天夜夜 | 五月天激情视频在线观看 | 91高清免费看 | www.久久久精品 | 亚洲日日夜夜 | 久草久视频 | 在线观看中文字幕网站 | 97精品国产97久久久久久久久久久久 | 99视 | 天堂av免费在线 | 久久久天堂 | 玖玖在线播放 | 国产专区在线 | 精品久久国产一区 | 不卡电影一区二区三区 | 最近高清中文字幕在线国语5 | 国产99re| 色综合久久久久久久 | 91麻豆国产福利在线观看 | 久久国产手机看片 | 91亚洲影院 | 午夜视频在线观看网站 | 中文字幕在线观看av | 欧美日本三级 | 久久免费高清视频 | 亚洲精品乱码久久久久久9色 | 国产小视频在线观看 | 久草视频2| 久久在线观看 | 亚洲日本激情 | 亚洲精品中文字幕在线 | 91网免费看 | av中文电影 | 又黄又爽又刺激的视频 | 日韩在线色| 操久在线 | 国产成人99av超碰超爽 | 欧美aa在线 | 国产区 在线 | 91人人爽久久涩噜噜噜 | 久久激情视频 久久 | 久久免费观看视频 | 国产一区二区久久精品 | 一级成人免费视频 | 夜夜躁狠狠躁日日躁视频黑人 | 麻豆 videos| 西西444www大胆高清图片 | 国内小视频在线观看 | 久久精品国产精品亚洲 | 又粗又长又大又爽又黄少妇毛片 | 国产精品原创视频 | 色综合久久久久久久 | 亚洲片在线 | 欧美日韩视频 | 国产免费一区二区三区最新 | 婷婷六月综合亚洲 | 午夜精品一区二区三区在线播放 | 国产亚洲精品bv在线观看 | 操综合 | 成人va视频 | 99自拍视频在线观看 | 日韩在线| 亚洲精品在线视频播放 | 一区二区三区日韩视频在线观看 | 99爱国产精品 | www好男人| av三级在线看 | 黄色免费视频在线观看 | 精品美女国产在线 | 成人97视频 | 国产一区视频在线播放 | 亚洲经典在线 | 欧美国产日韩一区二区三区 | 久久久精品日本 | 五月激情站| 国产99爱| 色婷婷国产精品一区在线观看 | 国产视频69 | 日韩精品一区二区在线观看 | 中日韩欧美精彩视频 | 国产成人精品免费在线观看 | www黄色大片 | 成人国产精品久久久春色 | 91视频免费网址 | 99爱在线观看 | 精品久久免费 | 日韩视频1 | 正在播放国产一区 | 免费观看不卡av | 国产精品久久久久久久久费观看 | bayu135国产精品视频 | 亚洲国产精品推荐 | 激情中文在线 | 99精品免费在线观看 | 日韩欧美在线免费 | 99精品国产99久久久久久福利 | 日韩高清成人 | 国产在线观 | 日韩在线观看网址 | 国内精品久久久久久久影视麻豆 | se婷婷| 亚洲激情视频在线 | 免费h漫在线观看 | 久久成人人人人精品欧 | 精品欧美一区二区在线观看 | 8x成人免费视频 | 亚洲午夜久久久久久久久 | 久久久久北条麻妃免费看 | 91男人影院 | 在线观看成人福利 | 国产精品久久久久久久久久免费 | 一本色道久久精品 | 国产精品久久久久久五月尺 | 国产一区二区不卡在线 | 久久久这里有精品 | 最近2019中文免费高清视频观看www99 | 欧美一区免费在线观看 | 天天久久夜夜 | 亚洲天天摸日日摸天天欢 | 中文字幕在线网址 | 国产精品二区在线观看 | 国产久视频| 中日韩在线 | 日韩午夜剧场 | 久久久久久久久久电影 | 日日操日日 | 91精品国产电影 | 欧美日韩视频在线观看免费 | 99视| 成人小视频在线免费观看 | 日韩在线二区 | 国产视频精品免费播放 | 国产成人精品午夜在线播放 | 久久资源在线 | 欧美一区日韩精品 | 婷婷色中文字幕 | 欧美一区二区三区不卡 | 在线观看亚洲 | 夜夜视频 | 九九免费在线观看视频 | 亚洲精品中文在线观看 | 久久玖| 欧美成人69av| 国产高清精品在线观看 | 国产黄色精品网站 | 在线观av| 成人免费观看完整版电影 | 在线观看激情av | 亚洲精品国产精品国自 | 久久精品99国产精品亚洲最刺激 | 国产黄在线 | 在线黄色观看 | 精品一区精品二区 | 亚洲九九精品 | 日韩专区视频 | 天天av资源 | 久久九九影院 | 午夜精品久久久久久99热明星 | 视频一区在线免费观看 | 亚洲成av| 激情黄色av | 成人97视频 | 日韩大片在线播放 | 亚洲欧美一区二区三区孕妇写真 | 国产精品免费久久久久 | 免费观看视频的网站 | 色网站中文字幕 | 欧美成年性 | 国产美女主播精品一区二区三区 | 日韩一级理论片 | 国产香蕉久久精品综合网 | 免费精品视频在线观看 | 日韩国产高清在线 | 国产视频一区精品 | 丁香婷婷久久久综合精品国产 | 婷婷国产精品 | 91看片一区二区三区 | 国产精品毛片久久久久久久 | 天天操天天干天天摸 | 在线播放国产精品 | av免费在线观看1 | 精品a级片| 欧美极度另类性三渗透 | 中文免费在线观看 | 婷婷色在线资源 | 天天天天天天操 | 天天综合网天天 | 99免在线观看免费视频高清 | 久久免费在线观看视频 | 亚洲91网站 | 很污的网站 | 激情丁香月| 欧美成人视 | 久草视频在线免费播放 | 日韩中文字幕国产 | 成人精品国产免费网站 | 国产成人福利在线 | 中文字幕在线观看资源 | 日韩网站中文字幕 | 91精品在线观看入口 | 久草热久草视频 | 日韩综合一区二区三区 | 亚洲va欧美va人人爽春色影视 | 伊人视频 | 欧美精品久久久久久久久久久 | 亚洲精品一区二区三区高潮 | 91视频久久久久 | 久久激情影院 | 在线婷婷| 欧美精品久久久久久久 | 久久精品视频在线看 | 成年人黄色大片在线 | 色一色在线| 久久色视频 | 久久伊人精品天天 | 成人av在线一区二区 | 天天色棕合合合合合合 | 伊人国产视频 | 一级成人在线 | 99在线热播精品免费99热 | av线上看 | 亚洲好视频| 日韩av电影免费在线观看 | 欧美日韩在线视频一区 | 国内精品久久久久久久久久 | 国产精品色婷婷视频 | 国产亚洲精品久久久久久网站 | 美女免费网视频 | 免费在线国产 | 特级西西人体444是什么意思 | 狠狠操电影网 | 久草在线视频首页 | 五月天色中色 | 国产中文字幕在线视频 | 黄色影院在线免费观看 | 99久久综合狠狠综合久久 | 韩国av电影在线观看 | 精品国产日本 | 久久久精品小视频 | 日韩在线三区 | 日韩sese | 国产亚洲精品成人av久久影院 | 天堂va在线高清一区 | 日韩av免费一区二区 | 日韩av手机在线观看 | 亚洲电影一区二区 | 久久夜靖品 | 亚洲尺码电影av久久 | 色婷婷导航 | 日韩免费在线观看视频 | 亚洲精品玖玖玖av在线看 | 国产成人一二三 | 91色蜜桃 | 久草av在线播放 | 国产精品6999成人免费视频 | 日韩av电影中文字幕 | 另类老妇性bbwbbw高清 | 国产中文视频 | 日韩电影在线观看一区二区三区 | 国产999精品久久久影片官网 | 欧美亚洲成人xxx | 在线日本看片免费人成视久网 | 久久不卡国产精品一区二区 | 色老板在线视频 | 欧美资源在线观看 | 日本公妇在线观看 | 在线免费视 | 久久久成人精品 | 欧美一区二区三区在线播放 | 9在线观看免费高清完整版 玖玖爱免费视频 | 嫩小bbbb摸bbb摸bbb | 色婷婷激情电影 | 国产亚洲激情视频在线 | 欧美日韩亚洲在线 | 在线观看成人福利 | 91一区啪爱嗯打偷拍欧美 | 日本黄色一级电影 | 亚洲成人xxx | 在线国产91 | 黄色成人av在线 | 成片免费观看视频 | 色av色av色av | 亚洲1级片 | 国产一级免费播放 | 又色又爽又黄高潮的免费视频 | 久久观看免费视频 | 亚洲免费色 | 国产一级片久久 | 国产天天爽 | 日本中文字幕一二区观 | 99久久精品久久久久久动态片 | 中文字幕在线看视频 | 激情欧美一区二区免费视频 | 中文区中文字幕免费看 | 91麻豆文化传媒在线观看 | 欧美 日韩 国产 成人 在线 | 国产精品美女久久久久久2018 | 四虎在线视频 | 五月综合激情婷婷 | 日韩黄色中文字幕 | 成人在线免费av | 91麻豆免费看 | 国产成人av电影 | 国产精品s色 | 国产色网站 | 国产色拍拍拍拍在线精品 |