  | 
	
	
	
	trtc516 
	中級會員 
	
	註冊日期: Oct 2005 
	來  自: 台北市 
	文章數量: 82  | 
	
	
		
	    | 
			 請教各位前輩.........
			 請教各位前輩,如何讓  "停利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 附帶上了此圖片: 
 
			    
	     |  
	    
	      | 最後由 trtc516 在 2009-12-03 02:08 編輯 | 
	  	  向版主報告此篇 |   | 
	     
	     
	 | 
 
	 
	2009-12-03 02:00 | 
	
	
		
	 | 
 
 
 |   
 |   |   
  | 
	
	
	
	cgjj 
	總版主 
	 
	註冊日期: Oct 2003 
	來  自:  
	文章數量: 18211  | 
	
	
		
	    | 
			 回覆: 請教各位前輩.........
			 引用: 最初由 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了 
    
 
這段程式寫的可能有些問題唷 
BARSSINCE 是取歷史第一次 
可否表達出您想計算的內容, 這樣較易協助您 
			
			    
	     |  
	    
	       | 
	  	  向版主報告此篇 |   | 
	     
	     
	 | 
 
	 
	2009-12-03 12:46 | 
	
	
		
	 | 
 
 
 |   
 |   |   
  | 
	
	
	
	trtc516 
	中級會員 
	
	註冊日期: Oct 2005 
	來  自: 台北市 
	文章數量: 82  | 
	
	
		
	    | 
			 感謝版主大大.................
			 感謝大大........ 
 
因為我是用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 在 2009-12-04 00:22 編輯 | 
	  	  向版主報告此篇 |   | 
	     
	     
	 | 
 
	 
	2009-12-04 00:19 | 
	
	
		
	 | 
 
 
 |   
 |   |   
  | 
	
	
	
	cgjj 
	總版主 
	 
	註冊日期: Oct 2003 
	來  自:  
	文章數量: 18211  | 
	
	
		
	    | 
			 回覆: 感謝版主大大.................
			 引用: 最初由 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); 
   
			
			    
	     |  
	    
	       | 
	  	  向版主報告此篇 |   | 
	     
	     
	 | 
 
	 
	2009-12-04 12:17 | 
	
	
		
	 | 
 
 
 |   
 |   |   
  | 
	
	
	
	trtc516 
	中級會員 
	
	註冊日期: Oct 2005 
	來  自: 台北市 
	文章數量: 82  | 
	
	
		
	    | 
			 非常.非常.非常感謝版主大大!!
			  
 
非常.非常.非常感謝版主大大!! 
 
終於解決停利的問題了, 
 
不好意思!!再請教如何解決開盤初期無訊號的問題 
 
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 附帶上了此圖片: 
 
			    
	     |  
	    
	      | 最後由 trtc516 在 2009-12-05 11:33 編輯 | 
	  	  向版主報告此篇 |   | 
	     
	     
	 | 
 
	 
	2009-12-05 11:25 | 
	
	
		
	 | 
 
 
 |   
 |   |   
  | 
	
	
	
	cgjj 
	總版主 
	 
	註冊日期: Oct 2003 
	來  自:  
	文章數量: 18211  | 
	
	
		
	    | 
			 回覆: 非常.非常.非常感謝版主大大!!
			 引用: 最初由 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; 
   
			
			    
	     |  
	    
	       | 
	  	  向版主報告此篇 |   | 
	     
	     
	 | 
 
	 
	2009-12-05 13:45 | 
	
	
		
	 | 
 
 
 |   
 |   |   
    
	
 
 
  
 本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。 
 
 | 
 
 
 Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.   聯絡我們
 
 |