![]() |
總頁數 (2): « 1 [2] 在這個頁面顯示本主題全部的 25 個文章 |
奇狐社區論壇 (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=8887)
引用:
最初由 cgjj 發表
問題不在訊號過濾, 而是在於邏輯規則
EnterLong:L<=WW;
ExitLong:L<=WW-20
按這規則
ExitLong 成立時, EnterLong 必定成立
這就是問題所在
兩組的中間加了Exit中斷點,EnterLong、ExitLong就可以正常運作
兩組一起跑就不行,真奇怪~
EnterLong:L<=WW;
ExitLong:L<=WW-20;
Exit;
EnterShort:H>=SS;
ExitShort:H>=SS+20;
另外發現還有個問題,EnetrLong已經進場了,而ExitLong還沒出現平倉訊號,
下一K遇到條件符合時,EnterLong又出現1,等於又作了第二筆,
請教有什麼方法可以讓ExitLong還沒出現1(平倉訊號)之前EnterLong不要出現?
請問有解嗎? 還是真的無解?
請總版主或其他先進給新手指導一下
真的感謝!
看看這結果是否為您要的
將
EnterLong:L<=WW;
ExitLong:L<=WW-20
改為
ExitLong:L<=WW-20
EnterLong:L<=WW and ExitLong=0;
Short 的作法亦同
Re:請教有什麼方法可以讓ExitLong還沒出現1(平倉訊號)之前EnterLong不要出現?
答案就在本主題文章第二篇
引用:
最初由 cgjj 發表
看看這結果是否為您要的
將
EnterLong:L<=WW;
ExitLong:L<=WW-20
改為
ExitLong:L<=WW-20
EnterLong:L<=WW and ExitLong=0;
Short 的作法亦同
Re:請教有什麼方法可以讓ExitLong還沒出現1(平倉訊號)之前EnterLong不要出現?
答案就在本主題文章第二篇
引用:
最初由 JIL 發表
謝謝總版主,但改了還是一樣沒訊號出來,EXIT中斷就可以。
引用:
最初由 cgjj 發表
Short 有跟著改嗎?
若仍會
那麼代表你 Exit 之後的程式會影響前面的計算結果
後續應該還有其他程式碼吧?
不然就是訊號疊在一起了
引用:
最初由 JIL 發表
後面只加了您寫的過濾訊號那段:
CK:=ENTERLONG-EXITLONG;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK<>ref(CK,1) or barpos=lbound(CK),CK,0);
ENTERLONG:=CK=1;
EXITLONG:=CK=-1;
但是拿掉這段就可以跑了,怪~
引用:
最初由 cgjj 發表
您把K線圖縮到最小看看, 應該就可看到嚕
這樣
把K線圖縮到最小
貼張沒加過濾的訊號圖
再一貼張有加過濾的訊號圖
來看看吧
我用新的邏輯把公式重寫,寫到這裡卡住,
奇狐好像沒有提供流程控制的If或Select Case,寫不出來...
我想寫的其實不複雜,往上觸轉強作空,停損20點,
觸停損反手作多,停損設轉強,
雙巴當天就不再進場,若有獲利也不再進場;
反之往下觸轉弱作多亦然。
用在日K上,因為日K不好測試,所以我寫60分K來測試。
作多:O>轉弱60 and C<=O;
作空:O<轉強60 and C>=O;
多進:IF(L<=轉弱60,1,0);
多出:IF(L<=轉弱60-20,1,0);
空進:IF(H>=轉強60,1,0);
空出:IF(H>=轉強60+20,1,0);
多進倉:IF(作多,多進,0);
多平倉:IF(多出,多出,0);
多損反手空:IF(多進倉+多平倉>=2,3,0);
停手:IF(多損反手空>=3,4,0);
接下來不知道該如何讓奇狐中止公式判斷...
希望有人可以幫忙新手,先說謝謝!
引用:
最初由 JIL 發表
我用新的邏輯把公式重寫,寫到這裡卡住,
奇狐好像沒有提供流程控制的If或Select Case,寫不出來...
我想寫的其實不複雜,往上觸轉強作空,停損20點,
觸停損反手作多,停損設轉強,
雙巴當天就不再進場,若有獲利也不再進場;
反之往下觸轉弱作多亦然。
用在日K上,因為日K不好測試,所以我寫60分K來測試。
作多:O>轉弱60 and C<=O;
作空:O<轉強60 and C>=O;
多進:IF(L<=轉弱60,1,0);
多出:IF(L<=轉弱60-20,1,0);
空進:IF(H>=轉強60,1,0);
空出:IF(H>=轉強60+20,1,0);
多進倉:IF(作多,多進,0);
多平倉:IF(多出,多出,0);
多損反手空:IF(多進倉+多平倉>=2,3,0);
停手:IF(多損反手空>=3,4,0);
接下來不知道該如何讓奇狐中止公式判斷...
希望有人可以幫忙新手,先說謝謝!
全部時間均為台灣時間, 現在時間為15:31 | 總頁數 (2): « 1 [2] 在這個頁面顯示本主題全部的 25 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.