學(xué)習(xí)寫(xiě)MC指標(biāo)
作者:MC 來(lái)源:cxh99.com 發(fā)布時(shí)間:2014年08月07日
- 咨詢內(nèi)容: 原文轉(zhuǎn)載自交易醫(yī)生
開(kāi)始前提醒,Multicharts 程序最重要的觀念,每根K棒結(jié)束都執(zhí)行程序一次(或是每tick一次)。。
這是專為交易而設(shè)計(jì)的系統(tǒng),所有功能的開(kāi)發(fā)皆以K棒為出發(fā)點(diǎn),因此我們要養(yǎng)成習(xí)慣,以K棒來(lái)思考。我們最自然想得到的資料應(yīng)該就是,K棒之間有何不同,那就必須比對(duì)不同K棒,所以就要取得當(dāng)根K棒之前的K棒資料。這里又是Multicharts的重點(diǎn)了,但這個(gè)重點(diǎn)有點(diǎn)復(fù)雜我們要分段說(shuō)明。
首先要知道 Multicharts 中的資料可以是,K棒的價(jià)格、成交量與時(shí)間,還有我們自己定義的變數(shù),我們先全部統(tǒng)稱為變數(shù),變數(shù)會(huì)以K棒為單位,每根K棒都紀(jì)錄一次所有變數(shù)的值,這樣我們就能取出任何一個(gè)變數(shù)在任何一根K棒上的值,那程序中就是以中括號(hào)[n]來(lái)取前第n根K的變數(shù)值,
如當(dāng)根K棒的開(kāi)高收低分別是open、high、low、close,那前一根開(kāi)與前二根收就是open[1]、close[2];想看當(dāng)根K高是否高過(guò)前根K,那就是if (high > high[1]) then “do something”;;判斷當(dāng)根K低是否低于前跟K,即為if (low < low[1]) then “do something”;。
現(xiàn)在就來(lái)動(dòng)手寫(xiě)寫(xiě)看,運(yùn)用這幾個(gè)重點(diǎn),我們要寫(xiě)一個(gè)指標(biāo),用來(lái)指出連續(xù)過(guò)高或連續(xù)破低的K棒,那就先以寫(xiě)程序的步驟來(lái)規(guī)劃。
- 寫(xiě)一個(gè)指標(biāo)分別指出連續(xù)四根K過(guò)高或連續(xù)四根K破低;
- 判斷連續(xù)四根K過(guò)高那就是當(dāng)根K高大于前一根K高,且前一根K高大于前二根K高,及前二根K高大于前三根K高,成立時(shí)在當(dāng)跟K高點(diǎn)上五點(diǎn)畫(huà)一個(gè)黃點(diǎn);同理當(dāng)出現(xiàn)連續(xù)四根K棒破低我們畫(huà)一個(gè)藍(lán)點(diǎn),請(qǐng)大家自己試試寫(xiě)出連續(xù)四根K棒破低的條件;
- 檢查連續(xù)四根K棒過(guò)高條件,條件成立畫(huà)出黃點(diǎn);檢查連續(xù)四根K棒破低條件,條件成立畫(huà)出藍(lán)點(diǎn);
- 實(shí)作小程序:
檢查連續(xù)四根K棒過(guò)高:if (High > High[1]) and (High[1] > High[2]) and (High[2] > High[3]) then…
檢查連續(xù)四根K棒破低:if (Low < Low[1]) and (Low[1] < Low[2]) and (Low[2] < Low[3]) then…
畫(huà)出高點(diǎn)黃點(diǎn):plot1(High + 5, “High", yellow);
畫(huà)出低點(diǎn)藍(lán)點(diǎn):plot2(Low – 5, “Low", blue);
結(jié)合并完成:if (High > High[1]) and (High[1] > High[2]) and (High[2] > High[3])then plot1(High + 5, “High", yellow);
if (Low < Low[1]) and (Low[1] < Low[2]) and (Low[2] < Low[3])then plot2(Low – 5, “Low", blue);
圖例: