cyfile / Matlab-base-toolbox

本人使用Matlab基础工具箱所编写的各种代码
1 stars 0 forks source link

概率收益下的投资策略 #9

Open 213cy opened 8 years ago

213cy commented 8 years ago

untitled

default

213cy commented 8 years ago
m=1000;%m次押注
n=8;% n种押注比例
A=2;% 获胜奖励(获胜赢得押注A倍的奖励)
P1=1;% 失败概率数(失败押注金额没有了)
P2=4*P1;% 获胜概率数
%%
P=rand(1,m)>(P1/(P1+P2));%获胜数列
AP=A*P-1;
c=linspace(0,1,n);% n种押注比例
%%
W=zeros(m,n);
W(1,:)=50;
for k=1:m-1
    W(k+1,:)=W(k,:).*(1+c*AP(k));
    %W(k+1)=W(k)-c*W(k)+W(k)*c*AP(k);
    aaa=W(k+1,:);
    aaa(aaa==0)=50;
    W(k+1,:)=aaa;
end
%%
plot(log(W))
legend(num2str(c'),'Location','NorthWest');
hold on;
% 基准
C_r=log(  (1-c+A*c).^(P2/(P1+P2)).*(1-c).^(P1/(P1+P2))  );
W_r=(0:m-1)'*C_r+log(50);
plot(W_r,'k')
%%
figure
text(0.1,0.9,...
    '$$y(k)=(1-c)y(k-1)+A*c*y(k-1)*x(k)$$',...
    'Interpreter','latex','FontSize',16);%negative spaces,\!,负间隔
text(0.1,0.8,...
    '$$\frac{y(k)}{y(k-1)}=(1-c)+A*c*x(k)$$',...
    'Interpreter','latex','FontSize',16);%negative spaces,\!,负间隔
text(0.1,0.7,...
    '$$y(k)=50*(1-c+A*c*x(k))^{k-1} $$',...
    'Interpreter','latex','FontSize',16);
text(0.1,0.6,...
    '$$ln(y(k))=ln(50)+(k-1)*ln(1-c+A*c*x(k))$$',...
    'Interpreter','latex','FontSize',16);
text(0.1,0.5,...
    '$$q^{P1+P2}=\bar Q^{P1+P2}=(1-c)^{P1}*(1-c+A*c)^{P2}$$',...
    'Interpreter','latex','FontSize',16);
text(0.1,0.4,...
    '对上式求导,得到最优的 c',...
    'Interpreter','tex','FontSize',16);
213cy commented 8 years ago

untitled

213cy commented 8 years ago

%% 股票波动的一种波动模拟
m=100;
a=rand(m,1)-0.5;
A=filter(hamming(10),1,a);
A2=filter(ones(10,1),1,a);
subplot(221)
plot(A)
hold on
plot(A2,'r')
%%
B=filter(1,[1,-1],A);
B2=filter(1,[1,-1],A2);
subplot(222)
plot(exp(B/10))
hold on
plot(exp(B2/10),'r')
%%
mm=0.4;
a=kron(rand(100,1)<mm,ones(10,1));
A=0.05*(a-mm);
B=filter(1,[1,-1],A);
subplot(223)
plot(A)
hold on
plot(B,'r')
subplot(224)
% plot(exp(A))
% hold on
plot(exp(B),'r')