奇狐社區論壇
在這個頁面顯示本主題全部的 11 個文章

奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 『求助』當沖交易系統寫法[多空交易範例] (http://www.chiefox.com.tw/bbs/showthread.php?threadid=13276)


由 estockcat 在 2010-03-23 15:22 發表:

『求助』當沖交易系統寫法

又要麻煩版大了。謝謝∼

引用:
--------------------------------------------------------------------------------
最初由 L0123 發表

版大解答:
原碼:--------------------------------------------------------------------------------
強出:=ACK0 or barpos=0;
多進:=AB01 or barpos=0;
多出1:=ABZ1 or barpos=0;
多出2:=ABZ2 or barpos=0;
空進:=AS01 or barpos=0;
空出1:=ASZ1 or barpos=0;
空出2:=ASZ1 or barpos=0;

進出:C*0;
多空:=0; //1.多 -1.空 0.無
for i = 1 to datacount do begin
if 多空=0 and 強出[i]=0 then begin
多空:=多進[i]-空進[i]; 進出[i]:=多空;
end else if 多空<>0 then begin
if 強出[i] then begin
進出[i]:=多空*4; 多空:=0;
end else begin
if 多空=多出1[i] or 多空=-空出1[i] then begin
進出[i]:=多空*2; 多空:=0;
end else if 多空=多出2[i] or 多空=-空出2[i] then begin
進出[i]:=多空*3; 多空:=0;
end else if 多空=空進[i] or 多空=-多進[i] then begin
進出[i]:=多空*5; 多空:=-多空;
end;
end;
end;
end;

--------------------------------------------------------------------------------


[進出] 這變數值代表意義如下:
1.多進, 2.多停利, 3.多控損, 4.多強制 5.多轉空
-1.空進, -2.空停利, -3.空控損, -4.空強制 -5.空轉多

//關鍵字:交易系統範例


__________________

請教版大:
要再將分別將多方利損及空方利損加入?該如何撰寫?
如何將以下的控利損方式分別加入上面的多方及空方平倉的條件內?


進出:C*0 ;
多空:=0; //1.多 -1.空 0.無
控利:=N8; 進價:=0; CC:=C;控損:=N9;
進向:=多進-空進;
盈虧:c*0 linethick;
利點:c*0 linethick0;
for i= 1 to datacount do begin
if 多空=0 then begin
多空:=進向[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 多空<>進向[i] and 進向[i]<>0 then begin
進出[i]:=-多空*3; 多空:=-多空; 進價:=CC[i];
end else if 盈虧[i]>=控利 then begin
進出[i]:=多空*2; 多空:=0;利點[i]:=CC[i];
end else if 盈虧[i]<控損*-1 then begin
進出[i]:=多空*4; 多空:=0;

end;
end;
end;


由 cgjj 在 2010-03-24 15:44 發表:

回覆: 『求助』當沖交易系統寫法

引用:
最初由 estockcat 發表
又要麻煩版大了。謝謝∼

引用:
--------------------------------------------------------------------------------
最初由 L0123 發表

版大解答:
原碼:--------------------------------------------------------------------------------
強出:=ACK0 or barpos=0;
多進:=AB01 or barpos=0;
多出1:=ABZ1 or barpos=0;
多出2:=ABZ2 or barpos=0;
空進:=AS01 or barpos=0;
空出1:=ASZ1 or barpos=0;
空出2:=ASZ1 or barpos=0;

進出:C*0;
多空:=0; //1.多 -1.空 0.無
for i = 1 to datacount do begin
if 多空=0 and 強出[i]=0 then begin
多空:=多進[i]-空進[i]; 進出[i]:=多空;
end else if 多空<>0 then begin
if 強出[i] then begin
進出[i]:=多空*4; 多空:=0;
end else begin
if 多空=多出1[i] or 多空=-空出1[i] then begin
進出[i]:=多空*2; 多空:=0;
end else if 多空=多出2[i] or 多空=-空出2[i] then begin
進出[i]:=多空*3; 多空:=0;
end else if 多空=空進[i] or 多空=-多進[i] then begin
進出[i]:=多空*5; 多空:=-多空;
end;
end;
end;
end;

--------------------------------------------------------------------------------


[進出] 這變數值代表意義如下:
1.多進, 2.多停利, 3.多控損, 4.多強制 5.多轉空
-1.空進, -2.空停利, -3.空控損, -4.空強制 -5.空轉多

//關鍵字:交易系統範例


__________________

請教版大:
要再將分別將多方利損及空方利損加入?該如何撰寫?
如何將以下的控利損方式分別加入上面的多方及空方平倉的條件內?


進出:C*0 ;
多空:=0; //1.多 -1.空 0.無
控利:=N8; 進價:=0; CC:=C;控損:=N9;
進向:=多進-空進;
盈虧:c*0 linethick;
利點:c*0 linethick0;
for i= 1 to datacount do begin
if 多空=0 then begin
多空:=進向[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 多空<>進向[i] and 進向[i]<>0 then begin
進出[i]:=-多空*3; 多空:=-多空; 進價:=CC[i];
end else if 盈虧[i]>=控利 then begin
進出[i]:=多空*2; 多空:=0;利點[i]:=CC[i];
end else if 盈虧[i]<控損*-1 then begin
進出[i]:=多空*4; 多空:=0;

end;
end;
end;



上面那段程式, 來自這裡
http://www.chiefox.com.tw/bbs/showt...&threadid=12376
其本身已有停利控損的機制帶入
與後段狀況是非常不一樣的

設計的出發考量點, 兩段並不相同
不建議您這樣來拼湊修改


由 estockcat 在 2010-03-24 17:12 發表:

版大,抱歉!沒講清楚。
想法如下:
本身已先分出做多、做空區域:(不會多空區域重疊,但有可能多出後翻空或空出後翻多)
做多進場條件:
ACK0:=TIME>=134101 or BARPOS=0; //尾盤不留單,強制出場。
AB01:=條件一 or條件二; //多進。
ABZ1:=條件三 or條件四; //多賣出。,出場後保持0倉位,必須等多進或空進條件。
做空進場條件:
AS01:=條件七 or條件八; //空進。
ASZ1:=條件九 or條件十; //空賣出場,出場後保持0倉位,必須等多進或空進條件。

再加上30點停損、60點停利

請教版大,該如何撰寫?謝謝!


由 cgjj 在 2010-03-25 16:20 發表:

引用:
最初由 estockcat 發表
版大,抱歉!沒講清楚。
想法如下:
本身已先分出做多、做空區域:(不會多空區域重疊,但有可能多出後翻空或空出後翻多)
做多進場條件:
ACK0:=TIME>=134101 or BARPOS=0; //尾盤不留單,強制出場。
AB01:=條件一 or條件二; //多進。
ABZ1:=條件三 or條件四; //多賣出。,出場後保持0倉位,必須等多進或空進條件。
做空進場條件:
AS01:=條件七 or條件八; //空進。
ASZ1:=條件九 or條件十; //空賣出場,出場後保持0倉位,必須等多進或空進條件。

再加上30點停損、60點停利

請教版大,該如何撰寫?謝謝!



原碼:

強出
:=ACK0 or barpos=0;
多進:=AB01 and 強出=or barpos=0;
多出:=ABZ1 or barpos=0;
空進:=AS01 and 強出=or barpos=0;
空出:=ASZ1 or barpos=0;
進場:=多進-空進;
出場:=多出-空出;
控損:=30控利:=60
進價:=0CC:=C;
多空:=0//1.多 -1.空 0.無
進出:C*0 NOAXIS;
盈虧:C*0 linethick;
for 
1 to datacount do begin
  
if 多空=0 then begin
    多空
:=進場[i]; 進出[i]:=多空;
    if 
多空<>0 then 進價:=CC[i];
  
end else if 多空<>0 then begin
    盈虧
[i]:=(CC[i]-進價)*多空;
    if 
強出[ithen begin
      進出
[i]:=多空*5多空:=0;
    
end else if 多空=出場[ithen begin
      進出
[i]:=多空*2多空:=0;
    
end else if 盈虧[i]>=控利 then begin
      進出
[i]:=多空*3多空:=0;
    
end else if 盈虧[i]<=-控損 then begin
      進出
[i]:=多空*4多空:=0;
    
end;
  
end;
end;



[進出] 這變數值代表意義如下:
1.多單進場, 2.多單出場, 3.多控利出, 4.多控損出
-1.空單進場,-2.空單出場,-3.空控利出, -4.空控損出

//關鍵字:交易系統範例


由 estockcat 在 2010-03-25 18:23 發表:

版大,謝謝你幫忙∼
但請教一下。如果訊號有多出並翻空1轉成-1的情況。也就是多出的訊號出現跟空進的訊號是一起的(空出也有可能會和多進一起出現)。會不會有問題?


由 cgjj 在 2010-03-26 15:37 發表:

引用:
最初由 estockcat 發表
版大,謝謝你幫忙∼
但請教一下。如果訊號有多出並翻空1轉成-1的情況。也就是多出的訊號出現跟空進的訊號是一起的(空出也有可能會和多進一起出現)。會不會有問題?



會有問題
這樣多空區域就重疊一根K棒了
而非您前面說的 "不會多空區域重疊"


由 estockcat 在 2010-03-27 19:21 發表:

引用:
最初由 cgjj 發表
會有問題
這樣多空區域就重疊一根K棒了
而非您前面說的 "不會多空區域重疊"



版大,那該如何寫?
就是可以多翻空(空翻多)並加上停損停利。
1,多進後─>可以賣出訊號平倉(停利或停損)。也可以空進。
2,空進後─>可以回補訊號平倉(停利或停損)。,也可以多進。
3,平倉(停利或停損)。後─>等待下次多進或空進的訊號。


由 cgjj 在 2010-03-29 13:20 發表:

引用:
最初由 estockcat 發表
版大,那該如何寫?
就是可以多翻空(空翻多)並加上停損停利。
1,多進後─>可以賣出訊號平倉(停利或停損)。也可以空進。
2,空進後─>可以回補訊號平倉(停利或停損)。,也可以多進。
3,平倉(停利或停損)。後─>等待下次多進或空進的訊號。



以收盤價進場和出場嗎?
若是, 可想想, 既是當沖
前一根 Close 和當根 Open 只差一個 Tick
將原來進場訊號, 改為用隔根開盤價進場, 出場維持當根 Close
就不會有重疊了呀


由 sync 在 2012-06-30 02:33 發表:

引用:
最初由 cgjj 發表
會有問題
這樣多空區域就重疊一根K棒了
而非您前面說的 "不會多空區域重疊"



版大您好:
有點不太懂意思,依上述源碼,無法從1.多單進場->-1.空單進場嗎(相反亦同)?多單進場之後,若符合空單進場條件無法多單平倉並反手放空嗎?

還是您的意思是說多單進場條件跟空單進場條件出現在同一根K棒才不行?

如果是在交易系統編寫公式:
ENTERLONG:多進;
ENTERSHORT:空進;
這樣是否就可以持單從多進-->空進?
也就是持單從+1(多1口)-2(空2口) = -1(空1口)?

謝謝!!!


由 sync 在 2012-06-30 02:39 發表:

引用:
最初由 cgjj 發表
以收盤價進場和出場嗎?
若是, 可想想, 既是當沖
前一根 Close 和當根 Open 只差一個 Tick
將原來進場訊號, 改為用隔根開盤價進場, 出場維持當根 Close
就不會有重疊了呀



請問這個方式用交易系統公式編輯介入點:進場訊號選擇用次週期開盤價進場, 出場選擇當根 Close ,這樣就可以了嗎?

還是說必須從公式語法之中指定才有效?

謝謝!!!


由 cgjj 在 2012-07-02 10:04 發表:

引用:
最初由 sync 發表
請問這個方式用交易系統公式編輯介入點:進場訊號選擇用次週期開盤價進場, 出場選擇當根 Close ,這樣就可以了嗎?

還是說必須從公式語法之中指定才有效?

謝謝!!!



前面討論的 "當沖交易系統"
並不適合用在系統內建的 "交易系統公式" 之中

因為它已經自行控制很多東西


全部時間均為台灣時間, 現在時間為15:01
在這個頁面顯示本主題全部的 11 個文章


Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.