我不是程序員,也不懂編程,。 前段時間,,有位朋友花了幾塊錢在網(wǎng)上買了一個尾盤選股法,類似的廣告,,大家應(yīng)該也看過,。 朋友用這個選股法選了幾只股票,結(jié)果也不管用,,有漲有跌,,和賭場猜大小也沒啥區(qū)別。 他就把這個源代碼發(fā)給了我,,我一看挺簡單,,就算是我這樣不會編程的人都是一學(xué)就會。 前幾天,,又有人讓我?guī)退巶€OBV的選股程序,,于是我就給他寫了一個。 通達信編程選股首先要列出你對股票都有哪些具體的要求,,這個要求必須是量化的,,可以用數(shù)字表達出來,不能含糊其辭,。 看看這位朋友對股票的要求: 一,,股價持續(xù)下跌兩個月以上,OBV值一直在均線下方運行,。 這個要求很難用數(shù)字表達,,因為他是要求股價下跌兩個月以上,也就是說下跌兩個月,、三個月甚至半年都行,。 這樣模糊的表述,是很難編程的,,因此我們先放棄這個標準,,不考慮在編程的范圍之內(nèi),。 二,五天前,,OBV指標剛剛上穿均線,。 這就是一個非常具體的數(shù)字,可以編程,。 上穿均線用的函數(shù)是CROSS,。 CROSS(C,MA(C,30))這個代碼的意思就是股價上穿30日均線。 N天前的價格用REF這個函數(shù),。 比如說REF(c,5)就代表五天之前的股價,;REF(c,6)代表六天前的股價; 兩者相結(jié)合ref(c,5)/ref(c,6)>=1.0995,,就代表五天之前漲停板的股票,。 你可不要小看了這個公式,如果玩打板戰(zhàn)法,,又做的是N型板的話,,用到的就是這個公式,只不過要稍微修改一下參數(shù),,這樣一鍵選出滿足條件的股票,,而不用天天去看漲停板,,節(jié)省了大量的時間,。 用CROSS和REF這兩個函數(shù),再把股價改成OBV值,,這樣就寫出了五天前,,OBV上穿均線的源代碼。 三,,要求OBV值連續(xù)五日站在均線之上,。 這里用到的函數(shù)是EVERY,它是一個統(tǒng)計函數(shù),,翻譯成中文是“每個”的意思,,在通達信編程語言中,EVERY函數(shù)的含義是“一直存在”,。 用法如下:EVERY(X,N) ,,表示N周期內(nèi)一直存在X條件。 舉個例子:EVERY(C>O,3),,這個代碼的意思就是股價連續(xù)三天上漲,。 C代表收盤價,O代表開盤價,。 C>O就是指定的條件:收盤價大于開盤價,,3代表連續(xù)3天,。 連續(xù)三天收盤價大于開盤價,這么就意味著連續(xù)三天上漲,,是三連陽的形態(tài),。 同樣一個意思,有幾種表述方法,。 三連陽的形態(tài)還可以寫成這樣的公式:EVERY(C>REF(C,1),3); REF(C,1)表示一天前的收盤價,,C>REF(C,1),則表示今天的收盤價大于昨天的收盤價;3代表連續(xù)三天,。 今天先寫到這里,,因為我也不懂編程,也就是這半個月的時間里,,剛剛學(xué)習,,邊學(xué)邊用。 這幾天寫的就是學(xué)習日記,。 |
|