导航:首页 > 股市分析 > maxdiff分析介绍

maxdiff分析介绍

发布时间:2021-03-26 12:50:44

Ⅰ matlab实现欧拉法和RK-4方法的数值计算

程序已经写了,不过步长你得自己调,当步长较小时,计算时间会很长
另外,tend是时间的终值,你可以设小一些。因为解析解为10*cos(x),我设成pi,就是计算半个周期。

x''(t)=-x(t)
引入y1=x,y2=x',则
y1'=y2
y2'=-x=-y1

初始条件为:
y1(0)=10;
y2(0)=0;

将下面两行百分号之间的内容,保存成DiffEulerRk4.m
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function MaxDiffX=DiffEulerRk4(dt,PlotFlag)
%dt是步长
%PlotFlag是否作图
if nargin<1
dt=0.01;
end
if nargin<2
PlotFlag=0;
end

f=inline('[y(2);-y(1)]','t','y'); %微分方程的右边项
t0=0; %初始时刻
tend=pi; %计算的点数
tt=t0:dt:tend; %一系列离散的点
N=length(tt); %点数
y0=[10;0];

%%(1)欧拉法
EulerY=y0;
for i=2:N
EulerY(:,i)=EulerY(:,i-1)+dt*f(tt(i-1),EulerY(:,i-1));
end
EulerX=EulerY(1,:); %取x

%%(2)龙格库塔法
RkY=y0;
for i=2:N
k1=f(tt(i-1), RkY(:,i-1));
k2=f(tt(i-1)+dt/2, RkY(:,i-1)+k1*dt/2);
k3=f(tt(i-1)+dt/2, RkY(:,i-1)+k2*dt/2);
k4=f(tt(i-1)+dt, RkY(:,i-1)+k3*dt);
RkY(:,i)=RkY(:,i-1)+(k1+2*k2+2*k3+k4)*dt/6;
end
RkX=RkY(1,:); %取x

%精确解
syms t
analytic=dsolve('D2x=-x','x(0)=10','Dx(0)=0','t');
rightdata=subs(analytic,t,tt);

if PlotFlag
plot(tt,EulerX,'b-',tt,RkX,'r--',tt,rightdata,'g-.')
legend('Euler','Runge-Kutta','analytic')
end

MaxDiffX=[max(abs(RkX-rightdata)),max(abs(EulerX-rightdata))];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

所有题,都得你自己调步长。
输入:
DiffEulerRk4(0.01,1) %步长取0.01的计算结果,参数为1代表作图,自己得修改步长

%%下面是变化
Error=[];
Dt=[5e-4,1e-3,2e-3,5e-3,0.01,0.05,0.1];
for dt=Dt %几种步长,自行修改
dt %查看dt,步长小,计算量大
Error_1=DiffEulerRk4(dt); %不作图
Error=[Error;Error_1]; %保存欧拉法误差
end
semilogx(Dt,Error)
legend('Euler','RK4')
xlabel('步长')
ylabel('误差')
title('与理论值误差')

Ⅱ 魔兽世界1.12单机如何改经验倍率

拜托 魔兽世界 要的就是多人一起玩的那种爽 你玩单机 快来魔兽世界 4区 希尔瓦纳丝

Ⅲ 通达信的选股公式,提示:输出不能超过1个。谁能给修改i啊下。谢谢~~

{底背离选股}
N:=1;
SHORT:=12*N;
LONG:=29*N;
M:=9*N;
DIFF:=EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);
DEA:=EMA(DIFF,M);
MACD:=2*(DIFF-DEA);
{以下处理底背离}
N1:=BARSLAST(MACD<0);{绿柱天数}
N2:=REF(BARSLAST(MACD>0),N1);{绿柱前红柱天数}
N3:=REF(BARSLAST(MACD<0),N2+N1);{红柱前绿柱天数}
MINMD1:=LLV(MACD,N1);
MINMD3:=REF(LLV(MACD,N3+N2),N1);
MINDIFF1:=LLV(DIFF,N1);
MINDIFF3:=REF(LLV(DIFF,N2+N3),N1);
MINDEA1:=LLV(DEA,N1);
MINDEA3:=REF(LLV(DEA,N2+N3),N1);
股价L1:=LLV(L,N1);
股价LL:=LLV(L,N1+N2+N3);
绿柱缩短:=MACD<0 AND MACD>REF(MACD,1) AND REF(MACD,1)<REF(MACD,2);
MACD底背离:=MACD<0 AND MINMD1>MINMD3;
DIFF底背离:=DIFF<0 AND MINDIFF1>MINDIFF3;
DEA底背离:=DEA<0 AND MINDEA1>MINDEA3;
股价新低:=股价L1=股价LL;
底背离:绿柱缩短 AND MACD底背离 AND DIFF底背离 AND DEA底背离 AND 股价新低;
=========================
{顶背离选股}
N:=1;
SHORT:=12*N;
LONG:=29*N;
M:=9*N;
DIFF:=EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);
DEA:=EMA(DIFF,M);
MACD:=2*(DIFF-DEA);
M1:=BARSLAST(MACD>0);{ 红柱天数}
M2:=REF(BARSLAST(MACD<0),M1); {红柱前绿柱天数}
M3:=REF(BARSLAST(MACD>0),M2+M1); {绿柱前红柱天数}
MAXMD1:=HHV(MACD,M1);
MAXMD3:=REF(HHV(MACD,M3+M2),M1);
MAXDIFF1:=HHV(DIFF,M1);
MAXDIFF3:=REF(HHV(DIFF,M2+M3),M1);
MAXDEA1:=HHV(DEA,M1);
MAXDEA3:=REF(HHV(DEA,M2+M3),M1);
股价H1:=HHV(H,M1);
股价HH:=HHV(H,M1+M2+M3);
红柱缩短:=MACD>0 AND MACD<REF(MACD,1) AND REF(MACD,1)>REF(MACD,2);
MACD顶背离:=MACD>0 AND MAXMD1<MAXMD3;
DIFF顶背离:=DIFF>0 AND MAXDIFF1<MAXDIFF3;
DEA顶背离:=DEA>0 AND MAXDEA1<MAXDEA3;
股价新高:=股价H1=股价HH;
顶背离:红柱缩短 AND MACD顶背离 AND 股价新高;

Ⅳ 面试题:求数组中两个数的最大差值(只能下标大的减去

int FindMaxDiff(int *p, int n)
{
int max, min, max_record, min_record;
int i;
int *cur;

max = -999999; // 先弄一个最小值
min = 999999; // 先弄一个最大值
cur = p;
for (i = 0; i < n; ++i, ++cur)
{
if ((*cur) >= max)
{
max = (*cur);
min = max;
}
else if ((*cur) <= min)
{
min = (*cur);
}
else
{
continue;
}

if ((max - min) < (max_record - min_record))
{
continue;
}

max_record = max;
min_record = min;
}

printf("A: %d, B: %d, maxdiff: %d\n", max_record, min_record, max_record - min_record);
return max_record - min_record;
}

int main(void)
{
int ar[] = {12, 2, 4, -3, 25, 19, 27};
FindMaxDiff(ar, 7);
return 1;
}

只有一次循环,记录“按顺序”的最大最小,输出是调试信息,你不要可以删除掉。
输出如下:
A: 12, B: -3, maxdiff: 15

Ⅳ 请帮忙把下面大智慧公式转换成通达信公式,谢谢!

大智慧的公式没有必要转化成通达信的!!!原因很简单:通达信的选股功能选出的股票不如大智慧精确!!!

Ⅵ matlab中的fitoption得出的各参数的意义,具体什么用的

Normalize: 对数据归一化处理
Exclude: 排除数据
Weights: 加权
Method: 拟合方法, 非线性最小二乘法
Robust: 稳健方式(通过加权方式排除异常值影响)
StartPoint: 拟合开始点
Lower: 拟合参数下界
Upper: 拟合参数上界
Algorithm: 算法 '置信区间'
DiffMinChange: 差分时参数最小变化值
DiffMaxChange: 差分时参数最大变化值
Display: 显示通知
MaxFunEvals: 最大函数计算次数
MaxIter: 最大迭代次数
TolFun: 函数精度
TolX: 参数精度

如果上面看不懂的话,得找一本数值分析的书来看,很多概念不是一两句话能说清楚的

阅读全文

与maxdiff分析介绍相关的资料

热点内容
外汇每年 浏览:871
新一代信息技术股票 浏览:478
中国十大投资理财平台排行 浏览:305
均值回归外汇交易策略 浏览:597
中国电影投资 浏览:926
2078等于多少人民币 浏览:951
科创板基金申购比例 浏览:82
反弹基金 浏览:802
适合40岁怎么理财 浏览:147
开户香港期货所 浏览:960
合营企业投资 浏览:891
青海省年丰投资有限公司 浏览:614
08245股票 浏览:573
华民慈善基金会登陆 浏览:838
8200美金等于多少人民币 浏览:126
stp外汇平台 浏览:457
资金用途有哪些 浏览:711
格莱美股票 浏览:688
沪深300指数基金管理费最低 浏览:62
大学生创业无息贷款政策 浏览:957