股票歷史最低價編程
⑴ 如何使用EXCEL讀取通達信股票日線數據
定量分析的第一步,是獲取數據。 獲取股票歷史行情數據最方便的途徑,就是直接讀取股票行情軟體留在你電腦中的日線數據文件。 但如果不是程序員,電腦里一般不會有VB、VC之類的編程語言。 其實,大家的電腦中一般都有OFFICE。OFFICE中的EXCEL自帶了一個VBA語言的編程環境。功能也很強大。 我用EXCEL里的VBA編寫了一段代碼,讀取通達信股票行情軟體的日線文件。已經測試通過。 代碼如下。與愛好定量分析的朋友分享。 TypeMyType a1AsLong'標示碼 a2AsLong'日期 a3AsSingle'開盤價 a4AsSingle'最高價 a5AsSingle'最低價 a6AsSingle'收盤價 a7AsSingle'成交金額 a8AsLong'成交量 EndType Sub按鈕1_Click() DimFile2AsInteger DimbAsMyType File1=FreeFile Opensh600000.dayForBinaryAccessReadAs#File1i=1DoWhileNotEOF(File1) Get#File1,,b Cells(i,1)=b.a1 Cells(i,2)=b.a2 Cells(i,3)=b.a3 Cells(i,4)=b.a4 Cells(i,5)=b.a5 Cells(i,6)=b.a6
⑵ 如何用大智慧找到一支30日內達到歷史最低價的股票請寫公式
首先計算歷史最低價,
然後計算N周期內的最低價,(N周期就是你設定的周期--函數的參數)
比較這兩個值是否相等就可以了。
公式如下:
LLV(L, 0) == LLV(L, N);
⑶ 如何編程從免費股票軟體中提取實時數據
自己寫程序的話,一種方法是從已提供的信息源,例如webservice獲取數據。還有種辦法就是去連接提供即時信息的網頁硬解析。
代碼舉例如下:
Created on Thu Jul 23 09:17:27 2015
@author: jet
"""
DAY_PRICE_COLS = ['date', 'open', 'high', 'close', 'low', 'volume',
'chg', '%chg', 'ma5', 'ma10', 'ma20',
'vma5', 'vma10', 'vma20', 'turnover']
DAY_PRICE_URL = '%sapi.finance.%s/%s/?code=%s&type=last'
INDEX_KEY = ['SH', 'SZ', 'HS300', 'SZ50', 'GEB', 'SMEB']
INDEX_LIST = {'SH': 'sh000001', 'SZ': 'sz399001', 'HS300': 'sz399300',
'SZ50': 'sh000016', 'GEB': 'sz399006', 'SMEB': 'sz399005'}
INDEX_DAY_PRICE_COLS= ['date', 'open', 'high', 'close', 'low', 'volume',
'chg', '%chg', 'ma5', 'ma10', 'ma20',
'vma5', 'vma10', 'vma20']
K_TYPE_KEY = ['D', 'W', 'M']
K_TYPE_MIN_KEY = ['5', '15', '30', '60']
K_TYPE = {'D': 'akdaily', 'W': 'akweekly', 'M': 'akmonthly'}
MIN_PRICE_URL = '%sapi.finance.%s/akmin?scode=%s&type=%s'
PAGE_TYPE = {'http': 'http://', 'ftp': 'ftp://'}
PAGE_DOMAIN = {'sina': 'sina.com.cn', 'ifeng': 'ifeng.com'}
URL_ERROR_MSG = '獲取失敗,請檢查網路狀態,或者API埠URL已經不匹配!'
get_hist_data.py
# -*- coding: utf-8 -*-
"""
Created on Thu Jul 23 09:15:40 2015
@author: jet
"""
import const as ct
import pandas as pd
import json
from urllib2 import urlopen,Request
def get_hist_data(code = None, start = None, end = None, ktype = 'D'):
"""
功能:
獲取個股歷史交易數據
--------
輸入:
--------
code:string
股票代碼 比如:601989
start:string
開始日期 格式:YYYY-MM-DD 為空時取到API所提供的最早日期數據
end:string
結束日期 格式:YYYY-MM-DD 為空時取到最近一個交易日數據
ktype:string(default=D, 函數內部自動統一為大寫)
數據類型 D=日K線,W=周K線,M=月K線,5=5分鍾,15=15分鍾
30=30分鍾,60=60分鍾
輸出:
--------
DataFrame
date 日期
open 開盤價
high 最高價
close 收盤價
low 最低價
chg 漲跌額
p_chg 漲跌幅
ma5 5日均價
ma10 10日均價
ma20 20日均價
vma5 5日均量
vma10 10日均量
vma20 20日均量
turnover換手率(指數無此項)
"""
code = code_to_APIcode(code.upper())
ktype = ktype.upper()
url = ''
url = get_url(ktype, code)
print(url)
js = json.loads(ping_API(url))
cols = []
if len(js['record'][0]) == 14:
cols = ct.INDEX_DAY_PRICE_COLS
else:
cols = ct.DAY_PRICE_COLS
df = pd.DataFrame(js['record'], columns=cols)
if ktype in ct.K_TYPE_KEY:
df = df.applymap(lambda x:x.replace(u',', u''))
for col in cols[1:]:
df[col]=df[col].astype(float)
if start is not None:
df = df [df.date >= start]
if end is not None:
df = df[df.date <= end]
df = df.set_index('date')
return df
def code_to_APIcode(code):
"""
功能:
驗證輸入的股票代碼是否正確,若正確則返回API對應使用的股票代碼
"""
print(code)
if code in ct.INDEX_KEY:
return ct.INDEX_LIST[code]
else:
if len(code) != 6:
raise IOError('code input error!')
else:
return 'sh%s'%code if code[:1] in ['5', '6'] else 'sz%s'%code
def get_url(ktype, code):
"""
功能:
驗證輸入的K線類型是否正確,若正確則返回url
"""
if ktype in ct.K_TYPE_KEY:
url = ct.DAY_PRICE_URL % (ct.PAGE_TYPE['http'], ct.PAGE_DOMAIN['ifeng'],
ct.K_TYPE[ktype], code)
return url
elif ktype in ct.K_TYPE_MIN_KEY:
url = ct.MIN_PRICE_URL % (ct.PAGE_TYPE['http'], ct.PAGE_DOMAIN['ifeng'],
code, ktype)
return url
else:
raise IOError('ktype input error!')
def ping_API(url):
"""
功能:
向API發送數據請求,若鏈接正常返回數據
"""
text = ''
try:
req = Request(url)
text = urlopen(req,timeout=10).read()
if len(text) < 15:
raise IOError('no data!')
except Exception as e:
print(e)
else:
return text
#測試入口
print(get_hist_data('601989','2015-07-11','2015-07-22'))
⑷ 我怎樣才能查到一支股票的歷史最高價和最低價
隨便下載個股票軟體,周期調到年線,復權處理為前復權,找到最高點和最低點就可以了
⑸ 哪裡可以查某隻股票的歷史最高和最低價和發行時間等
直接把K線圖改成時間周期為「周線」,然後按向下的方向鍵,就是滑鼠上的那個方向鍵,就可以縮小圖形,能夠清楚的看到股票的發行時間,歷史上的最高點和最低點!
⑹ 所有的股票軟體為什麼找個歷史最高價,歷史最低價都做不到
所有的股票軟體都能找到歷史最高價和歷史最低價的。方法是這樣的,打開股票軟體,輸入要查找的股票代碼,打開K線圖,按壓鍵盤上的向下箭頭,這樣就能顯示該股的從上市到今天的完整的K線圖,這樣就能看到該股的歷史最高價和歷史最低價!
⑺ 高手,請問如何編寫60分鍾的最高價,最低價,收盤價,開盤價
大智慧公式編皮念寫教程
公式入門
我們大多數的用戶並不是完全了解「公式編輯器」的意義,簡單地,我們可以從以下幾個角度進行理解:
一、指標分析:
「公式編輯器」好比是一個工作母床,通過這個工作母床可以製造出所需要的各式各樣的零件,同樣,在指標分析的工作中,利用編輯器可以編寫出相應的分析條件,這種方法是在技術分析當中最為常用的方法之一。例如,指標KD、指標MA等等,通過對這些指標的觀察、分析,找出一些合適的條件作為買入賣出點。當然,我們也許需要的是一些自己的指標,一些自己的准確的指標,更多的MB、MC、MD等等,這一切我們通過「公式編輯器」可以實現。
二、條件選股:
編寫公式都要用到什麼東西?
我們留下了許多問題--都是公式編寫的基礎問題,所以我們這節課來解決這些基礎的問題。
什麼是技術指標?
MA均線就是一種技術指標,我們在炒股的時候,經常會將一些行情數據進行數學計算得出一些曲線等等,方便我們掌握股市的變動情況。
什麼是條件選股?
簡單講,就是按照您的設定的條件用電腦幫助您完成一些太多太復雜的挑選--比如您有一些好的心得和方法,可使有1000多隻股票,您就是有100雙眼睛有時也不一定可以看得過來,這時電腦就派上用場了!
什麼是參數?
比如講:10日均線,您可以把10日當作參數,好處在於,您覺得需要修改成5日的時候,就可以使用一些簡單的方法,例如參數精靈來很方便的修改和調整。參數需要名字,例如M就不錯。還要規定參數的范圍,例如1日至260日。這樣我們就可以在1到260之間任意調節M的值了,M最常用的數填在「預設」一欄,例如你最喜歡用10日均線,那就填10吧。
什麼是周期?
這么解釋吧!我們有的投資者喜歡使用日線圖作技術分析;有的喜歡用5分鍾的K線;有的喜歡使用長一點時間的,例如周線。所以在公式設計中,允許不同喜好的使用者選擇不同槐桐的分析時間--就是可以選擇不同的周期。
什麼是函數?
函數在公式編寫非常重要,如果作個比喻,我們用一種語言去告訴電腦我的想法,並且讓它去幫我做,那麼函數就是這種語言的單詞。
我們在公式編輯器中選擇插入函數,就可以看到裡面有許多的函數,我們在附錄中有一個簡表,大家可以到那裡去檢索!
例一:
一根K線有四個價格組成:
最高價:HIGH
收盤價:CLOSE
最低價:LOW
開盤價:OPEN
成交量:VOL
成交鉛握坦額:AMO
例二:
兩條均線不斷地交叉,就專門設定了一條函數來描述兩條線交叉:CROSS(X,Y)
假如下圖中的兩條均線一條名叫X,另外一條叫Y
CROSS(X,Y)表示X向上穿過了Y
CROSS(Y,X)表示Y向上穿過了X
例三:
前面的CLOSE,還是VOL,都表示當天,或者您使用的不是日線,那就表示本周期的數據,那麼前幾天的怎麼表示呢?
REF(X,M)
例如:
REF(Close,5)表示5天前的收盤;
REF(Vol,10)表示10天前的成交量;
這里的M就是參數,您現在明白了什麼是參數了嗎?
例四:
如果我想把兩個條件並列在一起怎麼辦?
AND
X AND Y就表示條件X和條件Y
好了!本課結束吧--有點稍慢,下面會好一些!
編寫一條最簡單的指標線
通過前幾課的學習,我們今天開始使用軟體的公式編輯功能編寫我們自己的第一條指標線。
其實不難,你應該對自己有信心!
按照主菜單-工具-公式**-選擇-「技術指標」-點擊「新建」,然後在公式編輯器中留下你的第一行腳印吧!
點擊:「確認」,現在看一下我們第一條指標線。
這條指標線與你的想法相符嗎?
總結與補充:
1、如果選擇:「主圖疊加」,我們的指標線會與K線圖顯示在同一個圖形框中,現在我們的指標線顯示在其下方,即「副圖」中;
2、參數可以有,也可以沒有,但是鼓勵大家設置參數,這是非常好的習慣;
3、一個句子完了,別忘了以分號結尾;
你的公式寫得對不對,可以通過「測試公式」來檢查,如果錯了,它會告訴你錯在哪裡。
編寫最常用的均量和均價線
均價線,不就是那個「移動平均線MA」什麼的嗎?不過,話說回來,聽說10個人裡面有11個人都在使用,我可得學習學習!
原理是??
5日平均線=(今天收盤價+昨天收盤價+.....--5天前的收盤價)/5;
10日平均線=(今天收盤價+昨天收盤價+......+10天前的收盤價)/10;
150日平均線=(今天收盤價+昨天收盤價+......+150天前的收盤價)/150;
200日平均線......不是這么麻煩吧?難道我每天都要寫這么多得數才得到一條平均線????
你有什麼辦法?
MA1=MA(CLOSE,5);
MA2=MA(CLOSE,10);
MA3=MA(CLOSE,50);
......
當然是有簡單的方法了!你把我在上面說過的話寫下來,按照前面幾課講的,寫在公式的編輯欄當中就可以了!
注意:
「MA」表示的就是計算平均值。
在括弧內寫上計算的對象和計算的時間長度。
MA1,MA2,MA3......是好幾條指標線,別忘記了用分號把它們分開。
最後呢?電腦自己會把它們一起畫出來。
均量線???
均價線都有了,照著葫蘆畫瓢,把收盤價CLOSE換成成交量VOL就行了!
MA1:MA(VOL,5);
MA2:MA(VOL,10);
MA3:MA(VOL,150);
MA4:MA(VOL,200);
今天有幾只發生MA金叉?
我們學習了編寫MA移動平均線,關於這幾條指標線如何使用?我想大家可能都比我清楚。例如短期均線和長期均線發生了金叉或者死叉,......等等,葛蘭維爾的八項法則......如果說如何用分析家軟體編寫一個條件,讓電腦把今天兩個市場的股票中所有發生了黃金交叉的股票選出來呢?
想知道嗎?這就是「條件選股」,按照「條件」電腦自動「選擇股票」出來,可以供您分析,要不然的話,技術分析的投資者都會累死了!
跟我學!
第一步:「工具」欄中選中「公式**器」
第二步:我們現在選擇「新建」一個「條件選股」公式,結果出現了下面的編輯欄!然後在裡面寫上您的條件!
第三步:按照說明書上的步驟選股就行了!
注意:
1、在條件選股中點擊「新建」;
2、原來MA5:MA(CLOSE,5);
表示的是一條指標線,可是現在我們在條件選股當中只要引用它,不需要把它畫出來。所以我們在冒號的後面加一個符號,表示等會要引用它:MA5:=MA(CLOSE,5);
這個在分析家的公式編輯中,叫做「中間表達式」。
X=1;
Y=X+1;
Y=?
我們學過上面的數學,都知道把X=1代入到Y的計算中去,「X=1;」就是一個中間表達式,您明白了嗎?
條件選股總結:
1、指標和條件選股在結構上沒有差別,只是在內容上,條件選股要多加上我們的條件,比如大於10,或者交叉等等!
2、中間表達式可以幫助我們清晰的表達我們的公式,不至於使公式的結構特別的混亂!
如何編寫BIAS指標?
如果大家都是均線的忠實愛好者的話,那麼大家一定牢牢記得在均線大師哥南威爾的8大法則當中的第四條和第五條中曾經提到了當股價偏離均線太遠的時候,便會向它靠攏,但是並不提到多遠才會靠攏--為了解決這個問題,也為了我們更好地用客觀數據來體現股價運動的過程,乖離率這個指標應運而生。
本課我們的任務就是通過對乖離率的原理到編寫方法的學習來加強我們對公式設計的理解。
首先,什麼是乖離率?
以當日的均線價格為准,股價和均價之間的差距稱為乖離程度,以乖離程度除以均價的百分比就是乖離率。
當日股價與10日均線的乖離率=(當日股價-10日均價)/10日均價*100;
當日股價與20日均線的乖離率=(當日股價-20日均價)/20日均價*100;
當日股價與30日均線的乖離率=(當日股價-30日均價)/30日均價*100;
原理就是這么簡單,可是怎麼使用呢?您別急,所用的指標其實都是在觀察當中得出一定的啟示,您先實現這幾條指標線,讓它們以圖形的方式出現在您的面前,然後您再去觀察,一定會事半功倍!
比如編寫10日乖離率
第一步:乖離率的命名,崇尚人家的習慣,依舊使用BIAS,那麼第一條就叫做BIAS1好了!
第二步:當日股價用CLOSE表示;
10均價我們在前一節課剛剛學過,順手拈來,用MA(CLOSE,10)表示;
第三步:一樣使用加減乘除符號以及括弧,只是要注意只有小括弧,沒有中大括弧,那麼公式就有了--
BIAS1:(CLOSE-MA(CLOSE,10))/MA(CLOSE,10)*100;
這樣的話我們在技術指標編輯器中將另外兩條指標也同樣寫下來,就得到了BIAS指標,請看下圖:
第四步:就是您得自己好好觀察您的指標公式在各個股票的表現,得出您自己的結論,因為每一個投資者即使是在使用同樣一個指標的時候,都會有不同的理解,我們無法判斷優劣,但是有一條可以告訴我們答案,那就是永遠讓市場說話,因為它永遠是對的!
如果您不介意的話,可以參考BIAS,不過僅供參考!
您明白怎麼編寫了嗎?
我能不能直接用寫好的指標公式?
我想用KD指標選股,能不能直接寫成「D>20」就可以執行了?
當然可以!考慮到了這種偷懶的做法,所以我們一共提供了兩種供偷懶的人士使用,其中一種與上面的要求只是在寫法上稍有不同!
第一個方法:
第一步:在條件選股的編輯器中點擊「引入指標公式」。
引入「其他公式」。然後,我們從中選擇一個,例如「KD」,讓我們來看一下結果如何?
第二步:上一步的操作結果請看右邊的圖形,系統自動的把KD指標的整個編寫內容搬來了!
現在需要我們做的就是:續上一行條件「D<20」,OK!完成!
有沒有簡單的方法?
第二個方法:就一句話:「KDJ,D」<20;
「KDJ,D」
表示現在我要是用KDJ指標當中的D指標,不過大家要看清楚是怎麼寫的哦!寫錯了計算機可是不會改錯的!
總結:
用上面的方法可以引用所有指標,所以不必寫那麼多!
注意格式上,兩邊用引號括起來,指標名稱KDJ和指標線名稱D之間用「,」隔開!
額外加餐
現在我們可以很方便的做另外一件事了,我們可以將通常說的KDJ買入條件完整的表達出來了:
「KD指標發生了黃金交叉,並且D<20」
T1:=「KDJ,K」;--引用K線;
T2:=「KDJ,D」;--引用D線;
條件: AND在分析家中就表示「並且」,將兩個條件並列起來
CROSS(T1,T2)ANDT2<20;
第九課 放量、縮量、上漲、下跌、收陽、收陰
在前面的學習當中,我們見到了一些基本的表達方法、方式,今天我們的任務是學習一些常見的概念如何編寫,例如上面所列出來的放量、上漲等等,因為這些都是在公式編寫過程當中要用到的基本的小的形態特徵,許多的技術指標的選股條件都是由它們組成的。
放量:
1、今日比昨日的成交量放大了1倍:
VOL/REF(VOL,1)>2;
2、今日的五日均量比前五天的五日均量放大了3倍:
AA:=MA(VOL,5);
BB:=REF(AA,5);
AA/BB>4;
3、今天的成交量達到了整個流通盤的10%以上:
VOL/CAPITAL>10/100;
(注意,10%的表達式是10/100,或者0.1)
縮量:
1、今日比昨日的成交量縮小了1倍:
VOL/REF(VOL,1)<0.5;
2、今日的五日均量比前五天的五日均量縮小了一半:
AA:=MA(VOL,1)<0.5;
BB:=REF(AA,5);
AA/BB<0.5;
3、今天的成交量不足整個流通盤的0.5%:
VOL/CAPITAL<0.5/100;
上漲:
1、今日漲幅達到了7%以上:
CLOSE/REF(CLOSE,1)>1.07;
2、十日均價繼續上漲:
AA:=MA(CLOSE,10);
BB:=REE(AA,1);
AA>BB;
下跌:
同上面的表達方式一樣,將方向改變了而已:
收陽、收陰:
1、當天收陽:CLOSE>OPEN;
2、當天收陰:CLOSE<OPEN;
高開、低開:
1、當天股價高開,言下之意開盤高於昨日收盤:OPEN>REF(CLOSE,1);
2、當天股價低開:OPEN<REF(CLOSE,1);
跳空:
跳空亦有向上和向下兩種:
當日開盤在昨日最高之上,即為向上跳空:OPEN>REF(HIGH,1);
反之,開盤小於昨日的最高價,為向下跳空:POEN<REF(LOW,1);
事實上,我們在編公式的過程,就是將這些條件有機地結合起來作為我們判斷的條件。舉一個很簡單的例子,如果是K線形態呈現出放量上攻的態勢,那麼如何編寫這個公式呢?高開高走又應該如何編寫呢?
我們把放量和上漲的兩個條件組合在一起,讓某一天的形態特徵同時滿足兩個條件就達到目的;同樣地將高開的高走兩個條件結合在一起,也就找到了我們所需的條件。
結果就是:
放量上攻之一,以上面所舉例組合:
AA:=VOL/REF(VOL,1)>2;
BB:=CLOSE/REF(CLOSE,1)>1.07;
AA AND BB;
高開高走:
AA:=OPEN>REF(CLOSE,1);
BB:=CLOSE>OPEN;
AA AND BB;
OK!本課到此結束,留下一個問題,看看您有沒有真正的理解,向上跳空之後兩天內並未回補如何編寫呢?
提示:實際上就是昨天發生了跳空缺口,這兩天的最低價一直在兩天前的最高價之上。
AA:=REF(OPEN,1)>REF(HIGH,2);
BB:=REF(LOW,1)>REF(HIGH,2);
CC:=LOW>REF(HIGH,2);
AA AND BB AND CC;
仔細一想,若BB成立,AA一定成立,AA實際上沒有存在的必要,你想通了嗎?
更簡單的方法,下面的一句話可以的上面的四句:
COUNT(LOW>REF(HIGH,2),2)=2;
第十課 漲停板攻擊?
學了這么多了,應該教點實戰的內容了!我們來學習一下別人的經驗,「漲停板追擊」,同時這裡面還潤孕育著一個簡單但是又頗有意義的道理!
一、量化的概念
我們都知道,按規定漲幅不得超過10%,但是由於四捨五入的關系,常常有9.98%、10.23%等等的漲停板,所以我們要找一個合適的數值,然後用分析家的語言告訴計算機,這個過程學名叫量化!
比如我們考察之後,決定讓大於9.99%的都為漲停。
二、編寫公式
其實就一句話:今日收盤除以昨日收盤的值大於1.0999
X:=CLOSE/REF(CLOSE,1)>1.0999;
三、測試我們的條件
大家都知測試的功能,要不然你怎麼知道你的經驗在歷史上的表現是好還是不好呢?
按照下圖指引進入條件選股的界面,之後選中您的條件,具體辦法請參見(使用說明書)。然後填入測試時間和測試標准!
在這里我們的測試方法是:
測試時間是從2000/01/01到2001/03/02,測試股票共計583隻,初始投入100,000元。
當滿足買入公式中定義的條件時,也就是漲停板時,按照收盤價使用相同資金買入一隻股票,當滿足以下平倉條件時按照收盤價平倉;買入5日後強制平倉或者虧損達到3%止損平倉或者利潤達到5%止贏平倉,然後按照以上的規則統計在測試的時間段內的所有交易的狀況。
這是一種追漲的短線方法,所以測試的時間我們只用5天,目標利潤為5%,(非常抱歉,因為其中的設置和選擇方法十分靈活而且需要較好的理解能力,所以我們在這里就不介紹具體的內容了)
點擊開始測試!一切OK!來看結果吧!
1、從成功率上看,實際達到5%的獲利要求的交易次數67.89%,我們已經比較滿意這個結果了,可是要用於實戰,可不可以再提高呢?
2、所謂的提高就是優化的一個內容,簡單說,優化就是讓它更好!優化我們的條件,讓它的表現更好!
3、加上一個縮量的條件,比如當日成交量小於5日的均量;Y:=VOL<MA(VOL,5);大家可以做一下測試,看看結果如何!以下是同樣測試條件下的結果。 X AND Y;
您滿意嗎?我們的成功率已達到了80%,剩下的任務就是您如何操作的問題了!
註:請大家考慮一下在實戰當中,如果您按此買入可不可行?
總結:編寫公式並不是為了編公式而編寫復雜的公式,您個人對某一個特徵或者形態的理解最重要。所以光有經驗不夠,您還得把它轉化成您自己的應對策略!您需要不斷總結、測試、優化您的公式。
第十一課 多頭排列--良好的上升趨勢
均線的多頭排列一直以來都被大家視為一種良好的上升趨勢的表現,因為這種形態的形成需要較長的時間,和較大的能量,而被主力或者莊家利用作為騙線的可能性就比較小,股市當中也遵循慣性的原理,當一個趨勢形成之後,要改變它,是不容易的,因為股價有著沿著原來的運動方向上的慣性!
首先,讓我們來看看幾種多頭排列:
5、10、30日均線:5、10、30日均線:30、60、90日均線:
在圖一中和圖二中我們採用的是同一周期的均線,即都是5、10、30日均線,我們可以觀察到在同一周期下的均線排列有相同之處,也有很大不同之處:圖一中的5日均線=10日均線、30日均線平滑優美,而在圖二中的5日和10日均線不斷的碰及30日均線然後上升;
在圖三中我們選用的是30、60、90日均線,相對來說均線的多頭排列也顯得很平滑。
為什麼會有這樣的差別呢?如果您要是認真一點的話,就可以發現原來前兩圖的K線走得不一樣,一個一波拉到頭,一個分成幾波拉到頭,而在圖三當中我們採用了較長周期的均線系統,從而在一定程度上過濾了這種現象,具體在使用的過程中,您可要多注意它們的區別!
好了,我們來看一下如何編寫,拿第一個為例,觀察它們的特徵:
5/10/30日均線依次從上而下的排列,這種情況維持一段時間,假設我們這里定為4天以上:
5/10/30日均線依次從上而下的排列:
AA:=MA(CLOSE,5);
BB:=MA(CLOSE,10);
CC:=MA(CLOSE,30);
T1:=AA>BB AND BB>CC;
以上情況維持一段時間,假設我們這里定為4天以上:
COUNT(T1,4)=4;
COUNT(X,N)表示統計在N天內滿足條件X的有幾天。
最終的結果就是如下所示:
AA:=MA(CLOSE,5);
BB:=MA(CLOSE,10);
CC:=MA(CLOSE,30);
T1:=AA>BB AND BB>CC;
COUNT(T1,4 )=4
編寫完畢,我們在上面的例子當中,舉的是最簡單的一個,其實您在編寫的過程當中,還可以加上一些比較准確地描述,以取得更好的效果,例如同時三條均線向上發散等,當然還有您自己的心得。
第十二課 逃頂K線形態之--黃昏之星
一、概念學習
當市場出現一條大陽線後,通常會產生跳空高開的情況,有時便會出現十字星或類似十字星的小陰線(小陽線)。另一種相反的情況是出現在一條大陰線後,在這兩種情況下形成的類似十字星的K線都被稱為「星型線」。
當該形態出現在一段上升行情的當中,就很容易形成所謂的經典K線形態--黃昏之星。
二、編制過程
通過我們前面的學習,其實已經可以比較輕松的編制這個條件了--前人已經清晰地把這個形態的具體特徵描述出來,剩下的工作就是把這些特徵用數字表示--這就是前面提到的量化的過程!
該圖組合一共由三根K線合成,我們按照以下的步驟一步一步地一邊尋找每日K線的特徵,一邊進行編寫:
為了結構簡單起見,首先將二天的高開低收用中間表達式表達出來,因為我們在後面的編寫過程中會分別使用到這些數據。
1、今日K線的:開-a1, a1:=open;
收-a2, a2:=close;
高-a3, a3:=high;
2、昨天K線的:開-b1, b1:=ref(open,1);
收-b2, b2:=ref(close,1);
高-b3, b3:=ref(high,1);
低-b4, b4:=ref(low,1);
3、前天K線的:開-c1, c1:=ref(open,2);
收-c2, c2:=ref(close,2);
高-c3, c3:=ref(high,2);
低-c4, c4:=ref(low,2);
4、我們將會分別描述出三天的K線形態,然後匯總,首先我們觀察今日K線的特徵,今天是一根低開低走的大陰線,我們給它一些數字上的定義:
a、今日開盤價小於昨日收盤價; aa:=a1<b2 and
b、今日的陰線實體較長,我們用開盤價和收盤價相比,長度大於4%:a1/a2>1.04;
5、昨日K線的特徵,是一根十字形態的K線,並且在左右兩根K線之上,分別表達為:
a、昨日跳開,高於前天的收盤: bb:=b1>c3
b、昨日收盤同樣在缺口之上: and b2>c3
c、線形實體長度很小,也就是昨日開盤和收盤之差比昨日開盤的值小於0.01:and abs(b1-b2)/b1<0.01
d、K線有上下影線,可以表示為最高價和最低價不等於收盤價也不等於開盤價:and b3>b1 and b3>b2 and b4<b1 and b4<b2
e、當日的最高價為20天以來的最高價: and b3=hhv(high,20);
6、前日K線的特徵:股價大幅上揚,幅度較前一日收盤高出4%並且收盤大於開盤:cc:=c2/ref(close,3)>1.04 and c2>c1;
綜合選股條件:最後我們將三天的K線特徵會合起來,合成一個最後的條件就是由圖所示內容: aa and bb and cc
三、選股的結果
我們把上面的條件按照前面章節所講的方法帶入到分析家的公式選股條件當中去檢驗。
按下圖作為標准
四、總結
其實到底是難還是不難呢?其實不難,只是你要細心一點把一個一個的條件組合起來,有機地結合起來!我們的許多形態就是這樣由一個一個的K線組合起來的結果!
1、我們測試了將近4年的時間,一共找到了幾個這樣的信號,您滿意嗎?--應該說,不滿意!可是原因在哪裡呢?--我們的條件過於苛刻,因為要同時滿足的條件太多,您可以嘗試更改一些條件以獲得更多的信號!
2、大家還會發現有的信號出現的位置不好,例如西飛國際,因為我們其中有一個條件不是很好,不過您可以做到將它去掉--告訴我您可以做到,算是課後作業吧,我看相對高位dd:=b3=hhv(high,20),怎麼看都不舒服,您有什麼辦法?
突破底部橫盤整理創新高!
「橫的越長,豎的越高」,業內業外一直流傳這樣一句話。真實的講,它描繪了股票的價格在一定的范圍上下波動,如果有莊家主力在其中悄悄吸納......直到某一天股價一鶴沖天!沉寂時間越長,爆發力越驚人!
正所謂「三年不鳴,一鳴驚人」......
公式編寫:
我們尋找各種特徵,並用數字表示出來:「長期」設定為150天;「橫盤」設定股價在150日均線上下15%波動;放量;並且股價創下150天以來的歷史新高!
1、首先用公式描述放量
a、將會使用5日均量來進行比較,成交量比昨日成交量放大兩倍;
b、V1是五日均量,REF(V1,1)就是昨日的均量;
V1:=MA(VOL,5); V2:=VOL/REF(V1,1)>2;
2、長期橫盤
a、PZ1是當天150日均價: PZ1:=MA(CLOSE,M);
b、PZ2是150日的最高價; PZ2:=HHV(HIGH,M);
c、PZ3是150日的最低價; PZ3:=LLV(LOW,M);
d、PZ4是150日的最高價和150日均價的距離的百分比,PZ5剛好相反是最低價和均價的差的百分比; PZ4:=(PZ2-PZ1)/PZ1; PZ5:=(PZ1-PZ3)/PZ1;
e、設為股價在150日均線上下15%波動,也就是PZ4、PZ5都小於0.15;
PZ:=REF(PZ4,1)<0.5 AND REF(PZ5,1)<0.15;
3、今天創下歷史新高,也就是今天的最高價是150天內的最高價! TP1:HHV(HIGH,M); TP:=HIGH=TP1;
綜合三個條件的最後的邏輯判斷式就是我們的最後結論! V2 AND PZ AND TP(參數M=150天)
這樣,您將上面多寫的內容,簡單的編入到公式編輯器中去,我們的工作就已經做完了,剩下的測設,大家請按照我們前面所講的內容去做,只有不斷地完善你的公式,把它和實戰結合起來,形成您自己的特點的操作體系,您才算是有了自己的武器!
函數介紹:
HHV(X,M)
表示X在M天內的最高值!
例如:
HHV(HIGH,150)每日最高價在150天內的最大值
HHV(VOL,150)每日成交量在150天內的最大值
LLV(X,M)
表示X在M天內的最小值
例如:
LLV(LOW,10)每日最低價在10天內的最小值
HHV(VOL,20)每日成交量在20天內的最小值
好了!第十課我們也講完了,我們來回顧一下我們的課程,做一個最後的總結!
事實上,編寫公式並不是一件很難的事情!他並不是為編寫復雜的公式而在編寫公式,恰如孔乙己會寫四種回字又有何意義?重要的是您要深刻地理解某一點、某一處--沒有人可以全部了解這個市場,可是也很少有人能夠潛下心來去想清楚一個問題。
在編寫公式的時候,大家一定體會到了,由於計算機的使用給我們帶來了巨大的方便,可使計算機並不是完全智能化的,所以它只是一個工具,還有著許多的重要的工作需要人去完成,您千萬不能放棄了自己而去迷信一個工具,可能它是您的幫手,但目前來說,無法替代您!您的投資還得由您去做!
gzclick廣州點擊網為你解答
⑻ 求股票公式的所有函數,分數很少,積分不夠,請諒解!急用!
每個股票軟體肉都有的.
點擊:公式管理器→編輯(或修改)插入函數→就見到了