![]() |
在這個頁面顯示本主題全部的 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)
『求助』當沖交易系統寫法
又要麻煩版大了。謝謝∼
引用:
--------------------------------------------------------------------------------
最初由 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;
回覆: 『求助』當沖交易系統寫法
引用:
最初由 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;
版大,抱歉!沒講清楚。
想法如下:
本身已先分出做多、做空區域:(不會多空區域重疊,但有可能多出後翻空或空出後翻多)
做多進場條件:
ACK0:=TIME>=134101 or BARPOS=0; //尾盤不留單,強制出場。
AB01:=條件一 or條件二; //多進。
ABZ1:=條件三 or條件四; //多賣出。,出場後保持0倉位,必須等多進或空進條件。
做空進場條件:
AS01:=條件七 or條件八; //空進。
ASZ1:=條件九 or條件十; //空賣出場,出場後保持0倉位,必須等多進或空進條件。
再加上30點停損、60點停利
請教版大,該如何撰寫?謝謝!
引用:
最初由 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 強出=0 or barpos=0;
多出:=ABZ1 or barpos=0;
空進:=AS01 and 強出=0 or barpos=0;
空出:=ASZ1 or barpos=0;
進場:=多進-空進;
出場:=多出-空出;
控損:=30; 控利:=60;
進價:=0; CC:=C;
多空:=0; //1.多 -1.空 0.無
進出:C*0 NOAXIS;
盈虧:C*0 linethick;
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] then begin
進出[i]:=多空*5; 多空:=0;
end else if 多空=出場[i] then 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轉成-1的情況。也就是多出的訊號出現跟空進的訊號是一起的(空出也有可能會和多進一起出現)。會不會有問題?
引用:
最初由 estockcat 發表
版大,謝謝你幫忙∼
但請教一下。如果訊號有多出並翻空1轉成-1的情況。也就是多出的訊號出現跟空進的訊號是一起的(空出也有可能會和多進一起出現)。會不會有問題?
引用:
最初由 cgjj 發表
會有問題
這樣多空區域就重疊一根K棒了
而非您前面說的 "不會多空區域重疊"
引用:
最初由 estockcat 發表
版大,那該如何寫?
就是可以多翻空(空翻多)並加上停損停利。
1,多進後─>可以賣出訊號平倉(停利或停損)。也可以空進。
2,空進後─>可以回補訊號平倉(停利或停損)。,也可以多進。
3,平倉(停利或停損)。後─>等待下次多進或空進的訊號。
引用:
最初由 cgjj 發表
會有問題
這樣多空區域就重疊一根K棒了
而非您前面說的 "不會多空區域重疊"
引用:
最初由 cgjj 發表
以收盤價進場和出場嗎?
若是, 可想想, 既是當沖
前一根 Close 和當根 Open 只差一個 Tick
將原來進場訊號, 改為用隔根開盤價進場, 出場維持當根 Close
就不會有重疊了呀
引用:
最初由 sync 發表
請問這個方式用交易系統公式編輯介入點:進場訊號選擇用次週期開盤價進場, 出場選擇當根 Close ,這樣就可以了嗎?
還是說必須從公式語法之中指定才有效?
謝謝!!!
全部時間均為台灣時間, 現在時間為15:01 | 在這個頁面顯示本主題全部的 11 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.