為了計算當(dāng)天的結(jié)算單 [開拓者 TB]
- 咨詢內(nèi)容:
Vars
Numeric nCount0;
Numeric i0;
Numeric nEntryFlag0;
Numeric nbuyFlag0;
Numeric nbuyexitlot0;
Numeric mycapital0;
Numeric yingkuiprice;
Numeric todaycapitalnun;
Begin
If(BarStatus==2)
{
nCount0 = Data0.A_GetOrderCount();
If(nCount0>=1)
{
For i0 = 0 To nCount0
{
nEntryFlag0 = A_OrderEntryOrExit(i0);
nbuyFlag0 = A_OrderBuyOrSell(i0);
If(nEntryFlag0 == Enum_Exit() && nbuyFlag0 == Enum_Buy)
{
nbuyexitlot0 = A_OrderFilledLot;
if(Data0.A_BuyPosition>Data0.A_SellPosition) mycapital0=(Data0.Q_PreSettlePrice-Data0.A_OrderFilledPrice)*Data0.ContractUnit*nbuyexitlot0+(Data0.Q_AvgPrice-Data0.Q_PreSettlePrice)*Data0.ContractUnit*(Data0.A_BuyPosition-Data0.A_SellPosition-nbuyexitlot0);
If(Data0.A_SellPosition>=Data0.A_BuyPosition) mycapital0=(Data0.Q_PreSettlePrice-Data0.A_OrderFilledPrice)*Data0.ContractUnit*nbuyexitlot0+(Data0.Q_PreSettlePrice-Data0.Q_AvgPrice)*Data0.ContractUnit*(Data0.A_SellPosition-Data0.A_BuyPosition-nbuyexitlot0);
}Else If(nEntryFlag0 == Enum_Exit() && nbuyFlag0 == Enum_sell)
{
nbuyexitlot0 = A_OrderFilledLot;
if(Data0.A_BuyPosition>Data0.A_SellPosition) mycapital0=(Data0.A_OrderFilledPrice-Data0.Q_PreSettlePrice)*Data0.ContractUnit*nbuyexitlot0+(Data0.Q_AvgPrice-Data0.Q_PreSettlePrice)*Data0.ContractUnit*(Data0.A_BuyPosition-Data0.A_SellPosition-nbuyexitlot0);
If(Data0.A_SellPosition>=Data0.A_BuyPosition) mycapital0=(Data0.A_OrderFilledPrice-Data0.Q_PreSettlePrice)*Data0.ContractUnit*nbuyexitlot0+(Data0.Q_PreSettlePrice-Data0.Q_AvgPrice)*Data0.ContractUnit*(Data0.A_SellPosition-Data0.A_BuyPosition-nbuyexitlot0);
}
}
If(Data0.A_TodayBuyPosition>0 Or Data0. A_TodaySellPosition>0)
{
if(Data0.A_BuyPosition>Data0.A_SellPosition) mycapital0=(Data0.Q_AvgPrice-Data0.A_OrderFilledPrice)*Data0.ContractUnit*Data0.A_todayBuyPosition+(Data0.Q_AvgPrice-Data0.Q_PreSettlePrice)*Data0.ContractUnit*(Data0.A_BuyPosition-Data0.A_SellPosition-Data0.A_todayBuyPosition);
If(Data0.A_SellPosition>Data0.A_BuyPosition) mycapital0=(Data0.A_OrderFilledPrice-Data0.Q_AvgPrice)*Data0.ContractUnit*Data0.A_todaySellPosition+(Data0.Q_PreSettlePrice-Data0.Q_AvgPrice)*Data0.ContractUnit*(Data0.A_SellPosition-Data0.A_BuyPosition-Data0.A_todaySellPosition);
}
}Else If(Data0.A_BuyPosition>0 Or Data0.A_SellPosition>0)
{
if(Data0.A_BuyPosition>Data0.A_SellPosition) mycapital0=(Data0.Q_AvgPrice-Data0.Q_PreSettlePrice)*Data0.ContractUnit*(Data0.A_BuyPosition-Data0.A_SellPosition);
If(Data0.A_SellPosition>Data0.A_BuyPosition) mycapital0=(Data0.Q_PreSettlePrice-Data0.Q_AvgPrice)*Data0.ContractUnit*(Data0.A_SellPosition-Data0.A_BuyPosition);
}
yingkuiprice=mycapital0;
todaycapitalnun=A_PreviousEquity+A_TodayDeposit-A_TodayDrawing+yingkuiprice;
FileDelete("E:\\興業(yè)日結(jié)單核對文檔.txt");
FileAppend("E:\\興業(yè)日結(jié)單核對文檔.txt", "商品名稱"+" "+"當(dāng)日盈虧"+" "+"今開倉價"+" "+"今天結(jié)算價"+" "+"昨天結(jié)算價"+" "+"合約單位"+" "+"多倉"+" "+"空倉"+" "+"昨日結(jié)存"+" "+"當(dāng)日入金"+" "+"當(dāng)日出金"+" "+"當(dāng)日盈虧"+" "+"當(dāng)日結(jié)存"+" "+"總計");
FileAppend("E:\\興業(yè)日結(jié)單核對文檔.txt", Data0.SymbolName+" "+Text(mycapital0)+" "+Text(Data0.A_OrderFilledPrice)+" "+Text(Data0.Q_AvgPrice)+" "+Text(Data0.Q_PreSettlePrice)+" "+Text(Data0.ContractUnit)+" "+Text(Data0.A_Buyposition)+" "+Text(Data0.A_sellposition)+" "+Text(A_PreviousEquity)+" "+Text(A_TodayDeposit)+" "+Text(A_TodayDrawing)+" "+Text(yingkuiprice)+" "+Text(todaycapitalnun));
}
End
為了計算當(dāng)天的結(jié)算單
為何編譯能通過,但不能輸出文檔
請管理員或高手幫忙修改一下!謝謝
- TB技術(shù)人員:
我復(fù)制公式在自己的機器上運行,就一直是無響應(yīng)。貌似是一個死循環(huán)跳不出來。
- TB客服: 應(yīng)該是有邏輯錯誤
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 1145508240 進(jìn)行 有償 編寫!(不貴!點擊查看價格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容