커뮤니티
문의 드립니다.
2011-11-14 16:46:24
366
글번호 44777
수고가 많으십니다
빠른 답변에 감사드리며 몇가지 문의 하고자 합니다.
if MarketPosition == 1 Then{
ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99);
ExitLong("bx5",AtStop,BarsSinceEntry*0.99);
}
상기식에서 BarsSinceEntry와 BarsSinceEntry는 수식마다 모두
다른데 각 수식마다 자동적으로 각각의 값을 인식하여 리턴해 주는 가요?
그리고 Atstop처리는 var=var+1;과 같은 수식을 처리할때 봉의 완성시에 값을
리턴하는지 아니면 처리 순간에 값을 리턴하는지 궁금합니다.
감사합니다.
안녕하세요
예스스탁입니다.
value2 = 0;
for value1 = 0 to 10{
if EntryDate(value1) == sdate Then
value2 = value2+1;
}
var1 = ma(c,60);
var2 = macd(12,26);
var3 = ma(c,5);
var4 = ma(c,20);
Condition1 = ExitDate(1) == sdate and (IsExitName("bx4",1) or IsExitName("bx5",1));
if value2 < 6 and Condition1 == false Then{
if var1 > var1[1] and var1[1] < var1[2] Then
buy("b1",OnClose,def,1);
if crossup(var2,0) Then
buy("b2",OnClose,def,1);
if crossup(var3,var4) Then
buy("b3",OnClose,def,1);
}
if var1 < var1[1] and var1[1] < var1[2] Then
ExitLong("bx1",OnClose,def,"b1",1,1);
if CrossDown(var2,0) Then
ExitLong("bx2",OnClose,def,"b2",1,1);
if CrossDown(var3,var4) Then
ExitLong("bx3",OnClose,def,"b3",1,1);
if MarketPosition == 1 Then{
ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99);
ExitLong("bx5",AtStop,EntryPrice*0.99);
}
즐거운 하루되세요
답변 1
예스스탁 예스스탁 답변
2011-11-14 17:05:44
안녕하세요
예스스탁입니다.
1.
if MarketPosition == 1 Then{
ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99);
ExitLong("bx5",AtStop,EntryPrice*0.99);
}
bx5의 값이 잘못작성이 되어 수정했습니다.
시스템에서 사용되는 모든 진입관련 함수는 피라미딩상 첫진입을 기준으로 합니다.
ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99);
은 첫진입이후 최고가에서 1% 하향하면 즉시 신호 발생시키고 전량청산입니다.
ExitLong("bx5",AtStop,EntryPrice*0.99);
은 진입가 대비 1% 하향하면 즉시 신호 발생시키고 전량청산입니다.
2.
atstop은 완성봉에서 가격조건을 걸어 다음봉이 이 가격조건 보다
높은 시세나 낮은 시세가 발생하면 즉시 신호가 발생됩니다.
ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99);
위식의 경우 현재봉 완성시에 Highest(H,BarsSinceEntry)*0.99라는 가격조건을
셋팅하고 다음봉의 시세중에 Highest(H,BarsSinceEntry)*0.99이하의 시세가 발생하면
봉 미완성시라도 신호가 발생합니다.
식작성에 참고하시기 바랍니다.
즐거운 하루되세요
> 아틀라스 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> 수고가 많으십니다
빠른 답변에 감사드리며 몇가지 문의 하고자 합니다.
if MarketPosition == 1 Then{
ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99);
ExitLong("bx5",AtStop,BarsSinceEntry*0.99);
}
상기식에서 BarsSinceEntry와 BarsSinceEntry는 수식마다 모두
다른데 각 수식마다 자동적으로 각각의 값을 인식하여 리턴해 주는 가요?
그리고 Atstop처리는 var=var+1;과 같은 수식을 처리할때 봉의 완성시에 값을
리턴하는지 아니면 처리 순간에 값을 리턴하는지 궁금합니다.
감사합니다.
안녕하세요
예스스탁입니다.
value2 = 0;
for value1 = 0 to 10{
if EntryDate(value1) == sdate Then
value2 = value2+1;
}
var1 = ma(c,60);
var2 = macd(12,26);
var3 = ma(c,5);
var4 = ma(c,20);
Condition1 = ExitDate(1) == sdate and (IsExitName("bx4",1) or IsExitName("bx5",1));
if value2 < 6 and Condition1 == false Then{
if var1 > var1[1] and var1[1] < var1[2] Then
buy("b1",OnClose,def,1);
if crossup(var2,0) Then
buy("b2",OnClose,def,1);
if crossup(var3,var4) Then
buy("b3",OnClose,def,1);
}
if var1 < var1[1] and var1[1] < var1[2] Then
ExitLong("bx1",OnClose,def,"b1",1,1);
if CrossDown(var2,0) Then
ExitLong("bx2",OnClose,def,"b2",1,1);
if CrossDown(var3,var4) Then
ExitLong("bx3",OnClose,def,"b3",1,1);
if MarketPosition == 1 Then{
ExitLong("bx4",AtStop,Highest(H,BarsSinceEntry)*0.99);
ExitLong("bx5",AtStop,EntryPrice*0.99);
}
즐거운 하루되세요
다음글