当前位置:首页 » 分析预测 » 用matlab小波变换做股票分析
扩展阅读
股票今天买今天能卖吗 2025-09-13 20:34:22
2000块买股票吗 2025-09-13 19:07:31

用matlab小波变换做股票分析

发布时间: 2021-09-25 20:32:36

⑴ matlab 小波变换 股票

你的函数是是什么,你把股票的 时间和价格对应起来,这样的话,就可以用小波函数进行代入进行小波变换,看信号的分解的各部分了。

⑵ 关于小波变换的Matlab编程

这是一个带参数的函数
根据下面的参数校验可以看出你应该是直接点运行了吧
所以报错了
你至少应该产生一个输入信号,比如一个正弦信号来做输入进行变换
。。。谁给你的程序啊
这bug也太多了
很多低级bug
我只是改的能运行了
function
[WT,FreqBins,Scales]=CWT_Morlet(Sig,WinLen,nLevel)
%continuous
Wavelet
Transform
using
Morlet
function
%Sig:信号
%WinLen:小波函数在尺度参数a=1时的长度(默认为10)
%nLevel:频率轴划分区间段(默认为1024)
%
%WT:返回的小波变换计算结果
%FreqBins:返回频率轴划分结果(归一化频率,最高频率为0.5)
%Scales:返回与频率轴划分值相对应的尺度划分(频率0.5对应的尺度为1)
if
(nargin==0),
error('At
least
1
parameter
required!');
end;
if
(nargin<3),
nLevel=1024;
end
if
(nargin<2),
WinLen=10;
end
Sig=hilbert(real(Sig));%计算信号的解析信号
SigLen=length(Sig);%获取信号的长度
fmax=0.5;%设置最高分析频率
fmin=0.005;%设置最低分析频率
FreqBins=logspace(log10(fmin),log10(0.5),nLevel);%将频率轴在分析范围内等
%对数坐标划分
Scales=fmax*ones(size(FreqBins))./FreqBins;%计算响应的尺度参数
omg0=WinLen/6;
WT=zeros(nLevel,SigLen);%分配计算结果的存储单元
wait=waitbar(0,'Under
calculation,please
wait');
for
m=1:nLevel,
waitbar(m/nLevel,wait);
a=Scales(m);%提取尺度参数
t=-round(a*WinLen):1:round(a*WinLen);
Mor1=pi^(-1/4)*exp(1i*2*pi*0.5*t/a).*exp(-t.^2/2/(2*omg0*a)^2);
%计算当前尺度下的小波函数
temp=conv(Sig,Mor1)/sqrt(a);
%计算信号与小波函数的卷积
WT(m,:)=temp(round(a*WinLen)+1:length(temp)-round(a*WinLen));
end;
close(wait);
WT=WT/WinLen;
%%%%%%运行示例%%%%%%%%%
Fs=100;
t=0:1/Fs:2*pi;
sig=sin(t);
[WT,FreqBins,Scales]=CWT_Morlet(sig);

⑶ 怎样用matlab制作小波分析图

小波图是什么图?难道是余波

⑷ 求助,怎么用matlab做小波分析

依次点开菜单: “File”-->“import data" --> 选择你的excel文件 -->“Next”-->“Finish”。 然后在“Workspace”中会出现新的data变量,右键单击data --> Save as 。

⑸ 如图,使用matlab编程实现小波变换对一幅图像进行处理,从而得出4个座标图。

A = imread('‪image.bmp');
subplot(2,2,1);
imshow (A);
hold on;
[C, S]=wavedec2(A, 5, 'db3' );
subplot(2,2,2);
plot (C);
title('wavelet coeffs' );
hold on;
zoom on;
zoom off;
B=sort(C, 2, 'descend' );
subplot(2,2,3);
plot (B);
title('(sorted)');
hold on;
D=log10(B);
subplot(2,2,4);
plot (D);
title('(log10(sorted))');
hold on;

⑹ 基于MATLAB的小波分析在股市技术分析中的代码 诚求,非常感谢!

你去matlab中文论坛,有个小波板块,网址主体ilovematlab

⑺ 小波分析在matlab中实现的具体步骤

%含噪声的三角波与正弦波的组合
%利用db5小波对信号进行7层分解
%生产正弦信号
clc;close all;clear all;
N=1000;
t=1:N;
sig1=sin(0.3*t);
%生成三角形波形
sig2(1:500)=((1:500)-1)/500;
sig2(501:N)=(1000-(501:1000))/500;
figure(1);
subplot(211);
plot(t,sig1,'linewidth',2);
xlabel('样本序号 N');
ylabel('幅值A');
subplot(212);
plot(t,sig2,'linewidth',2);
xlabel('样本序号 N');
ylabel('幅值A');
%叠加信号
x=sig1+sig2+randn(1,N);
figure(2);
plot(t,x,'linewidth',2);
xlabel('样本序号 N');
ylabel('幅值A');%一维小波分解
[c,l]=wavedec(x,7,'db5');%重构第1-7层逼近系数
a7=wrcoef('a',c,l,'db5',7);
a6=wrcoef('a',c,l,'db5',6);
a5=wrcoef('a',c,l,'db5',5);
a4=wrcoef('a',c,l,'db5',4);
a3=wrcoef('a',c,l,'db5',3);
a2=wrcoef('a',c,l,'db5',2);
a1=wrcoef('a',c,l,'db5',1);%显示逼近系数
figure(3)
subplot(711)
plot(a7,'linewidth',2);
ylabel('a7');
subplot(712)
plot(a6,'linewidth',2);
ylabel('a6');
subplot(713)
plot(a5,'linewidth',2);
ylabel('a5');
subplot(714)
plot(a4,'linewidth',2);
ylabel('a4');
subplot(715)
plot(a3,'linewidth',2);
ylabel('a3');
subplot(716)
plot(a2,'linewidth',2);
ylabel('a2');
subplot(717)
plot(a1,'linewidth',2);
ylabel('a1');
xlabel('样本序号 N');%重构第1-7层细节系数
d7=wrcoef('d',c,l,'db5',7);
d6=wrcoef('d',c,l,'db5',6);
d5=wrcoef('d',c,l,'db5',5);
d4=wrcoef('d',c,l,'db5',4);
d3=wrcoef('d',c,l,'db5',3);
d2=wrcoef('d',c,l,'db5',2);
d1=wrcoef('d',c,l,'db5',1);
%显示细节系数
figure(4)
subplot(711)
plot(d7,'linewidth',2);
ylabel('d7');
subplot(712)
plot(d6,'linewidth',2);
ylabel('d6');
subplot(713)
plot(d5,'linewidth',2);
ylabel('d5');
subplot(714)
plot(d4,'linewidth',2);
ylabel('d4');
subplot(715)
plot(d3,'linewidth',2);
ylabel('d3');
subplot(716)
plot(d2,'linewidth',2);
ylabel('d2');
subplot(717)
plot(d1,'linewidth',2);
ylabel('d1');
xlabel('样本序号 N');

⑻ 用matlab小波分析的实例

你确定程序一直从头到尾都在执行吗?在执行前清空了workspace?如果在workspace中没有其它变量,那么你的程序在开头读入图片和文件时可能就有误了。
X=imread('D:/AB.jpg');读入的图片将转为数组X,不知道你的X将是几维的

imshow(I);没有定义I

load AB;AB是什么,通常如果你的图片是AB.jpg,载入后图像数组将以AB为变量名,所以有了X,你还load个啥?

subplot(2,2,1);
image(X);X如果是m×n×3的rgb表示的jpg图,则维数过高,可以用image显示,但之后的小波变换就没法进行了。如果是rgb图像最好将图像转为索引图(及其相应的colormap)或灰度图,然后在进行小波分析。

⑼ 用matlab做小波分析

你要做DWT还是WP?不管哪一种你都需要将得到的小波系数进行重构(wprec和waverec),这样就满足你的量纲要求了,横坐标就可以有时间值了。

⑽ 用matlab软件怎么进行小波分析

它自己有小波工具箱,wav开头的,里面有很多相关函数,一般直接用就是了。初学建议看帮助里面小波工具箱的demo,可能更好理解。