![]() |
在這個頁面顯示本主題全部的 6 個文章 |
奇狐社區論壇 (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=12630)
請教各位前輩.........
請教各位前輩,如何讓 "停利1"."停利2"條件成立後,一直保持狀態直到另一"EMA1和EMA2"交叉出現:
EMA1:=EMA(C,5);
EMA2:=EMA(C,60);
停利1:=if(EMA1>EMA2,C-REF(C,(BARSSINCE(EMA1>EMA2))),0) ;
停利2:= if(EMA1<EMA2,REF(C,(BARSSINCE(EMA1<EMA2)))-C,0) ;
ck:=if(EMA1>EMA2,1,0);
ck:=if(EMA1>EMA2 and (停利1>20),0,ck);
ck:=if(EMA1<EMA2,-1,CK);
ck:=if(EMA1<EMA2 and (停利2>20),0,ck);
StickLine (ck=1,-1,1,7,0),Colorred;
StickLine (ck=-1,-1,1,7,0),Colorgreen;
StickLine (ck=0,-1,1,7,0),Coloryellow;
-----------------------------------------------------------------------------------------------
若使用
A1:=ref(停利1,BARSSINCE(停利1>20)) 來保持狀態,
則下次EMA1和EMA2剛交叉上來,停利1尚未>20,就一直維持1了
回覆: 請教各位前輩.........
引用:
最初由 trtc516 發表
請教各位前輩,如何讓 "停利1"."停利2"條件成立後,一直保持狀態直到另一"EMA1和EMA2"交叉出現:
EMA1:=EMA(C,5);
EMA2:=EMA(C,60);
停利1:=if(EMA1>EMA2,C-REF(C,(BARSSINCE(EMA1>EMA2))),0) ;
停利2:= if(EMA1<EMA2,REF(C,(BARSSINCE(EMA1<EMA2)))-C,0) ;
ck:=if(EMA1>EMA2,1,0);
ck:=if(EMA1>EMA2 and (停利1>20),0,ck);
ck:=if(EMA1<EMA2,-1,CK);
ck:=if(EMA1<EMA2 and (停利2>20),0,ck);
StickLine (ck=1,-1,1,7,0),Colorred;
StickLine (ck=-1,-1,1,7,0),Colorgreen;
StickLine (ck=0,-1,1,7,0),Coloryellow;
-----------------------------------------------------------------------------------------------
若使用
A1:=ref(停利1,BARSSINCE(停利1>20)) 來保持狀態,
則下次EMA1和EMA2剛交叉上來,停利1尚未>20,就一直維持1了
感謝版主大大.................
感謝大大........
因為我是用30秒圖做當沖,所以開盤就是歷史資料第1根,所以用BARSSINCE
(還是要用barslast???)
我的思維是:
假設開盤後,EMA1>EMA2,則作買入動作 (ck:=if(EMA1>EMA2,1,0);(
當獲利超過20點,我就停利平倉
(ck:=if(EMA1>EMA2 and (停利1>20),0,ck);)
直到EMA1<EMA2,則作賣空動作(ck:=if(EMA1<EMA2,-1,CK);)
獲利20點就平倉(ck:=if(EMA1<EMA2 and (停利2>20),0,ck);)
小弟碰到的問題是,當獲利20點平倉後,價格又下來使得停利1低於20點時,買訊(空訊)又會出現, (ck:=if(EMA1>EMA2 and (停利1>20),0,ck);)()停利1<20則CK=CK=if(EMA1>EMA2,1,0)=1又再買入..........
有什麼方法,可讓"停利1>20成立後CK=0"一直維持到EMA1<EMA2 ,不管期間停利1>20, 停利1<20 上上下下............
因為小弟要用自動下單機下單,所以,輸出CK=1表買多1口,輸出CK=0
,表平倉,輸出CK=-1,表空單1口
回覆: 感謝版主大大.................
引用:
最初由 trtc516 發表
感謝大大........
因為我是用30秒圖做當沖,所以開盤就是歷史資料第1根,所以用BARSSINCE
(還是要用barslast???)
我的思維是:
假設開盤後,EMA1>EMA2,則作買入動作 (ck:=if(EMA1>EMA2,1,0);(
當獲利超過20點,我就停利平倉
(ck:=if(EMA1>EMA2 and (停利1>20),0,ck);)
直到EMA1<EMA2,則作賣空動作(ck:=if(EMA1<EMA2,-1,CK);)
獲利20點就平倉(ck:=if(EMA1<EMA2 and (停利2>20),0,ck);)
小弟碰到的問題是,當獲利20點平倉後,價格又下來使得停利1低於20點時,買訊(空訊)又會出現, (ck:=if(EMA1>EMA2 and (停利1>20),0,ck);)()停利1<20則CK=CK=if(EMA1>EMA2,1,0)=1又再買入..........
有什麼方法,可讓"停利1>20成立後CK=0"一直維持到EMA1<EMA2 ,不管期間停利1>20, 停利1<20 上上下下............
因為小弟要用自動下單機下單,所以,輸出CK=1表買多1口,輸出CK=0
,表平倉,輸出CK=-1,表空單1口
原碼:
EMA1:=EMA(C,5);
EMA2:=EMA(C,60);
多:=cross(EMA1,EMA2);
空:=cross(EMA2,EMA1);
多SP:=BARSLAST(多);
空SP:=BARSLAST(空);
多利:=c-ref(c,多SP+1) linethick;
空利:ref(c,空SP+1)-c linethick;
多停利:=EMA1>EMA2 and 多利>20;
多停利:=多停利 and sum(多停利,多SP)=1;
空停利:=EMA1<EMA2 and 空利>20;
空停利:=空停利 and sum(空停利,空SP)=1;
CK:多-空+多停利*2-空停利*2;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK>1 or CK<-1,0,CK);
非常.非常.非常感謝版主大大!!
非常.非常.非常感謝版主大大!!
終於解決停利的問題了,
不好意思!!再請教如何解決開盤初期無訊號的問題
EMA1:=EMA(C,5);
EMA2:=EMA(C,60);
多:=cross(EMA1,EMA2);
空:=cross(EMA2,EMA1);
多SP:=BARSLAST(多);
空SP:=BARSLAST(空);
多利:=c-ref(c,多SP+1) linethick;
空利:ref(c,空SP+1)-c linethick;
多停利:=EMA1>EMA2 and 多利>20;
多停利:=多停利 and sum(多停利,多SP)=1;
空停利:=EMA1<EMA2 and 空利>20;
空停利:=空停利 and sum(空停利,空SP)=1;
CK:多-空+多停利*2-空停利*2;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK>1 or CK<-1,0,CK);
StickLine (ck=1,-1,1,7,0),Colorred;
StickLine (ck=-1,-1,1,7,0),Colorgreen;
StickLine (ck=0,-1,1,7,0),Coloryellow;
回覆: 非常.非常.非常感謝版主大大!!
引用:
最初由 trtc516 發表
非常.非常.非常感謝版主大大!!
終於解決停利的問題了,
不好意思!!再請教如何解決開盤初期無訊號的問題
EMA1:=EMA(C,5);
EMA2:=EMA(C,60);
多:=cross(EMA1,EMA2);
空:=cross(EMA2,EMA1);
多SP:=BARSLAST(多);
空SP:=BARSLAST(空);
多利:=c-ref(c,多SP+1) linethick;
空利:ref(c,空SP+1)-c linethick;
多停利:=EMA1>EMA2 and 多利>20;
多停利:=多停利 and sum(多停利,多SP)=1;
空停利:=EMA1<EMA2 and 空利>20;
空停利:=空停利 and sum(空停利,空SP)=1;
CK:多-空+多停利*2-空停利*2;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK>1 or CK<-1,0,CK);
StickLine (ck=1,-1,1,7,0),Colorred;
StickLine (ck=-1,-1,1,7,0),Colorgreen;
StickLine (ck=0,-1,1,7,0),Coloryellow;
原碼:
EMA1:=EMA(C,5);
EMA2:=EMA(C,60);
多:=cross(EMA1,EMA2);
空:=cross(EMA2,EMA1);
多SP:=BARSLAST(多);
空SP:=BARSLAST(空);
多利:=c-ref(c,多SP+1) linethick;
空利:=ref(c,空SP+1)-c linethick;
多停利:=EMA1>EMA2 and 多利>20;
多停利:=多停利 and sum(多停利,多SP)=1 or barpos=0;
空停利:=EMA1<EMA2 and 空利>20;
空停利:=空停利 and sum(空停利,空SP)=1 or barpos=0;
CK:多-空+多停利*2-空停利*2;
CKSP:=barslast(CK<>0);
CKSP:=if(barpos<lbound(CKSP),0,CKSP);
CK:=ref(CK,CKSP);
CK:=if(CK>1 or CK<-1,0,CK);
StickLine (ck=1,-1,1,7,0),Colorred;
StickLine (ck=-1,-1,1,7,0),Colorgreen;
StickLine (ck=0,-1,1,7,0),Coloryellow;
全部時間均為台灣時間, 現在時間為14:35 | 在這個頁面顯示本主題全部的 6 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.