到奇狐勝券首頁 奇狐社區論壇 購買奇狐勝券 試用奇狐勝券
 
論壇首頁 你可以在這裡編輯你的資料,查看短訊,訂閱主題和論壇參數等等 免費會員註冊 會員列表 論壇幫助 論壇日曆 論壇搜索 加入我的最愛 登出論壇  
奇狐社區論壇 : Powered by vBulletin version 2.3.0 奇狐社區論壇 > 指標評測 > TBS應用與問題交流 > 請版大如何修改......謝謝
  上一主題   下一主題
作者
主題 發表新主題    回覆主題
brandon
初級會員

註冊日期: Jul 2008
來  自:
文章數量: 18

請版大如何修改......謝謝

請教版大要如何修改......才能避免同根k棒同時擁有進場和平倉的訊號.....還有控價的問題......謝謝





//本公式不需套用於圖
//==============================================
//= 本範例設定運算的商品為上市股票和上櫃股票 =
//==============================================

//【設定計算的等級模式】單值
UMode:=1; {0.一般:採用內定基準價,量採單值決定,耗時較短}
{1.中階:支援自定基準價,量採單值決定,耗時中等}
{2.高階:支援自定基準價,量採數列決定,耗時較長}

//【設定適用的板塊】字串
//決定當前設定適用於那些板塊中的商品
適用板塊:='上市股票;上櫃股票';

//【交易訊號導入】數列
多進訊:=(close-ref(close,4))/ref(close,4)>=25/100;
多平訊:=CLOSE<MA(CLOSE,20);
多頭進:=多進訊; //多頭進場{0.無 1.進場} EnterLong
多頭平:=多平訊; //多頭平倉{0.無 1.平倉} ExitLong
多頭加:=C*0; //多頭加碼{0.無 1.加碼}
多頭減:=C*0; //多頭減碼{0.無 1.減碼}
空頭進:=C*0; //空頭進場{0.無 1.進場} EnterShort
空頭平:=C*0; //空頭平倉{0.無 1.平倉} ExitShort
空頭加:=C*0; //空頭加碼{0.無 1.加碼}
空頭減:=C*0; //空頭減碼{0.無 1.減碼}

//【設定進場訊號處理】單值
控連訊:=0; {0.連續進場訊號不再買進,自定加碼減碼訊號無效}
{1.連續進場訊號不再買進,自定加碼減碼訊號有效}
{2.連續進場訊號加碼買進,自定加碼減碼訊號無效}

//【設定加碼減碼過濾】單值
//若於進場點或平倉點, 加碼訊號和減碼訊號將被視為無訊號
//模式:{0.不過濾, -1.連續相鄰訊號僅保留首根, >0.過濾後面 N 個週期內的相同訊號}
加碼濾:=0; //加碼訊號過濾模式
減碼濾:=0; //減碼訊號過濾模式


//【設定交易價格】數列
//設置多方和空方之進場、平倉、強制平倉、加碼、減碼的交易價格
多控價:REFX(OPEN,1); //多方價格
空控價:REFX(OPEN,1); //空方價格

//【設定交易數量】單值or數列 {非零之正整數}
//一般模式和中階模式僅支援用單值來設定量
//要用數列來設定量,必須將計算等級設為高階模式

多進量:1; //多頭進場數量
多加量:1; //多頭加碼數量
多減量:1; //多頭減碼數量
空進量:多進量; //空頭進場數量
空加量:多加量; //空頭加碼數量
空減量:多減量; //空頭減碼數量

//【設定測試時段】單值
//需為奇狐專屬日期格式(自1900年以來的年月日)
//例如: 2008年03月25日要輸入 1080325 這數值 (20080325-19000000=1080325)
始日:=0; //若輸入零,會自動設為第一根K棒日期
終日:=0; //若輸入零,會自動設為最末根K棒日期

//【設定交易類別】單值
交易類:=1; {1.做多 2.做空 3.雙向}

//【設定平盤以下是否可以放空】單值
平下可空:=0; {0.不可空 1.可空}

//【設定最終倉位處理方式】單值
//※若評測之最終K棒為進場點,系統將視其為無效訊號
算終倉:=0; //評測之最終K棒有持倉且尚未平倉, 該回{0.不計收益 1.平倉計算收益}

//【設定商品每點價值、手續費、稅費】單值
tbsStkValue:=1000; //每點價值
tbsInFee:=0.1425; //正:多進空出手續費率(%) 負:多進空出手續費(元)
tbsInTax:=0; //正:多進空出多買空賣稅率(%) 負:多進空出稅費(元)
tbsOutFee:=0.1425; //正:多出空進手續費率(%) 負:多出空進手續費(元)
tbsOutTax:=0.3; //正:多出空進稅率(%) 負:多出空進稅費(元)

//【設定基準價】數列
//僅中階模式和高階模式支援本項中的設定
//一般模式會採用系統預設值(不受這裡設定的影響)
前控基價:O; //前控盈和前控損計算盈虧使用之基準價
後控基高價:H; //做空:後控盈和後控損計算盈虧使用之基準價
後控基低價:L; //做多:後控盈和後控損計算盈虧使用之基準價
後控基價:C; //未達控盈控損標準且尚未平倉結算時,會用此基準價計算當根K棒報酬

//【設定控盈控損】單值
//控盈衰率: 獲利後,平均盈收率減少達之前最高平均盈收率之 N% 時止利,若設為零值則不控盈
//控盈始率: 已連續 M 個週期的平均盈收率都達到 N% 以上時,才開始做控盈的動作
// M 為[控盈均週]設的數值
//控盈均週: 設定平均盈收率是採用盈收率之 N 個週期的特別均值來做計算(即設定M值)
//控損率: 與開倉價比較,虧損達 N% 以上時止損(若為零則不止損)
//強平週數: 開倉後達 N 個週期,無論盈虧均強制平倉(若為零則不強制)
//註:盈收率和平均盈收率之定義與算法,請詳見本系統手冊中的說明
多控盈衰率:=0;
多控盈始率:=0;
多控盈均週:=3; //多方M值
多控損率:=0;
多強平週數:=0;
空控盈衰率:=多控盈衰率;
空控盈始率:=多控盈始率;
空控盈均週:=多控盈均週; //空方M值
空控損率:=多控損率;
空強平週數:=多強平週數;

//=================================================================
//= 以下的程式碼用於傳遞前面的設定給 [TBS交易評測] 系統公式使用 =
//= 請絕對不要做任何的更動增刪,若有異動將導致評測無法正常運行 =
//=================================================================
多空訊多頭進 or barpos=0)*1000+(空頭進 or barpos=0)*2000;
多空訊:=多空訊+(多頭平 or barpos=0)*100+(空頭平 or barpos=0)*200;
多空訊:=多空訊+(多頭加 or barpos=0)*10+(空頭加 or barpos=0)*20;
多空訊:=多空訊+(多頭減 or barpos=0)*1+(空頭減 or barpos=0)*2;
tbsErrBlk:1 linethick0;
tbsSPos1:=1;
if STRRIGHT(適用板塊,1)<>';' then 適用板塊:=適用板塊+';';
while 1 do begin
tbsSPos2:=STRFIND(適用板塊,';',tbsSPos1);
if tbsSPos2=0 then break;
kk:=strmid(適用板塊,tbsSPos1,tbsSPos2-tbsSPos1);
if stkinblock(stklabel,strmid(適用板塊,tbsSPos1,tbsSPos2-tbsSPos1)) then begin
tbsErrBlk:=0; break;
end;
tbsSPos1:=tbsSPos2+1;
end;
多進量i:=strtonum(numtostr(多進量,0));
多加量i:=strtonum(numtostr(多加量,0));
多減量i:=strtonum(numtostr(多減量,0));
空進量i:=strtonum(numtostr(空進量,0));
空加量i:=strtonum(numtostr(空加量,0));
空減量i:=strtonum(numtostr(空減量,0));
tbsTmp:="TBS系統設置子公式#YEAR"(1,if(tbsErrBlk,-1,UMode),控連訊,加碼濾,減碼濾,多進量i,多加量i,多減量i,空進量i,空加量i,空減量i,始日,終日,交易類,平下可空,算終倉);
tbsTmp:="TBS系統設置子公式#YEAR"(2,tbsStkValue,tbsInFee,tbsInTax,tbsOutFee,tbsOutTax,多控盈衰率,多控盈始率,多控盈均週,多控損率,多強平週數,空控盈衰率,空控盈始率,空控盈均週,空控損率,空強平週數);
//=================================================================

向版主報告此篇 | 查IP位址
Old Post 2014-08-28 00:38
brandon 現在離線 點選這裡查看 brandon 的個人資料 點選這裡給 brandon 傳送一條短訊 查找更多關於 brandon 的文章 增加 brandon 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 17600

回覆: 請版大如何修改......謝謝

引用:
最初由 brandon 發表
請教版大要如何修改......才能避免同根k棒同時擁有進場和平倉的訊號.....還有控價的問題......謝謝
................略,,,,,,,,,,,,,,,,



那是您帶入的規則與買賣價的問題!!!
並非是程式如何修改的問題

您寫的這兩行:
多進訊:=(close-ref(close,4))/ref(close,4)>=25/100;
多平訊:=CLOSE<MA(CLOSE,20);

多進訊和多平訊會有在同一根K棒同時成立的狀況
同時要買又要賣,系統無法計算,故就會被系統警告

您寫的這兩行:
多控價:REFX(OPEN,1); //多方價格
空控價:REFX(OPEN,1); //空方價格

是取下一根開盤價,作為本根的進出價
然而該價,並不在本根K棒的價格範圍內
故系統無法受理

向版主報告此篇 | 查IP位址
Old Post 2014-08-28 09:09
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
全部時間均為台灣時間, 現在時間為20:43 發表新主題    回覆主題
  上一主題   下一主題
顯示可列印版本 | 訂閱此主題

論壇跳轉:
 

論壇規定:
你不可以發表新主題
你不可以回覆文章
你不可以上傳附件
你不可以編輯自己的文章
HTML語法禁止
vB 語法核准
表情符號核准
貼圖語法[IMG]核准
 

本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。

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

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.  聯絡我們