如何將技術(shù)指標(biāo)轉(zhuǎn)化為智能交易系統(tǒng)EA_第1頁(yè)
如何將技術(shù)指標(biāo)轉(zhuǎn)化為智能交易系統(tǒng)EA_第2頁(yè)
如何將技術(shù)指標(biāo)轉(zhuǎn)化為智能交易系統(tǒng)EA_第3頁(yè)
如何將技術(shù)指標(biāo)轉(zhuǎn)化為智能交易系統(tǒng)EA_第4頁(yè)
如何將技術(shù)指標(biāo)轉(zhuǎn)化為智能交易系統(tǒng)EA_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、如何將技術(shù)指標(biāo)轉(zhuǎn)化為智能交易系統(tǒng)(EA)時(shí)間:2011-02-2211:17:12來(lái)源:作者:第一部分:指標(biāo)為了能賺錢(qián)而不是虧損,無(wú)論是專(zhuān)業(yè)的交易商還是個(gè)體,都在研究各和總結(jié)各種種的規(guī)律,并做成指標(biāo),我們經(jīng)常會(huì)發(fā)現(xiàn)一些指標(biāo)圖線(xiàn)看起來(lái)很完美,于是都會(huì)想到要根據(jù)指標(biāo)的變化進(jìn)行交易。但這樣做會(huì)賺錢(qián)嗎?能否賺錢(qián),我們就要看這些指標(biāo)有沒(méi)有作弊。即確定指標(biāo)是否有未來(lái)函數(shù)的計(jì)算,也就是說(shuō)指標(biāo)會(huì)不會(huì)根據(jù)現(xiàn)在的K線(xiàn),計(jì)算后將指標(biāo)在歷史K線(xiàn)上標(biāo)示做更改。比如原來(lái)是賣(mài)的提示,改為買(mǎi)(恐怖吧)。(當(dāng)然還有一些EA特有的環(huán)節(jié)也會(huì)影響盈利問(wèn)題,在這里不講)確定是否有未來(lái)函數(shù)的方法有兩種:1 .白盒校驗(yàn)(即查看源碼)直接看

2、源碼中的循環(huán)部分,如果有修改歷史曲線(xiàn)數(shù)組的行為,則可以立刻斷定有未來(lái)函數(shù)。2 .黑盒觀(guān)察當(dāng)沒(méi)有源碼的時(shí)候,可以將指標(biāo)加載到1分鐘的圖線(xiàn)上,連續(xù)不斷觀(guān)察其標(biāo)示的變化,尤其注意與當(dāng)前K線(xiàn)狀態(tài)最接近的歷史K線(xiàn)標(biāo)示的變化。如果隨著當(dāng)前K線(xiàn)的變化出現(xiàn)過(guò)歷史變化更改,則也可以確定有未來(lái)函數(shù)。指標(biāo)EA化之前必須要確認(rèn)的事情:如果一個(gè)指標(biāo)含有未來(lái)函數(shù),那么這個(gè)指標(biāo)是沒(méi)有多大意義的。也就是說(shuō),我們要將指標(biāo)改為EA前,必須確認(rèn)這個(gè)指標(biāo)是不含未來(lái)函數(shù)的,這樣指標(biāo)EA化才有意義。第二部分指標(biāo)EA化接下來(lái)將指標(biāo)EA化大致的做法是:在EA中通過(guò)函數(shù)iCustom讀取這個(gè)指標(biāo)的當(dāng)前K線(xiàn)輸出值,得出當(dāng)前的狀態(tài),來(lái)決定是否入場(chǎng)

3、或者平倉(cāng)并反向入場(chǎng)。iCustom的具體用法:指標(biāo)一般都是曲線(xiàn)或者箭頭兩種。在這里我們要把曲線(xiàn)和箭頭都看成是數(shù)組就容易理解了。對(duì)于指標(biāo)來(lái)說(shuō)每一條曲線(xiàn)或者箭頭都是寫(xiě)在與每個(gè)K線(xiàn)對(duì)應(yīng)的數(shù)組中的,也就是說(shuō)一條曲線(xiàn)對(duì)應(yīng)一個(gè)數(shù)組,一個(gè)方向的箭頭也是對(duì)應(yīng)一個(gè)數(shù)組(有箭頭的數(shù)組值是當(dāng)時(shí)的價(jià)格,沒(méi)箭頭地方的數(shù)組值是空”)iCustomMT4的幫助里說(shuō)的是:計(jì)算指定的客戶(hù)指標(biāo)并且退回它的值”,即這個(gè)函數(shù)可以讓你獲取指定指標(biāo)的第幾個(gè)數(shù)組對(duì)應(yīng)第幾根K線(xiàn)上的計(jì)算數(shù)值。具體如下:doubleiCustom(stringsymbol,inttimeframe,stringname,.,intmode,intshift)計(jì)

4、算指定的客戶(hù)指標(biāo)并且退回它的值。必須在terminal_directoryexpertsindicators目錄內(nèi)編寫(xiě)客戶(hù)指標(biāo)(*.EX4文件)。分事參事:symbol-計(jì)算指標(biāo)數(shù)據(jù)上的貨幣對(duì)名稱(chēng)。NULL表示當(dāng)前貨幣對(duì)。timeframe-時(shí)間周期。可以時(shí)間周期列舉任意值。0表示當(dāng)前圖表的時(shí)間周期。name-客戶(hù)指標(biāo)完整的程序名稱(chēng)。.-參量設(shè)置(如果需要)。通過(guò)的參量和他們的順序必須與desclaration命令和客戶(hù)指標(biāo)的外部可變物的種類(lèi)對(duì)應(yīng)。mode-索引行。從0到7并且必須對(duì)應(yīng)以其中一個(gè)使用的索引的SetIndexBuffer函數(shù)。shift-從顯示緩沖采取的值的索引(轉(zhuǎn)移相對(duì)當(dāng)前柱特

5、定相當(dāng)數(shù)量期間前)。示例:doubleval=iCustom(NULL,0,"示例Ind”,13,1,0);doubleva2=iCustom(NULL,0,"示例Ind",13,0,1);例如:一個(gè)指標(biāo),畫(huà)了兩條曲線(xiàn),則可以用iCustom取得這個(gè)指標(biāo)在第4根K線(xiàn)上對(duì)應(yīng)的第一條曲線(xiàn)的數(shù)值。我們現(xiàn)在已經(jīng)可以根據(jù)自己的想法去獲得一個(gè)指定指標(biāo)的任何K線(xiàn)上的狀態(tài)數(shù)值了。那么下一步我們就要開(kāi)始EA的概念。因?yàn)镋A只針對(duì)當(dāng)前價(jià)格狀態(tài)下的動(dòng)作進(jìn)行控制。所以一般而言我們就取指定指標(biāo)在當(dāng)前K線(xiàn)下的計(jì)算數(shù)值用于EA的條件判斷。如果你認(rèn)為當(dāng)前K線(xiàn)沒(méi)有結(jié)束,其數(shù)值始終在變化,有可能一會(huì)

6、有訊號(hào)一會(huì)沒(méi)訊號(hào),那麼你可以采用取前一K線(xiàn)的指標(biāo)數(shù)值的方式作為基礎(chǔ)。(如果用當(dāng)前K線(xiàn)指標(biāo)數(shù)值作為條件會(huì)有不確定的結(jié)果,但如果用前一K線(xiàn)數(shù)值做條件則有錯(cuò)過(guò)最佳入場(chǎng)點(diǎn)”的問(wèn)題。這是需要程序設(shè)計(jì)者權(quán)衡的問(wèn)題。)另外的一個(gè)問(wèn)題,就是怎末去判斷指標(biāo)輸出的數(shù)值與我們?nèi)庋劭吹降挠嵦?hào)一致起來(lái)的問(wèn)題。如果參考的指標(biāo)是一種變色線(xiàn),則一定是一種顏色一個(gè)數(shù)組的方式疊加起來(lái)顯示的。我們?cè)谌∑鋽?shù)值的時(shí)候只需要看看不同顏色的數(shù)組的數(shù)值比較一下就知道其結(jié)果是哪種顏色,并作為EA的條件進(jìn)行動(dòng)作就行了。如果是箭頭的方式,則一樣是去取其數(shù)值,無(wú)箭頭的K線(xiàn)上指標(biāo)對(duì)應(yīng)的數(shù)值是空”,有箭頭的地方數(shù)組對(duì)應(yīng)的數(shù)值肯定不是空。用這個(gè)來(lái)判斷是否

7、發(fā)生了訊號(hào)就行了。比如雙色線(xiàn),就一定是兩個(gè)數(shù)組分別顯示不同顏色,當(dāng)指標(biāo)認(rèn)為應(yīng)該顯示其中一種顏色的時(shí)候就將這個(gè)顏色對(duì)應(yīng)的數(shù)組在當(dāng)前K線(xiàn)中的數(shù)值設(shè)成當(dāng)前價(jià)。反之則設(shè)為空”。這樣循環(huán)一遍后,你肉眼看到的就是變色線(xiàn)了?,F(xiàn)在我們可以輕松獲得指標(biāo)的當(dāng)前訊號(hào)狀態(tài)了!下一步就是結(jié)合進(jìn)EA中,就是把指標(biāo)中的數(shù)組值拿過(guò)來(lái)。第三部分EA編程邏輯EA就是一個(gè)循環(huán)往復(fù)的過(guò)程。每來(lái)一個(gè)價(jià)格就運(yùn)行一次。EA是電腦,并不知道你現(xiàn)在的倉(cāng)位情況也不知道指標(biāo)的情況,除了計(jì)算什么都不知道,一切都是編程者賦予的。因此,編程者腦子里一定要建立一種綜合狀態(tài)的概念。EA的一開(kāi)始一定要先進(jìn)行倉(cāng)位的情況檢查。大致的邏輯如下:1 .先查出持倉(cāng)情況

8、和持倉(cāng)單的方向。2 .然后獲得指標(biāo)的數(shù)值。3 .判斷并操作。如果發(fā)生則平倉(cāng)并持倉(cāng)狀態(tài)下:根據(jù)持倉(cāng)單的方向進(jìn)行對(duì)應(yīng)來(lái)判斷反向訊號(hào)是否發(fā)生。反向入場(chǎng)。如果沒(méi)發(fā)生則直接返回,等待下一次價(jià)格的而到來(lái)??諅}(cāng)狀態(tài)下:則兩個(gè)方向的訊號(hào)都做判斷,哪邊發(fā)生了就按那邊的方向入場(chǎng)。4 .其他的的細(xì)節(jié)不論入場(chǎng)還是出場(chǎng)都要在發(fā)出動(dòng)作后馬上判斷是否正確執(zhí)行的判斷。如果沒(méi)有執(zhí)行成功則一定要立刻放棄后面的操作直接返回。等待下一個(gè)價(jià)格來(lái)的時(shí)候在此發(fā)出同樣的動(dòng)作。另外說(shuō)明的是數(shù)據(jù)是自動(dòng)更新的。MT4新編:簡(jiǎn)單三線(xiàn)交叉EA時(shí)間:2011-03-0911:29:56來(lái)源:作者:MT4編程入門(mén)教程目錄MT4編程入門(mén)1MT4編程入門(mén)2M

9、T4編程入門(mén)3MT4編程入門(mén)4MT4編程入門(mén)5MT4編程入門(mén)6MT4編程入門(mén)7MT4編程入門(mén)8MT4編程入門(mén)9MT4自定義指標(biāo)的基本操作指標(biāo)源碼中的常用符號(hào)說(shuō)明自定義變量自定義函數(shù)自定義數(shù)組市場(chǎng)數(shù)據(jù)取值判斷語(yǔ)句循環(huán)MT4自定義指標(biāo)的結(jié)構(gòu)MT4編程入門(mén)10:畫(huà)一條指標(biāo)線(xiàn)MT4編程入門(mén)11:MT4的報(bào)警MT4編程入門(mén)1:MT4自定義指標(biāo)的基本操作MT4自定義指標(biāo)的保存目錄、指標(biāo)編緝器與指標(biāo)調(diào)用一、MT4自定義指標(biāo)保存在C:ProgramFilesMetaTrader4expertsindicators這個(gè)目錄中,該目錄中主要有二種類(lèi)型的文件,一種是mq4文件,這是MT4自定義指標(biāo)的源碼文件,是一種

10、高級(jí)語(yǔ)言文件,可以人工編寫(xiě)修改,機(jī)器不能直接執(zhí)行,但能在MT4啟動(dòng)時(shí)自動(dòng)編譯為ex4可執(zhí)行文件。另一種就是ex4文件,這是MT4自定義指標(biāo)的可執(zhí)行文件,由mq4文件編譯得到。mq4文件必須編譯為ex4文件才能被MT4執(zhí)行。但ex4文件是機(jī)器碼文件,人工不可修改另外還有一個(gè)文件是mqlcache.dat,它用來(lái)保存目錄中的文件信息,如果MT4無(wú)法自動(dòng)編譯,只要?jiǎng)h除此文件即可解決問(wèn)題mq4文件編譯為ex4可執(zhí)行文件有兩種方法:1、MT4啟動(dòng)時(shí),會(huì)自動(dòng)把此目錄中的mq4文件編譯為ex4文件。2、用MQ語(yǔ)言編輯器打開(kāi)mq4文件,點(diǎn)一下編寫(xiě)"按鈕,即可生成ex4文件二、下載保存mq4文件、ex

11、4文件在論壇上我們經(jīng)??吹接衜q4文件、ex4文件可供下載,我們只要把它們保存到C:rogramFilesMetaTrader4expertsindicators這個(gè)目錄,也就是下面這個(gè)目錄中,就可以了。如果下載的是ex4文件,那可以直接調(diào)用;如果是mq4文件,則需要重啟動(dòng)MT4,讓系統(tǒng)自動(dòng)生成ex4可執(zhí)行文件。如果下載的是ranzip等類(lèi)型的壓縮文件,還必須下載后解壓到此目錄下才能使用。三、將源碼保存為源碼文件在論壇上,我們也經(jīng)常能看到指標(biāo)源碼貼在網(wǎng)頁(yè)上,但沒(méi)有mq4、ex4等文件可以下載,只能復(fù)制源碼。此時(shí)需要我們自己動(dòng)手將源碼保存為源碼文件,那也沒(méi)關(guān)系,非常地簡(jiǎn)單,多點(diǎn)幾下鼠標(biāo)就搞定。1

12、、打開(kāi)MQ語(yǔ)言編輯器2、在MQ語(yǔ)言編輯器中新建一個(gè)文件,文件名一定要輸,別的隨便操作都沒(méi)關(guān)系。3、刪除新文件里面的所有內(nèi)容,成為一個(gè)空文件,4、接著我們就可以將網(wǎng)頁(yè)上源碼復(fù)制粘貼進(jìn)來(lái)試著點(diǎn)一下編寫(xiě)”,如果左下角出現(xiàn)“錯(cuò)誤,0警告”,那說(shuō)明源碼沒(méi)問(wèn)題,編譯通過(guò)了,成功生成了ex4可執(zhí)行文件5、還有很重要的一點(diǎn),就是要把源碼文件保存到正確的目錄中保存后,再點(diǎn)一下編寫(xiě)。到此,源碼保存完成。當(dāng)然,我們也還有另的辦法:可以打開(kāi)一個(gè)原已存在的mq4文件,然后另存為你需要的文件名,再刪除文件中的所有內(nèi)容成為空文件,把網(wǎng)頁(yè)上的源貼到文件中保存即可也可以在記事本中新建一個(gè)文件,把網(wǎng)頁(yè)上的源碼貼進(jìn)記事本,然后取個(gè)

13、文件名保存到上面提到的目錄,不過(guò)文件后綴必須輸入mq4,保存類(lèi)型選擇所以文件”四、mt4程序調(diào)用自定義指標(biāo)這非常簡(jiǎn)單MT4編程入門(mén)2:指標(biāo)源碼中的常用符號(hào)說(shuō)明一、注釋符:?jiǎn)涡凶⑨尅?、”多行注釋“/*/”程序不執(zhí)行注釋?zhuān)⑨寖?nèi)容僅供閱讀或保留不用的語(yǔ)句在MQ語(yǔ)言編輯器中,注釋內(nèi)容以灰色顯示二、分號(hào)”表示一個(gè)語(yǔ)句結(jié)束三、逗號(hào);”表示一個(gè)語(yǔ)句內(nèi)部間隔,不結(jié)束語(yǔ)句。四、等于號(hào)“=”賦值語(yǔ)句,把等號(hào)后面的值賦給等號(hào)前的變量中五、加號(hào)“+”整數(shù)或小數(shù),則表示值相加;字符串,則表示前后連接。六、加加“+”表示把符號(hào)前的變量值加1,例如:“i+;”這實(shí)際上就是:"i=i+1;的簡(jiǎn)寫(xiě),表示i的值加1

14、“i+=2;實(shí)際上就是“i=i+2;的簡(jiǎn)寫(xiě),表示i七、加等于“+=”表示把符號(hào)后的值加到符號(hào)前的變量中。例如的值加2八、雙等號(hào)“="等于號(hào)。用于邏輯判斷,雙等號(hào)前后值相等,則返回邏輯值真true雙等號(hào)前后值不相等,則返回邏輯值假false”真true不等號(hào)前后值相九、嘆號(hào)等號(hào)"!="不等于號(hào)。用于邏輯判斷,不等號(hào)前后值不相等,則返回邏輯值等,則返回邏輯值假false”十、“&&邏輯符并且”十一、“|”邏輯符或者”十二、大括號(hào)“”表示函數(shù)體。內(nèi)部為函數(shù)體語(yǔ)句。MT4編程入門(mén)3:自定義變量一、自定義變量在使用前,必須先創(chuàng)建(定義),設(shè)定變量的類(lèi)型和名稱(chēng)

15、。創(chuàng)建時(shí)可同時(shí)賦值,也可以不賦值。名稱(chēng)可以使用中文字符。例:intmark;創(chuàng)建一個(gè)整型變量,變量名為"mark。"bool是否報(bào)警=true;創(chuàng)建一個(gè)邏輯型變量,變量名為是否報(bào)警”,同時(shí),賦初值“true”二、類(lèi)型和類(lèi)型定義詞自定義變量的基本類(lèi)型有:1、整形(int):就是整數(shù),包括負(fù)整數(shù)2、雙精度小數(shù)(double):可以簡(jiǎn)單地理解為帶小數(shù)位的數(shù)3、字符串型(string)。4、邏輯型(bool):其值分別為類(lèi)型定義詞僅在創(chuàng)建變量時(shí)使用,三、附加變量附加變量就是在程序投入使用后,“truefalse,"即真、假”,也可以寫(xiě)成“T0”(1真,0假)。后面使用變量

16、時(shí),就不能再加類(lèi)型定義詞了變量值允許用戶(hù)自由更改的變量,一般指標(biāo),例如MACD(12,26,9)參數(shù)輸入就是通過(guò)附加變量實(shí)現(xiàn),變量的默認(rèn)值。定義附加變量只需在變量定義語(yǔ)句前加“extern”例:般用作程序參數(shù)。(12,26,9)分別為三個(gè)附加externint周期=9;創(chuàng)建一個(gè)整型附加變量,變量名為周期”,默認(rèn)值為9,允許用戶(hù)在程序外部修改參數(shù)值MT4編程入門(mén)4:自定義函數(shù)自定義函數(shù)與數(shù)學(xué)函數(shù)在本質(zhì)上是一致的例如:數(shù)學(xué)函數(shù)ft(x,y)=3x+2y(x,y為正整數(shù))寫(xiě)成程序語(yǔ)句就是:intft(intx,inty)inttemp;temp=3*x+2*y;return(temp);)一、和自定

17、義變量一樣,自定義函數(shù)在使用前,也必須先設(shè)立,以定義其類(lèi)型、名稱(chēng)、參數(shù)和運(yùn)算語(yǔ)句。函數(shù)類(lèi)型、名稱(chēng)、參數(shù)位于函數(shù)頭部(參數(shù)間以逗號(hào)分隔),大括號(hào)中的是運(yùn)算語(yǔ)句,也就是函數(shù)體部分。return語(yǔ)句為函數(shù)結(jié)束語(yǔ)句,return后面括號(hào)中的值為函數(shù)返回值,即函數(shù)運(yùn)算結(jié)果。上例中,int為函數(shù)類(lèi)型,表示該函數(shù)的返回值(運(yùn)算結(jié)果)是整數(shù);(x,y)為參數(shù),由于自定義變量使用之前都必須先創(chuàng)建,所以要加上類(lèi)型定義詞intft為函數(shù)名,有了函數(shù)名,我們就可以在別處用ft(2,1)的形式來(lái)調(diào)用此函數(shù);函數(shù)體部分有三句:第一句,定義一個(gè)整形變量temp第二句,計(jì)算temp的值第三句,函數(shù)結(jié)束,返回調(diào)用點(diǎn),以temp

18、的值作為本函數(shù)返回值。此函數(shù)也可以簡(jiǎn)寫(xiě)為:intft(intx,inty)return(3*x+2*y);二、函數(shù)類(lèi)型與類(lèi)型符函數(shù)類(lèi)型就是函數(shù)返回值(運(yùn)算結(jié)果)的類(lèi)型,與自定義變量類(lèi)型差不多有整型(int)、雙精度型(double)、字符串型(string)、邏輯型(bool)等,還有一種函數(shù)是以函數(shù)運(yùn)行為目的,運(yùn)行結(jié)束后不需要返回值也沒(méi)有返回值的,則函數(shù)類(lèi)型可以寫(xiě)成void(無(wú)值型)三、函數(shù)中如果定義了自定義變量,那么此變量?jī)H在本函數(shù)內(nèi)部存在,函數(shù)運(yùn)行結(jié)束時(shí),自定義變量也就自動(dòng)注銷(xiāo)。上例中,有x、y、temp三個(gè)自定義變量,在函數(shù)運(yùn)行時(shí)創(chuàng)建,在函數(shù)運(yùn)行結(jié)束時(shí)自動(dòng)消失,僅在函數(shù)內(nèi)部有效,與函數(shù)

19、外部無(wú)關(guān)。四、函數(shù)的調(diào)用函數(shù)調(diào)用非常簡(jiǎn)單,只要函數(shù)名正確、參數(shù)個(gè)數(shù)一致、類(lèi)型相同就能正確調(diào)用如我們前面創(chuàng)建了ft(x,y)函數(shù),則別處我們可以用ft(4,5)等樣式來(lái)調(diào)用ft(x,y)函數(shù)求值。調(diào)用時(shí),傳遞參數(shù)值給ft(x,y)函數(shù)(按順序把4傳給x,把5傳給y),返回結(jié)果23后繼續(xù)執(zhí)行主程序。MT4編程入門(mén)5:自定義數(shù)組一、數(shù)組是一系列同類(lèi)型變量的集合,可以同時(shí)存儲(chǔ)多個(gè)數(shù)值。例:intaa4=4,3,2,1;這是一個(gè)數(shù)據(jù)名為aa包含了4個(gè)元素的整數(shù)型數(shù)組(即數(shù)組長(zhǎng)度為4),可以同時(shí)存儲(chǔ)4個(gè)數(shù)值。二、自定義數(shù)組也必須先建立,后使用”創(chuàng)建(定義)時(shí),必須設(shè)定類(lèi)型和名稱(chēng)。創(chuàng)建(定義)時(shí),數(shù)組的元素

20、個(gè)數(shù)也可以設(shè)定,也可以不設(shè)定數(shù)組中第一個(gè)元素的編號(hào)為0,第二個(gè)為1,以此類(lèi)推。編號(hào)使用方括號(hào)括起來(lái)在這上例中aa0的值為4、aa1的值為3、aa2的值為2、aa3的值為1創(chuàng)建(定義)數(shù)組的同時(shí),可以賦初值,也可以不賦初值。例:intbb;創(chuàng)建數(shù)組bb,不設(shè)定數(shù)組元素個(gè)數(shù)intcc8;創(chuàng)建數(shù)組cc,設(shè)定數(shù)組元素為8個(gè),不賦初值intdd3=9,8,7);創(chuàng)建數(shù)組dd,設(shè)定數(shù)組元素為4個(gè),并賦初值賦值后,dd0的值為9、dd1的值為8、dd2的值為7intee9=0,1,2,3);創(chuàng)建數(shù)組ee,設(shè)定數(shù)組元素為9個(gè),但只給前4個(gè)元素賦初值三、數(shù)組使用時(shí)的賦值數(shù)組的賦值必須指定明確的賦值對(duì)象,除了新建

21、數(shù)組時(shí)可以批量賦值外,數(shù)組元素必須一個(gè)一個(gè)賦值例如:dd2=1;這是對(duì)數(shù)組dd的第3個(gè)元素dd2(0是第1個(gè),2表示第3個(gè))重新賦值為1在這里,沒(méi)有整數(shù)型變量定義符int,這樣,數(shù)組dd原有三個(gè)值9,8,7就變?yōu)?,8,1四、數(shù)組的引用數(shù)組只是一系列變量的集合,所以每次只能使用數(shù)組中的一個(gè)元素。數(shù)組的引用必須指定明確的引用對(duì)象,一次只能引用一個(gè)。如果需要使用整列數(shù)組,則必須逐個(gè)使用。例如:數(shù)組aa4的值為4,3,2,1我們用aa來(lái)引用數(shù)組aa中的值當(dāng)i=0時(shí),aai的值為4當(dāng)i=1時(shí),aai的值為3當(dāng)i=2時(shí),aai的值為2當(dāng)i=3時(shí),aai的值為1MT4編程入門(mén)6:市場(chǎng)數(shù)據(jù)取值一、預(yù)定義數(shù)組

22、(MT4已經(jīng)定義好的,可以直接使用)K線(xiàn)蠟燭都各有一個(gè),所以開(kāi)盤(pán)價(jià)、最高價(jià)、最低價(jià)、收盤(pán)價(jià)、成交量等歷史數(shù)據(jù),每根必須用數(shù)組來(lái)解決問(wèn)題,MT4有幾個(gè)預(yù)定義數(shù)組:開(kāi)盤(pán)價(jià)Open口、最高價(jià)High、最低價(jià)Low口、收盤(pán)價(jià)close口、成交量Volume口、所屬時(shí)間Time口類(lèi)型為雙精度double型(即精確小數(shù))這里有一個(gè)位置的問(wèn)題,右邊第一根K線(xiàn)蠟燭(即最新的蠟燭)的編號(hào)為0,第二根蠟燭編號(hào)1,第三根蠟燭編號(hào)2,Open0、Open1、盤(pán)價(jià)High0、High1、也就是說(shuō)從右向左倒著數(shù)過(guò)去。Low0、Close0,表示最新的開(kāi)盤(pán)價(jià)、最高價(jià)、最低價(jià)、收盤(pán)價(jià)Low1、close1,表布第2根K線(xiàn)蠟燭

23、的開(kāi)盤(pán)價(jià)、最高價(jià)、最低價(jià)、Open2、盤(pán)價(jià)High2、Low2、close2,表布第3根K線(xiàn)蠟燭的開(kāi)盤(pán)價(jià)、最高價(jià)、最低價(jià)、Open3、盤(pán)價(jià)High3、Low3、close3,表布第4根K線(xiàn)蠟燭的開(kāi)盤(pán)價(jià)、最高價(jià)、最低價(jià)、最低價(jià)、收盤(pán)價(jià)Open、High、Low、close,表示第i+1根K線(xiàn)蠟燭的開(kāi)盤(pán)價(jià)、最高價(jià)、以此類(lèi)推。注意:這些是數(shù)組,用的是方括號(hào)。二、預(yù)定義變量買(mǎi)入價(jià)、賣(mài)出價(jià)是實(shí)時(shí)價(jià)格,MT4用預(yù)定義變量Ask和Bid表示,數(shù)值類(lèi)型為double雙精度還有一些預(yù)定義變量,如:Bars表示圖表中的蠟火數(shù),類(lèi)型為int整數(shù)型Digits表示當(dāng)前貨幣對(duì)的小數(shù)位,類(lèi)型為int整數(shù)型,無(wú)日元幣對(duì)為4

24、,有日元幣對(duì)為2,黃金石油等一般也為2Point表示當(dāng)前貨幣對(duì)的點(diǎn)值,類(lèi)型為雙精度double型,無(wú)日元幣對(duì)為0.0001,有日元幣對(duì)為0.01。與Digits正好相反。三、指標(biāo)函數(shù)1、價(jià)格、成交量、時(shí)間它們都有三個(gè)參數(shù):貨幣對(duì)名、K線(xiàn)周期、位置序號(hào)雙精度double型雙精度double型雙精度double型雙精度double型雙精度double型日期時(shí)間datetime型開(kāi)盤(pán)價(jià):iOpen(symbol,timeframe,shift)收盤(pán)價(jià):iClose(symbol,timeframe,shift)最高價(jià):iHigh(symbol,timeframe,shift)最低價(jià):iLow(sym

25、bol,timeframe,shift)成交量:iVolume(symbol,timeframe,shift)所屬時(shí)間:iTime(symbol,timeframe,shift)K線(xiàn)周期為:1分鐘圖(PERIOD_M1)、5分鐘圖(PERIOD_M5)、15分鐘圖(PERIOD_M15)、30分鐘圖(PERIOD_M30)、1小時(shí)圖(PERIOD_H1)、4小時(shí)圖(PERIOD_H4)、日線(xiàn)圖(PERIOD_D1)、周線(xiàn)圖(PERIOD_W1)、周線(xiàn)圖(PERIOD_W1)、月線(xiàn)圖(PERIOD_W1)例:表示美元兌日元1小時(shí)圖最新K線(xiàn)蠟燭的開(kāi)盤(pán)價(jià)表示歐元兌美元4小時(shí)圖第3根K線(xiàn)蠟燭的收盤(pán)價(jià)表

26、示英磅兌美元1小時(shí)圖第i+1根K線(xiàn)蠟燭的收盤(pán)價(jià)既不指定商品,也不指定K線(xiàn)周期,用在誰(shuí)就是誰(shuí),用在哪就iOpen("USDJPY”,PERIOD_H1,0)iClose("EURUSD”,PERIOD_H4,2)iClose("GBPUSD”,PERIOD_H1,i)iHigh(NULL,0,0)是哪2、移動(dòng)平均值。雙精度double型iMA(symbol,timeframe,period,ma_shift,ma_method,applied_price,shift)參數(shù)共7個(gè),分別為:商品名稱(chēng)、K線(xiàn)周期、均線(xiàn)周期、均線(xiàn)偏移、平均模式、價(jià)格種類(lèi)、位置均線(xiàn)周期:10天

27、平均線(xiàn)的均線(xiàn)周期為10,20天均線(xiàn)的均線(xiàn)周期為20均線(xiàn)偏移:均線(xiàn)位置整體左右移動(dòng)的位置偏移量平均模式:簡(jiǎn)單移動(dòng)平均(MODE_SMA)、指數(shù)移動(dòng)平均(MODE_EMA)、平滑移動(dòng)平均線(xiàn)(MODE_SMMA)、線(xiàn)性力口權(quán)移動(dòng)平均線(xiàn)(MODE_LWMA)價(jià)格種類(lèi):收盤(pán)價(jià)(PRICE_CLOSE)、開(kāi)盤(pán)價(jià)(PRICE_OPEN)、最高價(jià)(PRICE_HIGH)、最低價(jià)(PRICE_LOW)、中值(PRICE_MEDIAN)、5(PRICE_TYPICAL)、6(PRICE_WEIGHTED)例1:iMA("EURUSD”,PERIOD_H1,20,0,MODE_SMA,PRICE_CLOS

28、E,0)表示:歐元1小時(shí)圖上,以收盤(pán)價(jià)計(jì)算的,20小時(shí)簡(jiǎn)單移動(dòng)平均線(xiàn),最新K線(xiàn)所對(duì)應(yīng)位置的值例2:iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,2)表示:在當(dāng)前商品、當(dāng)前K線(xiàn)周期圖表上,以U盤(pán)價(jià)計(jì)算的,20(天)指數(shù)移動(dòng)平均線(xiàn)第3根K線(xiàn)所對(duì)應(yīng)位置的值其他如MACD指標(biāo)、威廉指標(biāo)、RSI、SAR、布林線(xiàn)等指標(biāo)取值都與移動(dòng)平均線(xiàn)指標(biāo)相類(lèi)似3、在數(shù)組中求元素的移動(dòng)平均值。雙精度double型iMAOnArray(數(shù)組名,總數(shù),平均周期,均線(xiàn)偏移,平均模式,位置)這也與iMA函數(shù)差不多,不過(guò)數(shù)據(jù)源變?yōu)閿?shù)組從數(shù)組中不但可以求得移動(dòng)平均值,還可以求得RSI等指標(biāo)值4、求自定義指

29、標(biāo)的值我們經(jīng)常自己編一些自定義指標(biāo),可用iCustom函數(shù)來(lái)取得自定義函數(shù)的值iCustom(商品名,K線(xiàn)周期,自定義指標(biāo)名稱(chēng),自定義指標(biāo)參數(shù)1,參數(shù)2,參數(shù)3,自定義指標(biāo)線(xiàn)編號(hào),位置)如果自定義指標(biāo)只有一根指標(biāo)線(xiàn),則自定義指標(biāo)線(xiàn)的編號(hào)為0。如果自定義指標(biāo)有多根指標(biāo)線(xiàn),則第一條自定義指標(biāo)線(xiàn)的編號(hào)為0,第二條為1,第三條為2。例如:iCustom(NULL,0,"mymacd”,12,26,9,2,0)(12,26,9)為自定義指標(biāo)mymacd的三個(gè)參數(shù)表示:求當(dāng)前圖表中,自定義指標(biāo)mymacd(12,26,9)的第3條指標(biāo)線(xiàn)在最新位置的值拋磚引玉,這里只是有代表性地列了幾個(gè)函數(shù),詳細(xì)

30、請(qǐng)查閱MT4編程手冊(cè)MT4編程入門(mén)7:判斷語(yǔ)句一、if語(yǔ)句if語(yǔ)句很常用,也比較簡(jiǎn)單。規(guī)則:如果小括號(hào)中的條件成立,則執(zhí)行大括號(hào)中的語(yǔ)句;如果不成立,則跳過(guò)大括號(hào)。例如:if(a=1)b=c+1;我們?cè)诰帉?xiě)報(bào)警指標(biāo)的時(shí)候,就經(jīng)常用到這一語(yǔ)句:如果價(jià)格向上達(dá)到指定價(jià)位",則報(bào)警”如果“MACD上穿“,則報(bào)警”如果均線(xiàn)金叉",則報(bào)警”。等等例:intmark=0;if(High1<1.0000&&High0>=1.0000&&mark!=1)Alert(symbol(),"價(jià)格向上觸及1.0000");mark=1

31、;if(Low1>1.0000&&Low0<=1.0000&&mark!=2)Alert(symbol(),"價(jià)格向下觸及1.0000");mark=2;這是一個(gè)價(jià)格上、下穿1.0000時(shí)報(bào)警的判斷語(yǔ)句:上穿報(bào)警條件:當(dāng)?shù)诙鵎線(xiàn)最高價(jià)小于1.0000,并且最新K線(xiàn)最高價(jià)大等于1.0000下穿報(bào)警條件:當(dāng)?shù)诙鵎線(xiàn)最低彳大于1.0000,并且最新K線(xiàn)最低價(jià)小等于1.0000這里,mark是用作報(bào)警標(biāo)記,mark的初值是0,當(dāng)上穿報(bào)警后,mark的值就改為1;當(dāng)下穿報(bào)警后,mark的值就改為2;當(dāng)mark=0時(shí),說(shuō)明從未報(bào)過(guò)警,上、

32、下穿都能報(bào)警當(dāng)mark=1時(shí),說(shuō)明已經(jīng)上穿報(bào)過(guò)警了,不能再上穿報(bào)警了,但仍可下穿報(bào)警當(dāng)mark=2時(shí),說(shuō)明已經(jīng)下穿報(bào)過(guò)警了,不能再下穿報(bào)警了,但仍可上穿報(bào)警。二、if.else語(yǔ)句規(guī)則:如果小括號(hào)中的條件成立,則執(zhí)行if下大括號(hào)中的語(yǔ)句1;如果不成立,則執(zhí)行else下大括號(hào)中的語(yǔ)句2。if(條件)(語(yǔ)句1;)else(語(yǔ)句2;)三、注意事項(xiàng)1、只有語(yǔ)句后面才用到語(yǔ)句結(jié)束符;”條件、大、小括號(hào)后面都不用”2、語(yǔ)句用大括號(hào)括起來(lái),但如果只有一行語(yǔ)句,則大括號(hào)可以省略if(條件)語(yǔ)句1;MT4編程入門(mén)8:循環(huán)一幅K線(xiàn)圖有幾千上萬(wàn)條K線(xiàn),每根K線(xiàn)又各有開(kāi)收盤(pán)價(jià)、最高低價(jià)等數(shù)值,而且還有很多移動(dòng)平均線(xiàn)、

33、MACD、RSI等指標(biāo)值。面對(duì)海量數(shù)據(jù),我們必須用循環(huán)來(lái)實(shí)現(xiàn)數(shù)據(jù)的取值和賦值。一、while循環(huán)while(條件)(語(yǔ)句1語(yǔ)句2oOO)規(guī)則:當(dāng)小括號(hào)中的條件成立時(shí),就執(zhí)行大括號(hào)中的語(yǔ)句,執(zhí)行完了再判斷條件是否成立,如果條件成立就繼續(xù)執(zhí)行大括號(hào)中的語(yǔ)句。只要條件成立,程序就不停地運(yùn)行大括號(hào)中的語(yǔ)句(循環(huán)體),直到小括號(hào)中的條件不再成立時(shí)結(jié)束循環(huán)。它與if語(yǔ)句的區(qū)別是:if語(yǔ)句是當(dāng)條件為真時(shí)運(yùn)行一次;而while語(yǔ)句則是只要條件為真,循環(huán)體語(yǔ)句就不停地運(yùn)行,直到條件為假時(shí)結(jié)束循環(huán)。例:externint快線(xiàn)=12;externint慢線(xiàn)=26;doublebuffer口;inti=0;while

34、(i<1000)(buffer=iMA(NULL,0,快線(xiàn),0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,慢線(xiàn),0,MODE_EMA,PRICE_CLOSE,i);i+;)這里,循環(huán)執(zhí)行條件是i<1000,循環(huán)體中有兩個(gè)語(yǔ)句,一句是把兩條均線(xiàn)的差值賦給數(shù)組buffer,另一句"i+;是每運(yùn)行一次,i的值在原有基礎(chǔ)上增加1。這樣,隨著循環(huán)的不斷運(yùn)行,i的值逐漸增加,循環(huán)1000次后,i的值也就從0變?yōu)?000,此時(shí)“i<1000就不再成立,循環(huán)結(jié)束。這樣,數(shù)組buffer口中也就有了1000個(gè)值。二、for循環(huán)for循環(huán)與while循環(huán)在原

35、理上是一致的,只是書(shū)寫(xiě)格式上有所區(qū)別把上面的例子改成for語(yǔ)句:externint快線(xiàn)=12;externint慢線(xiàn)=26;doublebuffer;for(inti=0;i<1000;i+)buffer=iMA(NULL,0,快線(xiàn),0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,慢線(xiàn),0,MODE_EMA,PRICE_CLOSE,i);)與前面相比,我們注意到:"inti=0;語(yǔ)句'從"while(i<1000)上方移到循環(huán)條件"i<1000的前面;“i+;語(yǔ)句從循環(huán)體中移到了循環(huán)條件"i<10

36、00的后面;循環(huán)執(zhí)行順序與while循環(huán)一致:第一步、先執(zhí)行小括號(hào)中的第1句:inti=0;(此語(yǔ)句用來(lái)定義初始變量,在循環(huán)中僅執(zhí)行一次,可以為沒(méi)有任何表達(dá)式的空操作符;第二步、再判斷小括號(hào)中的第2句是否成立:i<1000;如果不成立,則循環(huán)結(jié)束;如果成立,則循環(huán)繼續(xù)運(yùn)行,執(zhí)行第三步第三步、按順序執(zhí)行大括號(hào)中的語(yǔ)句第四步、執(zhí)行小括號(hào)中的第1句:i+(此語(yǔ)句即:每執(zhí)行一次,i的值增加1)然后回到第二步繼續(xù)執(zhí)行循環(huán)。再補(bǔ)充一點(diǎn):如果循環(huán)體中(大括號(hào)中)只有一行語(yǔ)句,大括號(hào)可以省略MT4編程入門(mén)9:MT4自定義指標(biāo)的結(jié)構(gòu)MT4自定義指標(biāo)一般由四個(gè)部分構(gòu)成:(1)文件頭部(2)參數(shù)、變量和數(shù)組的

37、定義(3)初始化函數(shù)init()(4)主函數(shù)start()一、文件頭部,也稱(chēng)為預(yù)處理程序預(yù)處理程序以“#開(kāi)頭,行尾無(wú)語(yǔ)句結(jié)束符二”常用的預(yù)處理程序有:1、#propertyindicator_chart_window把指標(biāo)顯示在主圖。如:均線(xiàn)、SRA等類(lèi)指標(biāo)用到此語(yǔ)句2、#propertyindicator_separate_window把指標(biāo)顯示在副圖。如:MACD、RSI、威廉等類(lèi)指標(biāo)用到此語(yǔ)句3、#propertyindicator_buffers3顯示3根指標(biāo)線(xiàn)4、#propertyindicator_color1Red第1根指標(biāo)線(xiàn)的顏色為Red5、#propertyindicator

38、_width11第1根指標(biāo)線(xiàn)的粗細(xì)分別丟16、#propertyindicator_level10.00在0.00值位置橫劃1條虛線(xiàn)二、參數(shù)、變量和數(shù)組的定義全局性的參數(shù)、變量、數(shù)組在此定義,局部變量可在start()函數(shù)中定義三、初始化函數(shù)init()init()在自定義指標(biāo)加載時(shí)運(yùn)行一次。初始化函數(shù)的功能是設(shè)置”。如果自定義指標(biāo)需要?jiǎng)澗€(xiàn),則必然用到此函數(shù)四、主函數(shù)start()當(dāng)數(shù)據(jù)有變動(dòng)時(shí),start()就被觸發(fā)。數(shù)據(jù)變動(dòng)一次,start()就運(yùn)行一次。自定義指標(biāo)的編程主要依靠此函數(shù)進(jìn)行。start()函數(shù)的作用主要是取值和給指標(biāo)線(xiàn)賦值,報(bào)警也在此函數(shù)內(nèi)發(fā)起。另外,還有一個(gè)反初始化函數(shù)d

39、einit()deinit()在自定義卸載時(shí)運(yùn)行一次,可用以去除指標(biāo)加載時(shí)init()所做的初始化操作。MT4編程入門(mén)10:畫(huà)一條指標(biāo)線(xiàn)要畫(huà)指標(biāo)線(xiàn),只要在程序中寫(xiě)明以下幾點(diǎn)就可以了:第一、明確指標(biāo)線(xiàn)所在窗口,是主圖還是副圖第二、要建立數(shù)組,用以保存指標(biāo)線(xiàn)在各個(gè)位置的值。第三、要建立指標(biāo)線(xiàn)與數(shù)組的對(duì)應(yīng)關(guān)系,哪個(gè)數(shù)組對(duì)應(yīng)哪條指標(biāo)線(xiàn)第四、要明確指標(biāo)線(xiàn)的線(xiàn)型,是曲線(xiàn)還是柱線(xiàn)或者是箭頭第五、如果指標(biāo)線(xiàn)是箭頭,還要說(shuō)明是哪種箭頭第六、給數(shù)組賦值其中:第一、二條寫(xiě)在文件頭部中,第三、四、五條寫(xiě)在init()函數(shù)中(init函數(shù)僅在指標(biāo)加載時(shí)運(yùn)行一次)第六條寫(xiě)在start()函數(shù)中(start函數(shù)在數(shù)據(jù)發(fā)動(dòng)變

40、動(dòng)時(shí)運(yùn)行,變動(dòng)一次運(yùn)行一次)下面以MACD為例說(shuō)明我們知道,MACD指標(biāo)由二條曲線(xiàn)和一組紅綠柱線(xiàn)組成。(下圖一)其中:白線(xiàn)是二根均線(xiàn)的差;紫線(xiàn)是白線(xiàn)的移動(dòng)平均線(xiàn);紅綠柱線(xiàn)則是白線(xiàn)和紫線(xiàn)的差,白線(xiàn)上穿紫線(xiàn),出現(xiàn)紅柱,下穿則出現(xiàn)綠柱。我們從簡(jiǎn)單入手,先去除紫線(xiàn)和紅綠柱線(xiàn),僅保留其中的那根白線(xiàn),來(lái)看白線(xiàn)是怎樣畫(huà)出來(lái)的。下面是全部語(yǔ)句:#propertyindicator_separate_window#propertyindicator_color1White#propertyindicator_level10externintFMA=12;externintSMA=26;doublebuf口;in

41、tinit()SetIndexBuffer(0,buf);SetIndexStyle(0,DRAW_LINE);return(0);intstart()intlimit=Bars-IndicatorCounted();for(inti=0;i<limit;i+)buf=iMA(NULL,0,FMA,0,1,0,i)-iMA(NULL,0,SMA,0,1,0,i);)return(0);)說(shuō)明如下:以下為上述語(yǔ)句的簡(jiǎn)要說(shuō)明#propertyindicator_separate_window指標(biāo)放在副圖#propertyindicator_color1White第一條指標(biāo)線(xiàn)為白色#prope

42、rtyindicator_level10在副圖中零值位置上畫(huà)一條水平橫線(xiàn),externintFMA=12;externintSMA=26;設(shè)立二個(gè)整數(shù)型變量,默認(rèn)值為12和26,允許外部修改值doublebuf口;設(shè)立一個(gè)數(shù)組intinit()初始化函數(shù)。該函數(shù)在指標(biāo)加載時(shí)只運(yùn)行一次。init是系統(tǒng)默認(rèn)的函數(shù)名,但使用時(shí)仍需要進(jìn)行創(chuàng)設(shè),所以要加定義符int(SetIndexBuffer(0,buf);設(shè)置數(shù)組buf為第一條指標(biāo)線(xiàn)SetIndexStyle(0,DRAW_LINE);設(shè)置第一條指標(biāo)線(xiàn)線(xiàn)型為連續(xù)曲線(xiàn)return(0);函數(shù)結(jié)束語(yǔ)句intstart()指標(biāo)觸發(fā)函數(shù)。與init函數(shù)不同

43、,該函數(shù)在有數(shù)據(jù)變化時(shí)被觸發(fā),如果數(shù)據(jù)被不斷更新,則該函數(shù)將不斷執(zhí)行。start也是系統(tǒng)默認(rèn)的函數(shù)名,但使用時(shí)也仍然需要進(jìn)行創(chuàng)設(shè),所以也要加定義符int(intlimit=Bars-IndicatorCounted();自定義一個(gè)變量limit,并賦值Bars是圖表中的柱數(shù)IndicatorCounted()緩存中的柱數(shù),就是已經(jīng)計(jì)算過(guò)的有值的柱數(shù)這樣limit的值就是未經(jīng)計(jì)算的柱數(shù),這樣就可以起到優(yōu)化程序的作用。for(inti=0;i<limit;i+)循環(huán)語(yǔ)句。循環(huán)從i=0開(kāi)始,每循環(huán)一次i值增加1,一直循環(huán)到i<limit不滿(mǎn)足時(shí)結(jié)束循環(huán)由于循環(huán)變量i為一個(gè)新變量,所以要先定義,加上整型變量定義符int下面大括中為循環(huán)體,此例中只一條語(yǔ)句(buf=iMA(NULL,0,FMA,0,1,0,i)-iMA(NULL,0,SMA,0,1,0,i);給數(shù)組buf賦值,其值分別為

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論