多空動(dòng)態(tài)管理策略(MC版)_第1頁
多空動(dòng)態(tài)管理策略(MC版)_第2頁
多空動(dòng)態(tài)管理策略(MC版)_第3頁
多空動(dòng)態(tài)管理策略(MC版)_第4頁
多空動(dòng)態(tài)管理策略(MC版)_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

多空動(dòng)態(tài)管理策略(MC版)一個(gè)基于ATR(AverageTrueRange,平均真實(shí)波幅)指標(biāo)的交易策略模塊,該模塊旨在管理多頭和空頭倉位,并通過動(dòng)態(tài)調(diào)整止損點(diǎn)來實(shí)現(xiàn)風(fēng)險(xiǎn)控制和利潤增長。策略的核心思想是利用ATR作為動(dòng)態(tài)跟蹤止損的基礎(chǔ),通過設(shè)定特定的條件來決定何時(shí)更新止損點(diǎn)和何時(shí)平倉。策略概述該策略分為兩個(gè)主要部分:ATR-RATCHET多單模塊和ATR-RATCHET空單模塊,分別用于管理多頭和空頭倉位。此外,還有兩個(gè)輔助模塊:多頭持倉管理模塊和空頭持倉管理模塊,用于進(jìn)一步優(yōu)化持倉管理過程。ATR-RATCHET多單模塊入場和初始設(shè)置-入場條件:策略未明確給出入場條件,但假設(shè)在滿足某些條件時(shí),`marketposition`會(huì)被設(shè)置為1,表示持有多頭倉位。-初始設(shè)置:當(dāng)`barssinceentry`等于0時(shí)(即入場后的第一根K線),將`tp`(入場后的最高價(jià)格)設(shè)置為入場價(jià)格。跟蹤止損邏輯-更新最高價(jià)跟蹤:如果當(dāng)前K線的高價(jià)高于`tp`,則更新`tp`。-計(jì)算利潤空間:`spacep`表示從入場價(jià)格到當(dāng)前最高價(jià)的利潤空間。-初始成本和止損線設(shè)置:當(dāng)利潤空間首次超過1倍ATR時(shí),使用過去`m2`根K線中的最低價(jià)作為初始成本`inicost`,并記錄當(dāng)前K線編號(hào)`barn`。同時(shí),在圖表上標(biāo)記開始跟蹤止損的位置。-動(dòng)態(tài)調(diào)整止損線:當(dāng)利潤空間持續(xù)超過1倍ATR時(shí),根據(jù)入場后的K線數(shù)量、步長和ATR值計(jì)算跟蹤止損的移動(dòng)量`ratchet`,并據(jù)此更新止損線`stopline`。在下一根K線以止損線價(jià)格賣出平倉。-超時(shí)平倉:如果持倉周期超過`maxperiod`且利潤沒有超過1倍ATR,則在下一根K線以市價(jià)賣出平倉。輔助功能-刪除止損線:當(dāng)`marketposition`變?yōu)?(即平倉)時(shí),刪除之前繪制的止損線。ATR-RATCHET空單模塊空單模塊的邏輯與多單模塊類似,但方向相反:-入場和初始設(shè)置:當(dāng)`barssinceentry`等于0時(shí),將`tp`(入場后的最低價(jià)格)設(shè)置為入場價(jià)格。-跟蹤止損邏輯:如果當(dāng)前K線的低價(jià)低于`tp`,則更新`tp`。計(jì)算利潤空間`spacep`,當(dāng)利潤空間首次超過1倍ATR時(shí),使用過去`m2`根K線中的最高價(jià)作為初始成本`inicost`,并記錄當(dāng)前K線編號(hào)`barn`。在圖表上標(biāo)記開始跟蹤止損的位置。當(dāng)利潤空間持續(xù)超過1倍ATR時(shí),根據(jù)入場后的K線數(shù)量、步長和ATR值計(jì)算跟蹤止損的移動(dòng)量`ratchet`,并據(jù)此更新止損線`stopline`。在下一根K線以止損線價(jià)格買入平倉。如果持倉周期超過`maxperiod`且利潤沒有超過1倍ATR,則在下一根K線以市價(jià)買入平倉。-輔助功能:當(dāng)`marketposition`變?yōu)?時(shí),刪除之前繪制的止損線。多頭持倉管理模塊多頭持倉管理模塊的邏輯與多單模塊類似,但增加了對(duì)持倉周期的管理:-更新最高價(jià)跟蹤:如果當(dāng)前K線的高價(jià)高于`tp`,則更新`tp`。-計(jì)算利潤空間:`spacep`表示從入場價(jià)格到當(dāng)前最高價(jià)的利潤空間。-初始成本和止損線設(shè)置:當(dāng)利潤空間首次超過1倍ATR時(shí),使用過去`m2`根K線中的最低價(jià)作為初始成本`inicost`,并記錄當(dāng)前K線編號(hào)`barn`。在圖表上標(biāo)記開始跟蹤止損的位置。-動(dòng)態(tài)調(diào)整止損線:當(dāng)利潤空間持續(xù)超過1倍ATR時(shí),根據(jù)入場后的K線數(shù)量、步長和ATR值計(jì)算跟蹤止損的移動(dòng)量`ratchet`,并據(jù)此更新止損線`stopline`。在下一根K線以止損線價(jià)格賣出平倉。-超時(shí)平倉:如果持倉周期超過`maxperiod`且利潤沒有超過1倍ATR,則在下一根K線以市價(jià)賣出平倉。-**輔助功能**:當(dāng)`marketposition`變?yōu)?時(shí),刪除之前繪制的止損線。空頭持倉管理模塊空頭持倉管理模塊的邏輯與空單模塊類似,但增加了對(duì)持倉周期的管理:-入場和初始設(shè)置:當(dāng)`barssinceentry`等于0時(shí),將`tp`(入場后的最低價(jià)格)設(shè)置為入場價(jià)格。-跟蹤止損邏輯:如果當(dāng)前K線的低價(jià)低于`tp`,則更新`tp`。計(jì)算利潤空間`spacep`,當(dāng)利潤空間首次超過1倍ATR時(shí),使用過去`m2`根K線中的最高價(jià)作為初始成本`inicost`,并記錄當(dāng)前K線編號(hào)`barn`。在圖表上標(biāo)記開始跟蹤止損的位置。當(dāng)利潤空間持續(xù)超過1倍ATR時(shí),根據(jù)入場后的K線數(shù)量、步長和ATR值計(jì)算跟蹤止損的移動(dòng)量`ratchet`,并據(jù)此更新止損線`stopline`。在下一根K線以止損線價(jià)格買入平倉。如果持倉周期超過`maxperiod`且利潤沒有超過1倍ATR,則在下一根K線以市價(jià)買入平倉。-輔助功能:當(dāng)`marketposition`變?yōu)?時(shí),刪除之前繪制的止損線。本策略通過結(jié)合ATR指標(biāo)和動(dòng)態(tài)跟蹤止損機(jī)制,旨在實(shí)現(xiàn)有效的風(fēng)險(xiǎn)控制和利潤增長。其核心優(yōu)勢在于能夠根據(jù)市場波動(dòng)自動(dòng)調(diào)整止損點(diǎn),從而在保護(hù)利潤的同時(shí),允許交易在有利的市場條件下繼續(xù)發(fā)展。策略的靈活性和適應(yīng)性使其適用于不同的市場環(huán)境,但同時(shí)也需要謹(jǐn)慎設(shè)置參數(shù)以避免過度交易或止損過于頻繁。以下是ATR-RATCHET多單模塊的逐行代碼注解:Input:len(15),{ATR的初始周期}m1(0.05),{起始設(shè)置步長,乘以ATR值得到每根K線的移動(dòng)量}m2(10),{用于計(jì)算初始成本的K線數(shù)量}maxperiod(20);{如果在這個(gè)K線數(shù)內(nèi)利潤沒有超過1倍ATR,則退出}var:tp(0),{入場后的最高價(jià)格}spacep(0),{利潤值點(diǎn)}inicost(0),{初始成本}ratchet(0),{跟蹤止損的移動(dòng)量}stopline(0),{止損線}barn(0);{記錄開始跟蹤止損的K線編號(hào)}value1=atr(len);{計(jì)算ATR值}ifbarssinceentry=0thenbegintp=entryprice;{如果剛?cè)雸觯O(shè)置tp為入場價(jià)格}end;ifmarketposition=1thenbegin{如果持有多頭倉位}ifbarssinceentry>=1thenbegin{如果入場后至少過去了一根K線}ifhigh>tpthentp=high;{如果當(dāng)前K線的高價(jià)高于tp,則更新tp}end;spacep=tp-entryprice;{計(jì)算從入場價(jià)格到當(dāng)前最高價(jià)的利潤空間}ifspacep[1]<1*value1[1]andspacep>1*value1thenbegin{如果利潤點(diǎn)從前一根K線的1倍ATR以下增加到超過1倍ATR,設(shè)置初始成本}inicost=Lowest(low,m2);{從過去m2根K線中找到最低價(jià)作為初始成本}barn=BarNumber;{記錄當(dāng)前K線編號(hào)}Value6=Text_New(Date,Time,High+10,"STARTRATCHET");{在圖表上標(biāo)記開始跟蹤止損}end;ifspacep>1*value1thenbegin//STARTRATCHETMODEL{如果利潤超過1倍ATR,開始跟蹤止損模型}ratchet=barssinceentry*m1*value1;{計(jì)算跟蹤止損的移動(dòng)量}stopline=inicost+ratchet;{設(shè)置止損線}sell("ratchet-out1")allsharesnextbaratstoplinestop;{在下一根K線以止損線價(jià)格賣出平倉}ifBarNumber>barnthenbegin{如果當(dāng)前K線編號(hào)大于記錄的開始跟蹤止損的K線編號(hào)}value2=tl_new(date[1],time[1],stopline[1],date,time,stopline);{繪制止損線}end;end;ifbarssinceentry>=maxperiodandspacep<1*value1thensell("time-out1")allsharesnextbaratmarket;{如果超過最大周期且利潤沒有超過1倍ATR,則市價(jià)賣出平倉}ifmarketposition=0thenTL_delete(value2);{如果已平倉,刪除止損線}end;這段代碼是一個(gè)用于管理多頭倉位的交易策略模塊,它使用ATR作為動(dòng)態(tài)跟蹤止損的基礎(chǔ)。詳細(xì)解釋:-`Input`部分定義了策略的輸入?yún)?shù),包括ATR周期、起始步長、計(jì)算初始成本的K線數(shù)量以及最大周期。-`var`部分聲明了用于策略計(jì)算的變量。-`value1=atr(len);`計(jì)算ATR值。-`ifbarssinceentry=0then...`檢查是否為入場后的第一根K線,如果是,則設(shè)置`tp`為入場價(jià)格。-`ifmarketposition=1then...`如果持有多頭倉位,執(zhí)行以下邏輯:-更新`tp`為入場后的最高價(jià)。-計(jì)算利潤空間`spacep`。-當(dāng)利潤空間首次超過1倍ATR時(shí),設(shè)置初始成本`inicost`并標(biāo)記開始跟蹤止損。-當(dāng)利潤空間持續(xù)超過1倍ATR時(shí),計(jì)算跟蹤止損的移動(dòng)量`ratchet`并設(shè)置止損線`stopline`。-如果超過最大周期`maxperiod`且利潤沒有超過1倍ATR,則以市價(jià)平倉。-`ifmarketposition=0thenTL_delete(value2);`如果已平倉,刪除止損線。以下是ATR-RATCHET空單模塊的逐行代碼注解:Input:len(15),{ATR的初始周期}m1(0.05),{起始設(shè)置步長,乘以ATR值得到每根K線的移動(dòng)量}m2(10),{用于計(jì)算初始成本的K線數(shù)量}maxperiod(20);{如果在這個(gè)K線數(shù)內(nèi)利潤沒有超過1倍ATR,則退出}var:tp(0),{入場后的最低價(jià)格}spacep(0),{利潤值點(diǎn)}inicost(0),{初始成本}ratchet(0),{跟蹤止損的移動(dòng)量}stopline(0),{止損線}barn(0);{記錄開始跟蹤止損的K線編號(hào)}value3=atr(len);//計(jì)算長度為len的ATR值ifbarssinceentry=0thenbegin//如果是入場后的第一根K線,進(jìn)行初始化設(shè)置tp=entryprice;//將最低價(jià)跟蹤設(shè)置為入場價(jià)格end;ifmarketposition=-1thenbegin//如果當(dāng)前持有空頭倉位ifbarssinceentry>=1thenbegin//如果入場后至少過去了一根K線iflow<tpthentp=low;//如果當(dāng)前K線的低價(jià)低于最低價(jià)跟蹤,則更新最低價(jià)跟蹤end;spacep=entryprice-tp;//計(jì)算從入場價(jià)格到當(dāng)前最低價(jià)跟蹤的利潤空間ifspacep[1]<1*value3[1]andspacep>1*value3thenbegin{找到利潤點(diǎn)超過1*atr的K線,設(shè)置初始成本}//如果上一根K線的利潤小于1倍ATR,而當(dāng)前利潤超過1倍ATR,則找到利潤超過1倍ATR的K線,設(shè)置初始成本inicost=Highest(high,m2);//從過去m2根K線中找到最高價(jià)作為初始成本barn=BarNumber;//記錄當(dāng)前K線編號(hào)Value5=Text_New(Date,Time,High+10,"STARTRATCHET");//在圖表上標(biāo)記開始跟蹤止損end;ifspacep>1*value3thenbegin//開始跟蹤止損模型//如果利潤空間持續(xù)超過1倍ATR,開始跟蹤止損模型ratchet=barssinceentry*m1*value3;//計(jì)算跟蹤止損的移動(dòng)量,即K線數(shù)量乘以每根K線的步長乘以ATR值stopline=inicost-ratchet;//設(shè)置止損線為初始成本減去跟蹤止損移動(dòng)量buytocover("ratchet-out2")allsharesnextbaratstoplinestop;//在下一根K線以止損線價(jià)格買入平倉ifBarNumber>barnthenbeginvalue4=tl_new(date[1],time[1],stopline[1],date,time,stopline);//如果當(dāng)前K線編號(hào)大于記錄的開始跟蹤止損的K線編號(hào),則繪制止損線end;end;ifbarssinceentry>=maxperiodandspacep<1*value3thenbuytocover("time-out2")allsharesnextbaratmarket;//如果持倉周期超過最大周期且利潤沒有超過1倍ATR,則在下一根K線以市價(jià)買入平倉ifmarketposition=0thenTL_delete(value4);//如果已經(jīng)平倉,刪除止損線end;以上代碼用于管理空頭持倉,采用ATR作為跟蹤止損的基礎(chǔ)。以下是詳細(xì)解釋:-`Input`部分設(shè)置策略的輸入?yún)?shù)。-`var`部分聲明了策略中使用的變量。-`value3=atr(len);`計(jì)算ATR值。-`ifbarssinceentry=0then...`初始化設(shè)置,當(dāng)入場后第一根K線時(shí)執(zhí)行。-`ifmarketposition=-1then...`如果持有空頭倉位,執(zhí)行以下邏輯:-更新最低價(jià)跟蹤`tp`。-計(jì)算利潤空間`spacep`。-當(dāng)利潤首次超過1倍ATR時(shí),設(shè)置初始成本`inicost`并標(biāo)記開始跟蹤止損。-當(dāng)利潤持續(xù)超過1倍ATR時(shí),計(jì)算跟蹤止損的移動(dòng)量`ratchet`并設(shè)置止損線`stopline`。-如果持倉周期過長且利潤未超過1倍ATR,則以市價(jià)平倉。-如果已經(jīng)平倉,刪除止損線。以下是多頭持倉管理模塊的逐行代碼注解:Input:len(15),m1(0.05),m2(10),maxperiod(20);//輸入?yún)?shù):ATR周期、每根K線的跟蹤止損步長、用于計(jì)算初始成本的K線數(shù)量、最大持有周期var:tp(0),spacep(0),inicost(0),ratchet(0),stopline(0),barn(0);//聲明變量:最高價(jià)跟蹤、利潤空間、初始成本、跟蹤止損移動(dòng)量、止損線、記錄開始跟蹤止損的K線編號(hào)value1=atr(len);//計(jì)算長度為len的ATR值ifbarssinceentry=0thenbegin{initialset}//如果是入場后的第一根K線,進(jìn)行初始化設(shè)置tp=entryprice;//將最高價(jià)跟蹤設(shè)置為入場價(jià)格end;ifmarketposition=1thenbegin//如果當(dāng)前持有多頭倉位ifbarssinceentry>=1thenbegin//如果入場后至少過去了一根K線ifhigh>tpthentp=high;//如果當(dāng)前K線的高價(jià)高于最高價(jià)跟蹤,則更新最高價(jià)跟蹤end;spacep=tp-entryprice;//計(jì)算從入場價(jià)格到當(dāng)前最高價(jià)跟蹤的利潤空間ifspacep[1]<1*value1[1]andspacep>1*value1thenbegin{findthebarofprofitbiggerthan1*atr,startratchet}//如果上一根K線的利潤小于1倍ATR,而當(dāng)前利潤超過1倍ATR,則找到利潤超過1倍ATR的K線,開始跟蹤止損inicost=Lowest(low,m2);//從過去m2根K線中找到最低價(jià)作為初始成本barn=BarNumber;//記錄當(dāng)前K線編號(hào)Value6=Text_New(Date,Time,High+10,"RATCHET");//在圖表上標(biāo)記開始跟蹤止損end;ifspacep>1*value1thenbegin{startratchetmodel}//如果利潤空間持續(xù)超過1倍ATR,開始跟蹤止損模型ratchet=barssinceentry*m1*value1;//計(jì)算跟蹤止損的移動(dòng)量,即K線數(shù)量乘以每根K線的步長乘以ATR值stopline=inicost+ratchet;//設(shè)置止損線為初始成本加上跟蹤止損移動(dòng)量sell("ratchet-out1")allsharesnextbaratstoplinestop;//在下一根K線以止損線價(jià)格賣出平倉ifBarNumber>barn+1thenvalue2=tl_new(date[1],time[1],stopline[1],date,time,stopline);//如果當(dāng)前K線編號(hào)大于記錄的開始跟蹤止損的K線編號(hào)加1,則繪制止損線end;ifbarssinceentry>=maxperiodandspacep<1*value1thensell("time-out1")allsharesnextbaratmarket;//如果持倉周期超過最大周期且利潤沒有超過1倍ATR,則在下一根K線以市價(jià)賣出平倉ifmarketposition=0thentl_delete(value2);//如果已經(jīng)平倉,刪除止損線end;這段代碼用于管理多頭持倉,采用ATR作為跟蹤止損的基礎(chǔ)。以下是詳細(xì)解釋:-`Input`部分設(shè)置策略的輸入?yún)?shù)。-`var`部分聲明了策略中使用的變量。-`value1=atr(len);`計(jì)算ATR值。-`ifbarssinceentry=0then...`初始化設(shè)置,當(dāng)入場后第一根K線時(shí)執(zhí)行。-`ifmarketposition=1then...`如果持有多頭倉位,執(zhí)行以下邏輯:-更新最高價(jià)跟蹤`tp`。-計(jì)算利潤空間`spacep`。-當(dāng)利潤首次超過1倍ATR時(shí),設(shè)置初始成本`inicost`并標(biāo)記開始跟蹤止損。-當(dāng)利潤持續(xù)超過1倍ATR時(shí),計(jì)算跟蹤止損的移動(dòng)量`ratchet`并設(shè)置止損線`stopline`。-如果持倉周期過長且利潤未超過1倍ATR,則以市價(jià)平倉。-如果已經(jīng)平倉,刪除止損線。以下是空頭持倉管理模塊的逐行代碼注解:Input:len(15),{ATR的初始周期}m1(0.05),{起始設(shè)置步長,乘以ATR值得到每根K線的移動(dòng)量}m2(10),{用于計(jì)算初始成本的K線數(shù)量}maxperiod(20);{如果在這個(gè)K線數(shù)內(nèi)利潤沒有超過1倍ATR,則退出}var:tp(0),{入場后的最高價(jià)格}spacep(0),{利潤值點(diǎn)}inicost(0),{初始成本}ratchet(0),{跟蹤止損的移動(dòng)量}stopline(0),{止損線}barn(0);{記錄開始跟蹤止損的K線編號(hào)}value3=atr(len);//計(jì)算長度為len的ATR值ifbarssinceentry=0thenbegin//如果是入場后的第一根K線,進(jìn)行初始化設(shè)置tp=entryprice;//將最高價(jià)格設(shè)置為入場價(jià)格end;ifmarketposition=-1thenbegin//如果當(dāng)前持有空頭倉位ifbarssinceentry>=1thenbegin//如果入場后至少過去了一根K線iflow<tpthentp=low;//如果當(dāng)前K線的低價(jià)低于最高價(jià)格跟蹤,則更新最高價(jià)格跟蹤end;spacep=entryprice-tp;//計(jì)算從入場價(jià)格到當(dāng)前最高價(jià)格跟蹤的利潤空間ifspacep[1]<1*value3[1]andspacep>1*value3thenbegin//如果上一根K線的利潤小于1倍ATR,而當(dāng)前利潤超過1倍ATR,則找到利潤超過1倍ATR的K線,設(shè)置初始成本inicost=Highest(high,m2);//從過去m2根K線中找到最高價(jià)作為初始成本barn=BarNumber;//記錄當(dāng)前K線編號(hào)Value5=Text_New(Date,Time,low-10,"RATCHET");//在圖表上標(biāo)記開始跟蹤止損的位置end;ifspacep>1*value3thenbegin//開始跟蹤止損模型//如果利潤空間持續(xù)超過1倍ATR,開始跟蹤止損模型ratchet=barssinceentry*m1*value3;//計(jì)算跟蹤止損的移動(dòng)量,即K線數(shù)量乘以每根K線的步長乘以ATR值stopline=inicost-ratchet;//設(shè)置止損線為初始成本減去跟蹤止損移動(dòng)量buytocover("ratchet-out2")allsharesnextbaratstoplinestop;//在下一根K線以止損線價(jià)格買入平倉ifBarNumber>barn+1thenbeginvalue4=tl_new(date[1],time[1],stopline[1],date,time,stopline);//如果當(dāng)前K線編號(hào)大于記錄的開始跟蹤止損的K線編號(hào)加一,則繪制止損線end;end;ifbarssinceentry>=maxperiodandspacep<1*value3thenbuytocover("time-out2")allsharesnextbaratmarket;//如果持倉周期超過最大周期且利潤沒有超過1倍ATR,則在下一根K線以市價(jià)買入平倉ifmarketposition=0thenTL_delete(value4);//如果已經(jīng)平倉,刪除止損線end;這段代碼用于管理空頭持倉,采用ATR作為跟蹤止損的基礎(chǔ)。以下是詳細(xì)解釋:-`Input`部分設(shè)置策略的輸入?yún)?shù)。-`var`部分聲明了策略中使用的變量。-`value3=atr(len);`計(jì)算ATR值。-`ifbarssinceentry=0then...`初始化設(shè)置,當(dāng)入場后第一根K線時(shí)執(zhí)行。-`ifmarketposition=-1then...`如果持有空頭倉位,執(zhí)行以下邏輯:-更新最高價(jià)格跟蹤`tp`。-計(jì)算利潤空間`spacep`。-當(dāng)利潤首次超過1倍ATR時(shí),設(shè)置初始成本`inicost`并標(biāo)記開始跟蹤止損。-當(dāng)利潤持續(xù)超過1倍ATR時(shí),計(jì)算跟蹤止損的移動(dòng)量`ratchet`并設(shè)置止損線`stopline`。-如果持倉周期過長且利潤未超過1倍ATR,則以市價(jià)平倉。-如果已經(jīng)平倉,刪除止損線。ATR-RATCHET多單模塊代碼:Input:len(15),m1(0.05),m2(10),maxperiod(20);var:tp(0),spacep(0),inicost(0),ratchet(0),stopline(0),barn(0);value1=atr(len);ifbarssinceentry=0thenbegintp=entryprice;end;ifmarketposition=1thenbeginifbarssinceentry>=1thenbeginifhigh>tpthentp=high;end;spacep=tp-entryprice;ifspacep[1]<1*value1[1]andspacep>1*value1thenbegininicost=Lowest(low,m2);barn=BarNumber;Value6=Text_New(Date,Time,High+10,"STARTRATCHET");end;ifspacep>1*value1thenbeginratchet=barssinceentry*m1*value1;{ratchetpoint}stopline=inicost+ratchet;{thestopline}sell("ratchet-out1")allsharesnextbaratstoplinestop;ifBarNumber>barnthenbeginvalue2=tl_new(date[1],time[1],stopline[1],date,time,stopline);end;end;ifbarssinceentry>=maxperiodandspacep<1*value1thensell("time-out1")allsharesnextbaratmarket;ifmarketposition=0thenTL_delete(value2);end;ATR-RATCHET空單模塊:Input:len(15),m1(0.05),m2(10),maxperiod(20);var:tp(0),spacep(0),inicost(0),ratchet(0),stopline(0),barn(0);value3=atr(len);ifbarssinceentry=0thenbegintp=entryprice;end;ifmarketposition=-1thenbeginifbarssinceentry>=1thenbeginiflow<tpthentp=low;end;spacep=entryprice-tp;ifspacep[1]<1*value3[1]andspacep>1*value3thenbegininicost=Highest(high,m2);barn=BarNumber;Value5=Text_New(Date,Time,High+10,"STARTRATCHET");end;ifspacep>1*value3thenbeginratchet=barssinceentry*m1*value3;stopline=inicost-ratchet;buytocover("ratchet-out2")allsharesnextbaratstoplinestop;ifBarNumber>barnthenbeginvalue4=tl_new(date[1],time[1],stopline[1],date,time,stopline);end;end;ifbarssinceentry>=maxperiodandspacep<1*value3thenbuytocover("time-out2")allsharesnextbaratmarket;ifmarketposition=0thenTL_delete(value4);end;多頭持倉管理模塊:Input:len(15),m1(0.05),m2(10),maxperiod(20);var:tp(0),spacep(0),inicost(0),ratchet(0),stopline(0),barn(0);value1=atr(len);ifbarssinceentry=0thenbegintp=entryprice;end;ifmarketposition=1thenbeginifbarssinceentry>=1thenbeginifhigh>tpthentp=high;end;spacep=tp-entryprice;ifspacep[1]<1*value1[1]andspacep>1*value1thenbegininicost=Lowest(low,m2);barn=BarNumber;Value6=Text_New(Date

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論