當前位置:首頁 » 行情解析 » matlab做股票分析法
擴展閱讀
中國生物這支股票 2024-04-30 21:09:47
股票購買後多久可以交易 2024-04-30 20:57:21

matlab做股票分析法

發布時間: 2023-03-05 00:08:18

⑴ 如何將EXCEL的股票數據導入到matlab軟體中進行分析

望高手支招!
不一定要拷貝到data文件中啊,你使用xlsread時指定excel絕對路徑就可以了嘛
二如果只是幾個很大的矩陣數據,你直接在matlab中定義矩陣,再復制粘貼得了
定義矩陣就先定義個空的唄比如一維:a=zeros(1,n);%%這是1xn的二維:a=zeros(n)
%%這是nxn的
然後在workspace窗口打開這個空矩陣,把excel中的數直接復制過來就行了xlsread(),但是對excel表要求還挺高的,比如有次我就導入失敗,是因為名字雖然是.xls,但是實際是
文本文件(製表符分隔)(*.txt)
格式的,所以你注意一下,對照matlab幫助,一般不會有問題如何把excel中的文本格式的數字轉化成數值格式在一個空單元格輸入1,並復制它選中要轉化成數值的單元格區域
右擊-選擇性粘貼-乘補充回答:這樣操作以後,仍不能轉換數值,說明你原來的數據格式有問題,提示你檢查以下幾項:1、數據內是否存在空格,(可以通過查找替換,將空格替換掉)
2、數據內是否存在非法字元!清除後,就可以運算了有的時候還需要:把修改過的區域再進一步修改,全選中,然後「單元格格式」,把單元格格式由「常規」改為「數值」!!!

⑵ 如何用MATLAB對股票數據做聚類分析

直接調kmeans函數。
k = 3;%類別數
idx = kmeans(X, k);%idx就是每個樣本點的標號。

⑶ 用matlab怎麼算股票價格的收益率,怎麼得出收益率的圖~

1、用matlab算股票價格的收益率的方法,比如(以聯想V14十代酷睿筆記本電腦,Windows10為例):
在matlab裡面通常指令是:log(Xt/Xt-1)。
其中Xt是某股票或某指數第t天的價格;
其中Xt-1是某股票或某指數第t-1天的價格.

2、製作收益率曲線圖的步驟如下,比如(以聯想V14十代酷睿筆記本電腦,Windows10為例):
1.在A1中輸入公式=(行(A1)-1) * 0.25-3。
2.在B1中輸入公式=NORMDIST(A1,0,1,0)。
3.下拉並分別將以上兩個公式復制到A25和B25。
4.插入「XY _⒌閫",A列為X軸,B列為Y軸,選擇散點圖類型為帶平滑線的散點圖。

(3)matlab做股票分析法擴展閱讀:
一、如果用matlab驗證股票的收盤價符合對數正態分布:
比如(以聯想V14十代酷睿筆記本電腦,Windows10為例)先導入數據,然後取收盤價的對數值即y=ln(y)
clc;clear
y=ln(y)
Std=std(y) %標准差
[F,XI]=ksdensity(y)
figure(1)
plot(XI,F,'o-')
x =randn(300000,1);
figure(2)
[f,xi] = ksdensity(x);
plot(xi,f);
畫出概率分布圖
ksdensity -------------------- Kernel smoothing density estimation.
表示核平滑密度估計。

二、股票收益率是反映股票收益水平的指標
1、是反映投資者以現行價格購買股票的預期收益水平。它是年現金股利與現行市價之比率。
本期股利收益率=(年現金股利/本期股票價格)*100%

2、股票投資者持有股票的時間有長有短,股票在持有期間獲得的收益率為持有期收益率。
持有期收益率=[(出售價格-購買價格)/持有年限+現金股利]/購買價格*100%

3、公司進行拆股必然導致股份增加和股價下降,正是由於拆股後股票價格要進行調整,因而拆股後的持有期收益率也隨之發生變化。
拆股後持有期收益率=(調整後的資本所得/持有期限+調整後的現金股利)/調整後的購買價格*100% 對於長期投資形式的股票投資,其投資收益的確認有兩種方法:
一種是成本法,即按被投資企業發放的股利確定為投資企業的投資收益。
另一種方法是權益法,指投資企業所投股份在被投資企業中佔到一定比例,可以對它具有控制、共同控制或重大影響時,應採用權益法進行核算。

⑷ matlab如何讀取股票數據

matlab如何讀取股票數據
該框架可為許多模型和優化方法產生具體的訓練方法。本文中,生成模型通過一個多層感知機傳遞隨機雜訊,且判別模型也是一個多層感知機。
這個特例稱為對抗的網路。這里,僅用反向傳播和 Dropout 來訓練模型,生成模型通過前向傳播來生成樣本。不需要近似推理和 Markov 鏈。

⑸ MATLAB 如何導入股票數據,並畫出K線

需要幾個關鍵步驟 (函數應用需要自己多用help 學習)
1自己先下載原始數據格式 時間 開 高 低 收
1 讀取數據 xlsread 函數
[num,txt,raw]=xlsread(filename); % 『000001.xls'
Date=datenum(txt(5:length(txt),1)); %時間
OpenPrice=num(:,1); %開盤
HighPrice=num(:,2); %收盤
LowPrice=num(:,3);
ClosePrice=num(:,4);
Vol=num(:,5); %成交量
save Data Date OpenPrice HighPrice LowPrice ClosePrice Vol; %存儲mat文件 方便下次使用
candle(HighPrice,LowPrice,ClosePrice,OpenPrice,'r',Date,12)%高 低 收 開 紅色 時間 時間格式

⑹ 如何在matlab中編寫股市macd的計算方法

你的公式太不明確,需要知道太多量才能計算得到要的結果
下面是根據你上面寫的模糊的公式編的,有問題可以Hi我。

function [DI,DIF,DEA,BAR,MACD]=stocks(tmaxi,tci,tmini,EMA12_y,EMA26_y,DIF_9,MACD_y)
%需要知道的量
%1.當日最高指數tmaxi
%2.當日收盤指數tci
%3.當日最低指數tmini
%4.昨日的12日EMA:EMA_12
%5.昨日的26日EMA:EMA_26
%6.最近9日的DIF:DIF_9
%7.昨日的MACD:MACD_y
%當然如果給出前面9個或者EMA12,26
%之後的就可以計算了
DI=[tmaxi,tci,tmini*2];
L12=0.1538;
L26=0.0741;
EMA12=L12*tci+11/13*EMA12_y;
EMA26=L26*tci+25/26*EMA26_y;
DIF=EMA12-EMA26;
DEA=sum(DIF_9)/9;
BAR=DIF-DEA;
MACD=DIF-DIF(end)*0.2+MACD_y;
MACD_y=[MACD_y,MACD];
MACD_y(1)=[];
end

⑺ 怎麼用matlab繪制股市K線圖

K線圖(Candlestick Charts)又稱蠟燭圖、日本線、陰陽線、棒線、紅黑線等,常用說法是「K線」。它是以每個分析周期的開盤價、最高價、最低價和收盤價繪制而成。
K線圖 是技術分析的一種,最早日本人於十九世紀所創,起源於日本十八世紀德川幕府時代(1603~1867年)的米市交易,用來計算米價每天的漲跌,被當時日本米市的商人用來記錄米市的行情與價格波動,包括開市價、收市價、最高價及最低價,陽燭代表當日升市,陰燭代表跌市。這種圖表分析法在當時的中國以至整個東南亞地區均尤為流行。由於用這種方法繪制出來的圖表形狀頗似一根根蠟燭,加上這些蠟燭有黑白之分,因而也叫陰陽線圖表。通過K線圖,人們能夠把每日或某一周期的市況表現完全記錄下來,股價經過一段時間的盤檔後,在圖上即形成一種特殊區域或形態,不同的形態顯示出不同意義。可以從這些形態的變化中摸索出一些有規律的東西出來 。K線圖形態可分為反轉形態、整理形態及缺口和趨向線等。後K線圖因其細膩獨到的標畫方式而被引入到股市及期貨市場。股市及期貨市場中的K線圖的畫法包含四個數據,即開盤價、最高價、最低價、收盤價,所有的k線都是圍繞這四個數據展開,反映大勢的狀況和價格信息。如果把每日的K線圖放在一張紙上,就能得到日K線圖,同樣也可畫出周K線圖、月K線圖。
它是以每個分析周期的開盤價、最高價、最低價和收盤價繪制而成。以繪制日k線為例,首先確定開盤和收盤的價格,它們之間的部分畫成矩形實體。如果收盤價格高於開盤價格,則k線被稱為陽線,用空心的實體表示。反之稱為陰線用黑色實體或白色實體表示。很多軟體都可以用彩色實體來表示陰線和陽線,在國內股票和期貨市場 ,通常用紅色表示陽線,綠色表示陰線。(但涉及到歐美股票及外匯市場的投資者應該注意:在這些市場上通常用綠色代表陽線,紅色代表陰線,和國內習慣剛好相反。)用較細的線將最高價和最低價分別與實體連接。最高價和實體之間的線被稱為上影線,最低價和實體間的線稱為下影線。
用同樣的方法,如果用一分鍾價格數據來繪k線圖,就稱為一分鍾k線。用一個月的數據繪制k線圖,就稱為月k線圖。繪圖周期可以根據需要靈活選擇,在一些專業的圖表軟體中還可以看到2分,3分鍾等周期的k線。
k線是一種特殊的市場語言,不同的形態有不同的含義。

⑻ 股票問題 用MATLAB做數學建模

%文件vol.m
function f=vol(x);
A = [2.10 2.20 2.30 2.35 2.40];;
Ap = [200 400 500 600 100];

B = [2.00 2.10 2.20 2.30 2.40];
Bp = [800 600 300 300 100];

f = -min(sum(Ap(A <= x)), sum(Bp(B >= x)));
%------------------------------------------

>> [x fval] = fminsearch('vol',2.3)

x =

2.3000

fval =

-400

你說的低於和高於我理解成小於等於與大於等於了,不對的話在函數最後一行自己改

⑼ 用matlab算股票最大值

具體步驟如下。
1打開matlab軟體,清空桌面環境
.2.定義一個符號變數。
3定義一個函數:y=t/(1+t*t);再通過以下函數來查看上面的函數圖像。
4查看該函數的圖像可知,函數在0到2之間有一個極值,本例求解該最大值為例。
5輸入以下的指令可以求得該函數最大值;max(subs(y,t,[0:0.00001:2]));其中0.00001是精度,求得最大值為0.5000