奇狐社區論壇 (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=15694)
由 AA0753 在 2011-06-13 10:11 發表:
引用:
最初由 cgjj 發表
麻煩把您最後修正的原碼完整貼出
這樣才能協助您唷
//【交易訊號導入】數列
diff:="macd.diff#min5";
dea:="macd.dea#min5";
m:="macd.macd#min5", ColorGreen , Linethick2;
m2:=ref(m,1), Colorred , Linethick2;
m3:=ref(m,2);
開盤:=time>084500;
現開:=time=090000;
收盤:=time=134500;
StSP:=barslast(time=090000);
macd轉上:=cross(m,m2);
macd轉下:=cross(m2,m);
DECK:=date<>ref(date,1);
DECKSP:=barslast(DECK);
量20:="vol.ma3#min5";
量10:="vol.ma2#min5";
量5:="vol.ma1#min5";
最小量:=MIN(量20,量10);
最小量:=MIN(最小量,量5);
出量:=cross(vol,量20*1.2) and time>=090000;
出量SP:=barslast(出量);
殺量:=出量 and REF(m,出量SP)<REF(m,出量SP+1) and time>=090000;
買量:=if(time>=090000,殺量 and sum(出量,DECKSP)>0 ,if(time=134500,0,0));
買量SP:=barslast(買量);
買訊:if(time>=090000,macd轉上 AND SUM(macd轉上,買量SP)=1 and sum(買量,DECKSP)>0,if(time=134500,0,0));
買訊SP:=barslast(買訊);
VERTLINE(收盤) linedot;
拉量:=出量 and REF(m,出量SP)>REF(m,出量SP+1) and time>=090000;
賣量:=if(time>=090000,拉量 and sum(拉量,DECKSP)>0 ,if(time=134500,0,0));
賣量SP:=barslast(賣量);
賣訊:if(time>=090000,macd轉下 AND SUM(macd轉下,賣量SP)=1 and sum(賣量,DECKSP)>0,if(time=134500,0,0));
賣訊SP:=barslast(賣訊);
////////////////////////////////////////////
買支:=if(買訊,LLV(L,10)-9,0);
買支:ref(買支,barslast(買支>0 or DECK));
PARTLINE(sum(買支>0,2)=2,買支),colorgreen;
賣壓:=if(賣訊,HHV(H,10)+9,0);
賣壓:ref(賣壓,barslast(賣壓>0 or DECK));
PARTLINE(sum(賣壓>0,2)=2,賣壓),colorwhite;
支撐:=REF(L,barslast(ref(l,1)>ref(L,2) and ref(L,2)>ref(L,3) AND L>REF(L,2))+2)-5;
支撐:ref(支撐,barslast(支撐>0 or DECK));
壓力:=REF( H,barslast(ref(h,1)<ref(h,2) AND H<REF(H,2) AND ref(h,3)<ref(h,2))+2)+5;
壓力:ref(壓力,barslast(壓力>0 or DECK));
////////////////////////////////////////////////////////////
CKU2:=(H>賣壓 or barpos=0)-(L<買支 or barpos=0);
CKU3:=(H>壓力 or barpos=0)-(L<支撐 or barpos=0);
強平:=Time=134500;
買1:=買訊 and 強平=0 or barpos=0;
賣1:=賣訊 and 強平=0 or barpos=0;
買賣:=買1-賣1; CC:=C;
進出:C*0 NOAXIS; 多空:=0;
for i=1 to datacount do begin
if 強平[i] then begin
if 多空<>0 then begin
進出[i]:=SGN(多空)*-4; 多空:=0; 強平價:=CC[i];
end;
end else begin
if 買賣[i]<>0 and 買賣[i]<>SGN(多空) then begin
多空:=買賣[i]; 進出[i]:=多空; 進價:=CC[i];
end else if 多空<>0 then begin
if CKU2[i]=-多空 then begin
進出[i]:=-多空*2; 多空:=CKU2[i]*2;
end else if CKU3[i]*2=-多空 then begin
進出[i]:=CKU3[i]*3; 多空:=0;
end;
end;
end;
end;
多頭進:=進出=1 or 進出=2; //多頭進場{0.無 1.進場} EnterLong
多頭平:=進出=-1 or 進出=-2 or 進出=-3 or 進出=-4; //多頭平倉{0.無 1.平倉} ExitLong
多頭加:=C*0; //多頭加碼{0.無 1.加碼}
多頭減:=C*0; //多頭減碼{0.無 1.減碼}
空頭進:=進出=-1 or 進出=-2; //空頭進場{0.無 1.進場} EnterShort
空頭平:=進出=1 or 進出=2 or 進出=3 or 進出=4 ; //空頭平倉{0.無 1.平倉} ExitShort
空頭加:=C*0; //空頭加碼{0.無 1.加碼}
空頭減:=C*0; //空頭減碼{0.無 1.減碼}
//【設定進場訊號處理】單值
控連訊:=1; {0.連續進場訊號不再買進,自定加碼減碼訊號無效}
{1.連續進場訊號不再買進,自定加碼減碼訊號有效}
{2.連續進場訊號加碼買進,自定加碼減碼訊號無效}
//【設定加碼減碼過濾】單值
//若於進場點或平倉點, 加碼訊號和減碼訊號將被視為無訊號
//模式:{0.不過濾, -1.連續相鄰訊號僅保留首根, >0.過濾後面 N 個週期內的相同訊號}
加碼濾:=0; //加碼訊號過濾模式
減碼濾:=0; //減碼訊號過濾模式
//【設定交易價格】數列
//設置多方和空方之進場、平倉、強制平倉、加碼、減碼的交易價格
多控價:=c;
多控價:if( 進出=1,c ,if( 進出=-1,c,if( 進出=-2,買支,if( 進出=2,賣壓,if( 進出=-3,支撐,if( 進出=-4,c , 多控價))))));
空控價:=c;
空控價:if( 進出=1,c ,if( 進出=-1,c,if( 進出=2,賣壓,if( 進出=-2,買支,if( 進出=3,壓力,if( 進出=4,c ,空控價))))));
由 cgjj 在 2011-06-13 11:57 發表:
我這看不到, 您講的狀況唷(位置對不上)
2011/3/4 time=100500 , 104000 , 121000
2011/4/22 時間 131000
MACD 的參數您是用多少呢?
(是原來內建的MACD嗎? 有無更動過?)
由 AA0753 在 2011-06-13 12:14 發表:
引用:
最初由 cgjj 發表
我這看不到, 您講的狀況唷(位置對不上)
2011/3/4 time=100500 , 104000 , 121000
2011/4/22 時間 131000
MACD 的參數您是用多少呢?
(是原來內建的MACD嗎? 有無更動過?)
內建 無更動
狀況一 每次指要當天第一筆是買單 跌破買支時 都不會出現進出=-2
狀況二 2011/2/22 時間 131000 實際訊號應該在130500
所以出現控價基價超出範圍
由 cgjj 在 2011-06-13 12:27 發表:
引用:
最初由 AA0753 發表
內建 無更動
狀況一 每次指要當天第一筆是買單 跌破買支時 都不會出現進出=-2
狀況二 2011/2/22 時間 131000 實際訊號應該在130500
所以出現控價基價超出範圍
仍是對不上您講的位置唷
MACD 您拉到圖面跑的預設參數值是多少?(三個參數)
狀況一 的時間請標示一下, 我這比較好幫您核對
狀況二 請再次確認, 是 2011/2/22 還是 2011/4/22 時間是否正確?
另外, 最好把狀況一&狀況二 也貼圖一下
此外還有 vol 用的參個參數值
由 AA0753 在 2011-06-13 13:51 發表:
引用:
最初由 cgjj 發表
仍是對不上您講的位置唷
MACD 您拉到圖面跑的預設參數值是多少?(三個參數)
狀況一 的時間請標示一下, 我這比較好幫您核對
狀況二 請再次確認, 是 2011/2/22 還是 2011/4/22 時間是否正確?
另外, 最好把狀況一&狀況二 也貼圖一下
此外還有 vol 用的參個參數值
狀況一 2011/6/9 時間104500
狀況二 2011/2/22
VOL的參數 5 10 20
macd 26 12 9
由 AA0753 在 2011-06-13 13:53 發表:
引用:
最初由 AA0753 發表
狀況一 2011/6/9 時間104500
狀況二 2011/2/22
VOL的參數 5 10 20
macd 26 12 9
圖傳了好幾次都傳不上
由 cgjj 在 2011-06-13 17:28 發表:
引用:
最初由 AA0753 發表
圖傳了好幾次都傳不上
上傳的圖片
寬和高都要在 999 之內, 大小需在 512KB 內
圖檔格式可為 gif 或 jpg
由 cgjj 在 2011-06-13 17:54 發表:
引用:
最初由 AA0753 發表
狀況一 2011/6/9 時間104500
狀況二 2011/2/22
VOL的參數 5 10 20
macd 26 12 9
一個一個來處理吧
先看狀況一
您說的狀況一是:
發現當天第一個訊號如果是買1的時候
遇到賣2的情況時 進出不會=-2
台當月 5分鐘線 2011/6/9 104500
我看到的 6/9 當日是
新的一天當然開始是空手
首先碰上的是 09:40 賣1 成立 (進出=-1)
再接著是 10:15 買1 成立 (進出=1)
6/9 當日並沒有您說的 當天第一個訊號是買1
104500 雖然 CKU3 有成立 (其是買3, 並非買2或賣2)
形成的狀況是 買1 ==> 買3 當然不會有動作囉
由 AA0753 在 2011-06-13 20:34 發表:
引用:
最初由 cgjj 發表
一個一個來處理吧
先看狀況一
您說的狀況一是:
發現當天第一個訊號如果是買1的時候
遇到賣2的情況時 進出不會=-2
台當月 5分鐘線 2011/6/9 104500
我看到的 6/9 當日是
新的一天當然開始是空手
首先碰上的是 09:40 賣1 成立 (進出=-1)
再接著是 10:15 買1 成立 (進出=1)
6/9 當日並沒有您說的 當天第一個訊號是買1
104500 雖然 CKU3 有成立 (其是買3, 並非買2或賣2)
形成的狀況是 買1 ==> 買3 當然不會有動作囉
[IMG]
我不是用KD喔
請用原碼套進去
由 AA0753 在 2011-06-13 21:06 發表:

由 AA0753 在 2011-06-13 21:08 發表:
[IMG]http://www.xun6.com/file/daa736742/01.jpg.html]下載文件 01.jpg (158.83 KB)[/url][/IMG]
由 cgjj 在 2011-06-14 08:41 發表:
引用:
最初由 AA0753 發表
[IMG]
我不是用KD喔
請用原碼套進去
觀念要先釐清一下
副圖是什麼公式, 是不會影響到主圖指標的運算的
因為兩者互不關聯
副圖就算是 MACD 您把參數亂調
也不會影響主圖公式去呼叫 MACD
除非以下兩條件同時具備時, 才可能會去影響主圖公式
1.您公式呼叫 MACD 未指定參數(採預設參數)
2.調整副圖的MACD參數後, 又將該參數[設為預設參數] (包含修改公式)
通常公式去引用其他公式, 都會指定參數的
不去指定
若不小心動到參數並設為預設參數, 會讓您錯的渾然不知
有正確之觀念, 才能校對公式是否正常
由 AA0753 在 2011-06-14 09:01 發表:
引用:
最初由 cgjj 發表
觀念要先釐清一下
副圖是什麼公式, 是不會影響到主圖指標的運算的
因為兩者互不關聯
副圖就算是 MACD 您把參數亂調
也不會影響主圖公式去呼叫 MACD
除非以下兩條件同時具備時, 才可能會去影響主圖公式
1.您公式呼叫 MACD 未指定參數(採預設參數)
2.調整副圖的MACD參數後, 又將該參數[設為預設參數] (包含修改公式)
通常公式去引用其他公式, 都會指定參數的
不去指定
若不小心動到參數並設為預設參數, 會讓您錯的渾然不知
有正確之觀念, 才能校對公式是否正常
那麻煩看一下6/10 122500
由 cgjj 在 2011-06-14 09:33 發表:
引用:
最初由 AA0753 發表
那麻煩看一下6/10 122500
台當月 Min5 6/10
102500 買1 成立, 進出 = 1
122500 也是買1 成立, 進出 = 0 (沒產生動作)
因為自 102500 至 122500 仍是維持買1的狀況
由 AA0753 在 2011-06-14 10:26 發表:
引用:
最初由 cgjj 發表
台當月 Min5 6/10
102500 買1 成立, 進出 = 1
122500 也是買1 成立, 進出 = 0 (沒產生動作)
因為自 102500 至 122500 仍是維持買1的狀況
但是122000應為-2 123500應為-2