來(lái)人啊,救命啊,幫我看看這些代碼實(shí)盤用行不行! [開拓者 TB]
- 咨詢內(nèi)容:
本帖最后由 空空大師 于 2012-3-2 08:56 編輯
Vars
Numeric JC;
Numeric GDPJ;
Numeric KJZ;
Numeric RC;
Numeric RC1;
Numeric RC2;
Numeric MinPoint; // 一個(gè)最小變動(dòng)單位,也就是一跳
Numeric MyEntryPrice; // 開倉(cāng)價(jià)格,本例是開倉(cāng)均價(jià),也可根據(jù)需要設(shè)置為某次入場(chǎng)的價(jià)格
Numeric TrailingStart2(75); // 跟蹤止損啟動(dòng)設(shè)置2
Numeric TrailingStop2(25); // 跟蹤止損設(shè)置2
Numeric StopLossSet(40); // 止損設(shè)置
Numeric MyExitPrice; // 平倉(cāng)價(jià)格
NumericSeries HighestAfterEntry; // 開倉(cāng)后出現(xiàn)的最高價(jià)
NumericSeries LowestAfterEntry; // 開倉(cāng)后出現(xiàn)的最低價(jià)
Begin
...
...
If(CurrentTime()>0.091700 And CurrentTime()<0.150900 And CrossOver(JC,RC1))
{
Buy(1,Q_AskPrice());
}
If(CurrentTime()>0.091700 And CurrentTime()<0.150900 And CrossUnder(JC,RC2))
{
SellShort(1,Q_BidPrice());
}
If(BarsSinceentry == 0)
{
HighestAfterEntry = Close;
LowestAfterEntry = Close;
If(MarketPosition <> 0)
{
HighestAfterEntry = Max(HighestAfterEntry,AvgEntryPrice);
// 開倉(cāng)的Bar,將開倉(cāng)價(jià)和當(dāng)時(shí)的收盤價(jià)的較大值保留到HighestAfterEntry
LowestAfterEntry = Min(LowestAfterEntry,AvgEntryPrice);
// 開倉(cāng)的Bar,將開倉(cāng)價(jià)和當(dāng)時(shí)的收盤價(jià)的較小值保留到LowestAfterEntry
}
}else
{
HighestAfterEntry = Max(HighestAfterEntry,High);
// 記錄下當(dāng)前Bar的最高點(diǎn),用于下一個(gè)Bar的跟蹤止損判斷
LowestAfterEntry = Min(LowestAfterEntry,Low);
// 記錄下當(dāng)前Bar的最低點(diǎn),用于下一個(gè)Bar的跟蹤止損判斷
}
MinPoint = MinMove*PriceScale;
MyEntryPrice = AvgEntryPrice;
If(MarketPosition==1) // 有多倉(cāng)的情況
{
If(HighestAfterEntry[1] >= MyEntryPrice + TrailingStart2*MinPoint)
// 跟蹤止損的條件表達(dá)式
{
If(Low <= HighestAfterEntry[1] - TrailingStop2*MinPoint)
{
MyExitPrice = HighestAfterEntry[1] - TrailingStop2*MinPoint;
If(Open < MyExitPrice)
MyExitPrice = Open;
// 如果該Bar開盤價(jià)有跳空觸發(fā),則用開盤價(jià)代替
Sell(1,MyExitPrice);
}
}else if(Low <= MyEntryPrice - StopLossSet*MinPoint)
//的止損處理
{
MyExitPrice = MyEntryPrice - StopLossSet*MinPoint;
If(Open < MyExitPrice) MyExitPrice = Open;
// 如果該Bar開盤價(jià)有跳空觸發(fā),則用開盤價(jià)代替
Sell(1,MyExitPrice);
}
}else if(MarketPosition==-1) // 有空倉(cāng)的情況
{
If(LowestAfterEntry[1] <= MyEntryPrice - TrailingStart2*MinPoint) // 跟蹤止損的條件表達(dá)式
{
If(High >= LowestAfterEntry[1] + TrailingStop2*MinPoint)
{
MyExitPrice = LowestAfterEntry[1] + TrailingStop2*MinPoint;
If(Open > MyExitPrice) MyExitPrice = Open; // 如果該Bar開盤價(jià)有跳空觸發(fā),則用開盤價(jià)代替
BuyToCover(1,MyExitPrice);
}
}else If(High >= MyEntryPrice + StopLossSet*MinPoint)//可以在這里寫上初始的止損處理
{
MyExitPrice = MyEntryPrice + StopLossSet*MinPoint;
If(Open > MyExitPrice) MyExitPrice = Open; // 如果該Bar開盤價(jià)有跳空觸發(fā),則用開盤價(jià)代替
BuyToCover(0,MyExitPrice);
}
}
If(CurrentTime()>0.150900 And MarketPosition <> 0)
{
Sell(1,0);
BuyToCover(1,0);
}
End斑斑、管理員,救命啊,謝謝啊!
- TB技術(shù)人員:
1.請(qǐng)問,0.090000的表達(dá)以軟件時(shí)間和計(jì)算機(jī)系統(tǒng)時(shí)間中的哪個(gè)時(shí)間為準(zhǔn)?
2.不成交的委托單軟件如何處理?撤單如何編寫?追價(jià)如何編寫?
3.會(huì)不會(huì)有重復(fù)委托的情況?如何處理?
4.如果使用交易助手,成交單會(huì)反映至策略嗎?
謝謝! - TB客服:
1.公式里所用到的currenttime是計(jì)算機(jī)系統(tǒng)時(shí),
2.可以使用“交易助手”,配合完成未成交的撤單再重發(fā)的動(dòng)作,
3.會(huì)有信號(hào)消失的可能性,建議修 改公式
4.不會(huì)。 - 網(wǎng)友回復(fù):
1.公式里所用到的currenttime是計(jì)算機(jī)系統(tǒng)時(shí),
2.可以使用“交易助手”,配合完成未成交的撤單再重發(fā)的動(dòng)作 ...
小米 發(fā)表于 2012-3-2 10:21
謝謝,那一樓的代碼實(shí)盤的話會(huì)有問題嗎?會(huì)不會(huì)有重復(fù)委托的情況?
謝謝! - 網(wǎng)友回復(fù):
1.公式里所用到的currenttime是計(jì)算機(jī)系統(tǒng)時(shí),
2.可以使用“交易助手”,配合完成未成交的撤單再重發(fā)的動(dòng)作 ...
小米 發(fā)表于 2012-3-2 10:21
撤單如何編寫?追價(jià)如何編寫?謝謝
如果以上指標(biāo)公式不適用于您常用的行情軟件
或者您想改編成選股公式,以便快速選出某種形態(tài)個(gè)股的話,
相關(guān)文章
-
沒有相關(guān)內(nèi)容