VAR WinPrice,LosePrice;
VAR Code;
VAR BN,SN,BN1,SN1;
VOID MAIN()
{
Code="IF1312";
WinPrice=5;
LosePrice=5;
BN=T_BuyPosition(Code);
SN=T_SellPosition(Code);
BN1=T_BuyRemainPosition(Code);
SN1=T_SellRemainPosition(Code);
//T_Deal(Code,bs,kp,vol,price),發出委托。Code(字符串):合約編碼,bs(整數0,1):0 買 1 賣 ,kp(整數0,1,2):0 開 1平 2平今
//Vol(整數):下單手數,Price(整數或小數):下單價格,0為市價 返回唯一委托標識OrderID(字符串)
//止盈
IF(BN=BN1&&BN>0&&Price(Code)>=T_BuyAvgPrice(Code)-LosePrice)
{
T_Deal(Code,1,1,BN,T_BuyAvgPrice(Code)+WinPrice);
}
IF(SN=SN1&&SN>0&&Price(Code)<=T_SellAvgPrice(Code)+LosePrice)
{
T_Deal(Code,0,1,SN,T_SellAvgPrice(Code)-WinPrice);
}
//止損
IF(BN=BN1&&BN>0&&Price(Code)<=T_BuyAvgPrice(Code)-LosePrice)
{
T_Deal(Code,1,1,BN,Price(Code)-2);
}
IF(SN=SN1&&SN>0&&Price(Code)>=T_SellAvgPrice(Code)+LosePrice)
{
T_Deal(Code,0,1,SN,Price(Code)+2);
}
//T_DeleteOrderByCode(Code,Type)委托撤單。Code:合約代碼(字符串)Type:0所有方向;1買開;2賣平;3賣開;4買平 返回0撤單發出成功,返回其它失敗
IF((BN>BN1 || Price(Code)<=T_BuyAvgPrice(Code)-LosePrice)&&BN>0)
{
T_DeleteOrderByCode(Code,2);
}
IF((SN>SN1 || Price(Code)>=T_SellAvgPrice(Code)+LosePrice)&&SN>0)
{
T_DeleteOrderByCode(Code,4);
}
}