[TS懶人包] [保險服務]

2010年3月28日 星期日

狀態的區分

再回到教學的部份…這邊要講的是利用變數達到一些狀態區分的情況。雖然寫到這部份我會覺得有點太特意為了某些情況去執行某些條件…不過偶爾還是會用到的。

比較常見的當然是以開盤跳空位址在哪邊來記錄…另外還有依指標等情況來記錄的情形。


我自己對於跳空還滿在意的。所以對於開盤價來說…我會有一些特定的方式作進出場。在這邊先以指標來講…

以 MACD 來說…一開盤就可以區分為兩種情況。一種就是指標在 0 軸下方…另一種就是指標在 0 軸上方。


vars: status(0);

Value1 = MACD(close, 12, 26);
Value2 = XAverage(MACD(close, 12, 26), 9);

if date <> date[1] and Value1 < 0 then
status = -1;
if date <> date[1] and Value1 > 0 then
status = 1;


在分成這兩種狀態後…或許還可以對 MACD 均線的情況再下去分成個別的另外兩種情況:


if date <> date[1] and status = -1 and Value2 < Value1 then
status = -2;
if date <> date[1] and status = -1 and Value2 > Value1 then
status = -3;

if date <> date[1] and status = 1 and Value2 > Value1 then
status = 2;
if date <> date[1] and status = 1 and Value2 < Value1 then
status = 3;


所以現在的 status 會有 2, 3, -2, -3 這四種情況,分別代表 MACD 和 MACD 均線在一開盤的四種區別。

接下來就可以對這四種狀況分別寫上進出場的判斷了。

例如:

if status = 3 and Value1 cross under Value2 then
sell next bar at market;

if status = -3 and Value1 cross over Value2 then
buy next bar at market;


等等…可以運用的東西也不少…

不過這樣子的寫法是不是好?我很難用肯定的方式去回答。也許只當作一個教學會比較好吧…

1 則留言:

  1. 迷惘的人

    小弟接觸程式交易到現在有一點感想,特別提出來與各位大大分享,純屬個人想法,還請各位大大不吝指教。

    程式交易不外乎用一些指標、數據去加減乘除一番出現買賣訊號的一種交易方式,但股市是一種非邏輯性的變化,而寫程式是一種要很有邏輯性才能寫出來的東東,用很邏輯性的東東去套用在非邏輯性的東東上會有效果嗎?我本人是抱持懷疑的態度。

    我們都知道所有的指標都不見得準,有時候準有時候不準,用這樣的指標再去加加減減就會變得準嗎?這點我是很懷疑,我們一般寫程式的方法都是先找出邏輯、流程,看人工作業怎麼做程式再模擬其做法,但股市用人工在做都不會賺錢了,再用不會賺錢的想法寫成程式就會賺錢嗎?起碼也要人工做會賺,電腦程式再模擬其做法吧!

    不過話說回來程式交易而不是全然沒用,它可以克服人性的恐懼、貪婪,很有紀律的執行買賣命令,這就是人性不容易做到的,只不過這賺錢的邏輯很難想得出來,最重要的東西都想不出來,那後續的如何讓電腦抓資料源、下單機的運作、如何從遠端來監看電腦似乎不是那麼重要了。

    回覆刪除

請留下您的大名…匿名者恕不回應…

Related Posts Plugin for WordPress, Blogger...