1. buy
1.1 定義
建立一個(gè)多頭倉(cāng)位;進(jìn)場(chǎng)的點(diǎn)位會(huì)在圖表上以箭頭和價(jià)位標(biāo)示;箭頭表示進(jìn)場(chǎng)時(shí)間,價(jià)位表示進(jìn)場(chǎng)價(jià)格。 在多頭進(jìn)場(chǎng)箭頭的下方,有標(biāo)簽顯示進(jìn)場(chǎng)名稱(chēng)和倉(cāng)位數(shù)量。當(dāng)一個(gè)buy指令成交時(shí),其他持有的空頭倉(cāng)位,將會(huì)被平倉(cāng)。"buy[("EntryLabel")] [TotalSize] EntryType;"是一個(gè)完整的買(mǎi)入語(yǔ)句,其中被[ ]括起來(lái)的參數(shù)是任選的(也可以寫(xiě)成"buy EntryType;"),舉例就是"buy("entryname") 3 shares next bar at market;",也可以寫(xiě)成"buy next bar at market;";
1.2 EntryLabelEntryLabel —— 可選用參數(shù),字符串表達(dá)式;給當(dāng)次進(jìn)場(chǎng)的信號(hào)一個(gè)專(zhuān)屬名稱(chēng)。若 EntryLabel 未指定,則會(huì)依進(jìn)場(chǎng)語(yǔ)句的先后順序依序命名為 "Buy" 、"Buy#1" 、 "Buy#2" 、 "Buy#3" ..,見(jiàn)圖1和圖2,對(duì)比代碼和圖表的區(qū)別和聯(lián)系。
1.3 TradeSize
TradeSize —— 可選用參數(shù),數(shù)值表達(dá)式;指定買(mǎi)進(jìn)的數(shù)量,必須搭配: Share, Shares, Contract 或 Contracts 任一個(gè)使用。若 TradeSize 為0或負(fù)值,并不會(huì)建立任何多頭倉(cāng)位,但現(xiàn)有的空頭倉(cāng)位會(huì)被平倉(cāng)。 若 TradeSize 未指定,交易數(shù)量將會(huì)是使用者在策略屬性的屬性中設(shè)定的委托數(shù)量。由于buy是平倉(cāng)反向進(jìn)場(chǎng)語(yǔ)句,使用buy進(jìn)場(chǎng)的時(shí)候,會(huì)將之前的所有空頭全部平倉(cāng),然后建立指定手?jǐn)?shù)的多頭頭寸。詳細(xì)的請(qǐng)看圖3,圖4和圖5,針對(duì)代碼和圖表的對(duì)比學(xué)習(xí)。
1.4 Entrytype
EntryType —— 必需參數(shù);指定進(jìn)場(chǎng)的時(shí)間和價(jià)位,一共有五種類(lèi)型:?
這里使用的price代指委托進(jìn)場(chǎng)價(jià)格,at、on是MC跳躍字,可以省略,只是為了方便用戶(hù)看代碼,公式編譯的時(shí)候會(huì)直接跳過(guò)?!癟his Bar on Close”是指定在當(dāng)根結(jié)束的時(shí)候以收盤(pán)價(jià)發(fā)送委托單;"Next Bar at Open" 或 "Next Bar at Market"是指定以下一根bar的開(kāi)盤(pán)價(jià)發(fā)送委托;"Next Bar at Price??Limit"是指定在下一根bar開(kāi)始時(shí)發(fā)送限價(jià)單;"Next Bar at Price??Stop"是指定在下一根bar開(kāi)始時(shí)發(fā)送停損單;還有一種是停損限價(jià)單是可以通過(guò)停損單和限價(jià)單組合的類(lèi)型,即"next bar at price1 stop price2 limit";除了這五種,其它類(lèi)型的Entrytype都是禁止的,在公式編譯的時(shí)候就會(huì)報(bào)錯(cuò)。
2. sell
2.1 定義
全部或部分平倉(cāng)特定或全部的多頭倉(cāng)位。出場(chǎng)的價(jià)位會(huì)在圖表上以箭頭和價(jià)位表示,箭頭表示出場(chǎng)時(shí)間,價(jià)位表示出場(chǎng)價(jià)格。在多頭出場(chǎng)箭頭的上方,有標(biāo)簽顯示出場(chǎng)名稱(chēng)及倉(cāng)位數(shù)量。"Sell[("ExitLabel")][From Entry("EntryLabel")][TradeSize[Total]]Exit;"是一個(gè)完整的平倉(cāng)語(yǔ)句,被[ ]括起來(lái)的參數(shù)都是可以省略的,可以是"sell Exit;",舉例為"sell("sellname") from entry("entryname") 3 shares total next bar at market;",也可以是"sell next bar at market;"。
2.2 ExitLabel
ExitLabel —— 可選用參數(shù),字符串表達(dá)式;予當(dāng)次出場(chǎng)信號(hào)一個(gè)專(zhuān)屬名稱(chēng)。信號(hào)名稱(chēng)會(huì)顯示在出場(chǎng)箭頭上方。若 ExitLabel 未指定,則會(huì)依出場(chǎng)信號(hào)語(yǔ)句的先后順序依序命名為 "Sell"、"Sell#1"、"Sell#2"…… ;ExitLabel的定義可以參考一下1.2 EntryLabel;有一點(diǎn)特別注意一下,在同一個(gè)信號(hào)腳本中,所有的進(jìn)場(chǎng)出場(chǎng)名稱(chēng)都要求不一樣,進(jìn)場(chǎng)和出場(chǎng)名稱(chēng)也要求不一樣。
2.3 EntryLabel
EntryLabel —— 可選用參數(shù),字符串表達(dá)式;表示出場(chǎng)信號(hào)是針對(duì)特定EntryLabel 名稱(chēng)的進(jìn)場(chǎng)信號(hào); 進(jìn)場(chǎng)信號(hào)名稱(chēng)須緊連在 "From Entry"之后, "from" 是跳躍字,可省略。一個(gè)出場(chǎng)信號(hào)僅能指定一個(gè)進(jìn)場(chǎng)信號(hào)。若 EntryLabel 未指定進(jìn)場(chǎng)信號(hào)名稱(chēng),則該sell出場(chǎng)語(yǔ)句是針對(duì)當(dāng)前所有未平倉(cāng)的進(jìn)場(chǎng)(第一筆進(jìn)場(chǎng),第二筆進(jìn)場(chǎng)等等),sell出場(chǎng)語(yǔ)句指定進(jìn)場(chǎng)情況請(qǐng)看圖6和圖7,sell出場(chǎng)未指定進(jìn)場(chǎng)情況請(qǐng)看圖8和圖9。
2.4 TradeSize
TradeSize —— 可選用參數(shù),數(shù)值表達(dá)式;指定平倉(cāng)的數(shù)量,必須搭配: Share, Shares, Contract 或 Contracts任一個(gè)使用,這四個(gè)關(guān)鍵字完全一樣,沒(méi)有區(qū)別;當(dāng)tradesize指定的平倉(cāng)的手?jǐn)?shù)是負(fù)數(shù)或者0時(shí),不會(huì)平倉(cāng)任何手?jǐn)?shù);當(dāng)tradesize指定的平倉(cāng)的手?jǐn)?shù)是0.5或者其它分?jǐn)?shù),那么sell會(huì)平倉(cāng)四舍五入后的手?jǐn)?shù);當(dāng)然,如果當(dāng)前沒(méi)有多頭持倉(cāng),那么sell不執(zhí)行任何操作。
2.5 Total
total必須緊跟關(guān)鍵字 Share, Shares, Contract 或 Contracts任一個(gè)后面,不能單獨(dú)使用;tradesize后面未加total的情況下,TradeSize 參數(shù)指定的數(shù)量會(huì)平掉每一個(gè)多頭進(jìn)場(chǎng)語(yǔ)句的倉(cāng)位,詳細(xì)的請(qǐng)對(duì)比圖10和圖11;如果如果 TradeSize??后加上 Total,只會(huì)平倉(cāng) TradeSize??參數(shù)指定的數(shù)量,忽略多頭進(jìn)場(chǎng)數(shù)量。指定數(shù)量超過(guò)多頭持倉(cāng),則全部平倉(cāng)。在依進(jìn)場(chǎng)信號(hào)的順序平倉(cāng),即先進(jìn)先出,詳細(xì)的見(jiàn)圖12和圖13。若tradesize未指定,將會(huì)平倉(cāng)全部的多頭進(jìn)場(chǎng)。
2.6 Exit
Exit和1.4 Entrytype完全一樣。
3. Sellshort和buytocover
buy和sellshort都是平倉(cāng)反向語(yǔ)句,也就是先平倉(cāng)再開(kāi)倉(cāng),這兩個(gè)關(guān)鍵字的使用除了買(mǎi)賣(mài)方向不一樣,其它的用法和邏輯完全一樣,在此就不再贅述。sell和buytocover都是平倉(cāng)語(yǔ)句,只是單純的平倉(cāng),這兩個(gè)關(guān)鍵字的使用除了平倉(cāng)的方向不一樣,其它的用法和邏輯完全一樣,在此不再贅述。
圖1 entrylabel_代碼
?
?
圖2 entrylabel_圖表
?
圖3 tradesize_代碼
?
?
圖4 tradesize_圖表
?
?
圖5 策略屬性
?
?
圖6 sell指定進(jìn)場(chǎng)名稱(chēng)_代碼
?
?
圖7 sell指定進(jìn)場(chǎng)名稱(chēng)_圖表
?
?
圖8 sell未指定進(jìn)場(chǎng)名稱(chēng)_代碼
?
?
圖9 sell未指定進(jìn)場(chǎng)名稱(chēng)_圖表
?
?
圖10 tradesize total_代碼
?
?
圖11 tradesize total_圖表
?
?
圖12 tradesize total_代碼(緊跟total)
?
?
?
圖13 tradesize total_圖表(緊跟total)
?
圖14 search
?
1. buy
1.1 定義
建立一個(gè)多頭倉(cāng)位;進(jìn)場(chǎng)的點(diǎn)位會(huì)在圖表上以箭頭和價(jià)位標(biāo)示;箭頭表示進(jìn)場(chǎng)時(shí)間,價(jià)位表示進(jìn)場(chǎng)價(jià)格。 在多頭進(jìn)場(chǎng)箭頭的下方,有標(biāo)簽顯示進(jìn)場(chǎng)名稱(chēng)和倉(cāng)位數(shù)量。當(dāng)一個(gè)buy指令成交時(shí),其他持有的空頭倉(cāng)位,將會(huì)被平倉(cāng)。"buy[("EntryLabel")] [TotalSize] EntryType;"是一個(gè)完整的買(mǎi)入語(yǔ)句,其中被[ ]括起來(lái)的參數(shù)是任選的(也可以寫(xiě)成"buy EntryType;"),舉例就是"buy("entryname") 3 shares next bar at market;",也可以寫(xiě)成"buy next bar at market;";
1.2 EntryLabelEntryLabel —— 可選用參數(shù),字符串表達(dá)式;給當(dāng)次進(jìn)場(chǎng)的信號(hào)一個(gè)專(zhuān)屬名稱(chēng)。若 EntryLabel 未指定,則會(huì)依進(jìn)場(chǎng)語(yǔ)句的先后順序依序命名為 "Buy" 、"Buy#1" 、 "Buy#2" 、 "Buy#3" ..,見(jiàn)圖1和圖2,對(duì)比代碼和圖表的區(qū)別和聯(lián)系。
1.3 TradeSize
TradeSize —— 可選用參數(shù),數(shù)值表達(dá)式;指定買(mǎi)進(jìn)的數(shù)量,必須搭配: Share, Shares, Contract 或 Contracts 任一個(gè)使用。若 TradeSize 為0或負(fù)值,并不會(huì)建立任何多頭倉(cāng)位,但現(xiàn)有的空頭倉(cāng)位會(huì)被平倉(cāng)。 若 TradeSize 未指定,交易數(shù)量將會(huì)是使用者在策略屬性的屬性中設(shè)定的委托數(shù)量。由于buy是平倉(cāng)反向進(jìn)場(chǎng)語(yǔ)句,使用buy進(jìn)場(chǎng)的時(shí)候,會(huì)將之前的所有空頭全部平倉(cāng),然后建立指定手?jǐn)?shù)的多頭頭寸。詳細(xì)的請(qǐng)看圖3,圖4和圖5,針對(duì)代碼和圖表的對(duì)比學(xué)習(xí)。
1.4 Entrytype
EntryType —— 必需參數(shù);指定進(jìn)場(chǎng)的時(shí)間和價(jià)位,一共有五種類(lèi)型:?
這里使用的price代指委托進(jìn)場(chǎng)價(jià)格,at、on是MC跳躍字,可以省略,只是為了方便用戶(hù)看代碼,公式編譯的時(shí)候會(huì)直接跳過(guò)?!癟his Bar on Close”是指定在當(dāng)根結(jié)束的時(shí)候以收盤(pán)價(jià)發(fā)送委托單;"Next Bar at Open" 或 "Next Bar at Market"是指定以下一根bar的開(kāi)盤(pán)價(jià)發(fā)送委托;"Next Bar at Price??Limit"是指定在下一根bar開(kāi)始時(shí)發(fā)送限價(jià)單;"Next Bar at Price??Stop"是指定在下一根bar開(kāi)始時(shí)發(fā)送停損單;還有一種是停損限價(jià)單是可以通過(guò)停損單和限價(jià)單組合的類(lèi)型,即"next bar at price1 stop price2 limit";除了這五種,其它類(lèi)型的Entrytype都是禁止的,在公式編譯的時(shí)候就會(huì)報(bào)錯(cuò)。
2. sell
2.1 定義
全部或部分平倉(cāng)特定或全部的多頭倉(cāng)位。出場(chǎng)的價(jià)位會(huì)在圖表上以箭頭和價(jià)位表示,箭頭表示出場(chǎng)時(shí)間,價(jià)位表示出場(chǎng)價(jià)格。在多頭出場(chǎng)箭頭的上方,有標(biāo)簽顯示出場(chǎng)名稱(chēng)及倉(cāng)位數(shù)量。"Sell[("ExitLabel")][From Entry("EntryLabel")][TradeSize[Total]]Exit;"是一個(gè)完整的平倉(cāng)語(yǔ)句,被[ ]括起來(lái)的參數(shù)都是可以省略的,可以是"sell Exit;",舉例為"sell("sellname") from entry("entryname") 3 shares total next bar at market;",也可以是"sell next bar at market;"。
2.2 ExitLabel
ExitLabel —— 可選用參數(shù),字符串表達(dá)式;予當(dāng)次出場(chǎng)信號(hào)一個(gè)專(zhuān)屬名稱(chēng)。信號(hào)名稱(chēng)會(huì)顯示在出場(chǎng)箭頭上方。若 ExitLabel 未指定,則會(huì)依出場(chǎng)信號(hào)語(yǔ)句的先后順序依序命名為 "Sell"、"Sell#1"、"Sell#2"…… ;ExitLabel的定義可以參考一下1.2 EntryLabel;有一點(diǎn)特別注意一下,在同一個(gè)信號(hào)腳本中,所有的進(jìn)場(chǎng)出場(chǎng)名稱(chēng)都要求不一樣,進(jìn)場(chǎng)和出場(chǎng)名稱(chēng)也要求不一樣。
2.3 EntryLabel
EntryLabel —— 可選用參數(shù),字符串表達(dá)式;表示出場(chǎng)信號(hào)是針對(duì)特定EntryLabel 名稱(chēng)的進(jìn)場(chǎng)信號(hào); 進(jìn)場(chǎng)信號(hào)名稱(chēng)須緊連在 "From Entry"之后, "from" 是跳躍字,可省略。一個(gè)出場(chǎng)信號(hào)僅能指定一個(gè)進(jìn)場(chǎng)信號(hào)。若 EntryLabel 未指定進(jìn)場(chǎng)信號(hào)名稱(chēng),則該sell出場(chǎng)語(yǔ)句是針對(duì)當(dāng)前所有未平倉(cāng)的進(jìn)場(chǎng)(第一筆進(jìn)場(chǎng),第二筆進(jìn)場(chǎng)等等),sell出場(chǎng)語(yǔ)句指定進(jìn)場(chǎng)情況請(qǐng)看圖6和圖7,sell出場(chǎng)未指定進(jìn)場(chǎng)情況請(qǐng)看圖8和圖9。
2.4 TradeSize
TradeSize —— 可選用參數(shù),數(shù)值表達(dá)式;指定平倉(cāng)的數(shù)量,必須搭配: Share, Shares, Contract 或 Contracts任一個(gè)使用,這四個(gè)關(guān)鍵字完全一樣,沒(méi)有區(qū)別;當(dāng)tradesize指定的平倉(cāng)的手?jǐn)?shù)是負(fù)數(shù)或者0時(shí),不會(huì)平倉(cāng)任何手?jǐn)?shù);當(dāng)tradesize指定的平倉(cāng)的手?jǐn)?shù)是0.5或者其它分?jǐn)?shù),那么sell會(huì)平倉(cāng)四舍五入后的手?jǐn)?shù);當(dāng)然,如果當(dāng)前沒(méi)有多頭持倉(cāng),那么sell不執(zhí)行任何操作。
2.5 Total
total必須緊跟關(guān)鍵字 Share, Shares, Contract 或 Contracts任一個(gè)后面,不能單獨(dú)使用;tradesize后面未加total的情況下,TradeSize 參數(shù)指定的數(shù)量會(huì)平掉每一個(gè)多頭進(jìn)場(chǎng)語(yǔ)句的倉(cāng)位,詳細(xì)的請(qǐng)對(duì)比圖10和圖11;如果如果 TradeSize??后加上 Total,只會(huì)平倉(cāng) TradeSize??參數(shù)指定的數(shù)量,忽略多頭進(jìn)場(chǎng)數(shù)量。指定數(shù)量超過(guò)多頭持倉(cāng),則全部平倉(cāng)。在依進(jìn)場(chǎng)信號(hào)的順序平倉(cāng),即先進(jìn)先出,詳細(xì)的見(jiàn)圖12和圖13。若tradesize未指定,將會(huì)平倉(cāng)全部的多頭進(jìn)場(chǎng)。
2.6 Exit
Exit和1.4 Entrytype完全一樣。
3. Sellshort和buytocover
buy和sellshort都是平倉(cāng)反向語(yǔ)句,也就是先平倉(cāng)再開(kāi)倉(cāng),這兩個(gè)關(guān)鍵字的使用除了買(mǎi)賣(mài)方向不一樣,其它的用法和邏輯完全一樣,在此就不再贅述。sell和buytocover都是平倉(cāng)語(yǔ)句,只是單純的平倉(cāng),這兩個(gè)關(guān)鍵字的使用除了平倉(cāng)的方向不一樣,其它的用法和邏輯完全一樣,在此不再贅述。
圖1 entrylabel_代碼
?
?
圖2 entrylabel_圖表
?
圖3 tradesize_代碼
?
?
圖4 tradesize_圖表
?
?
圖5 策略屬性
?
?
圖6 sell指定進(jìn)場(chǎng)名稱(chēng)_代碼
?
?
圖7 sell指定進(jìn)場(chǎng)名稱(chēng)_圖表
?
?
圖8 sell未指定進(jìn)場(chǎng)名稱(chēng)_代碼
?
?
圖9 sell未指定進(jìn)場(chǎng)名稱(chēng)_圖表
?
?
圖10 tradesize total_代碼
?
?
圖11 tradesize total_圖表
?
?
圖12 tradesize total_代碼(緊跟total)
?
?
?
圖13 tradesize total_圖表(緊跟total)
?
圖14 search