커뮤니티
다시 부탁드립니다.,,초보라서리..
2007-01-29 23:47:34
1546
글번호 11832
setstopendofday(1500);
setstoptrailing(L, P, percentstop, 0);
## 매수조건 2개
if marketposition() == 0 and 상향조건1()==1
and var2 == 0 //(var2가 1(참)이 아니다의 표현인데 바른건가요?)
then buy("매수1");
if marketposition() == 0 and c>고가이평선() and c>저가이평선()
then buy("매수2");
## 매도조건 2개
if marketposition() == 0 and 하향조건1()==1
and var3 ==0 //(var3이 1(참)이 아니다의 표현인데 바른건가요?)
then sell("매도1");
if marketposition() == 0 and c<고가이평선() and c<저가이평선()
then sell("매도2");
## 청산식 4개
If MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100))
then exitshort("익절환매");
If MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100))
then exitlong("익절전매");
익절환매= MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100));
//10% 수익이면 청산인데 수식을 잘 몰라서 이렇게 했네요-수정해주세요..//
익절전매= MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100));
//10% 수익이면 청산인데 수식을 잘 몰라서 이렇게 했네요-수정해주세요..//
if MarketPosition() == 1 and var2 == 2 //(Q & A에서 가져옴)
and 지표데드() then
exitlong("다이버전매");
if MarketPosition() == -1 and var3 == 3// (Q & A에서 가져옴)
and 지표골든() then
exitshort("다이버환매");
다이버환매= MarketPosition() == -1 and var3 == 3 and 지표골든();
다이버전매= MarketPosition() == 1 and var2 == 2 and 지표데드() ;
////////////////////////////////////////////////////////////////////
위와 같이 두개씩의 매수진입식과 매도 진입식
그리고 두개씩의 청산식으로 시스템을 예로 들어서요..
(실제로는 매수매도 그리고 청산의 조건을 더 많이 두었습니다만..)
예를 들어 매도후 10% 수익을 남기고 "익절 환매"로 청산을 하면
당해봉에 어떤 조건이든 매도 신호가 나오지 않도록 하고 싶은데,
봉 하나에 청산도 나오고 기존 조건도 지속인 경우에
재차 매도 신호가 나오게 됩니다...
(거꾸로 매수후 "익절 전매"도 마찬가지로)
청산후에는 (매수후 청산이든, 매도후 청산이든), n 봉 후부터
매수식이나 매도식을 적용하라고 시스템을 만들고 싶습니다
특히 이 조건에서 전체의 조건들을 통괄하는 부호들에 대해
간략히라도 설명해 주시면 감사하겠습니다..
예를 들면 대괄호 { } 같은 것의 용법을요..
또 하나는 위의 매수식 두개와 매도식 두개중 어떤 신호가 되었든 간에
진입후에 당해 신호만으로 - 누적 수익이 아닙니다 -
setstoptrailing(L, P, percentstop, 0); 조건으로 청산이 되면
당일은 일체의 신호를 내지 말도록 하는 것도 배우고 싶습니다..
답변 5
예스스탁 예스스탁 답변
2007-01-30 10:07:46
안녕하세요
예스스탁입니다.
1.
var2와 var3에 어떤 값이 저장되는지 알수 없지만
var2와 var3에 1과 0만 할당될 경우
var2 == 0 ,var3 == 0과 같이 사용하면
1(참)이 아니다라는 식이 될 수 있습니다.
2.
매수포지션일 경우
c > entryprice(0)*1.1
매도포지션일 경우
c < entryprice(0)*1.1
와 같이 간단하게 표현하실 수 있습니다.
3.
{}와 같은 경우는 범위를 지정합니다.
예를 들어 아래와 같이 식을 작성할 경우
if C > O then
var1 =C;
var2 =O;
양봉일때 var1에 종가를 저장하고 var2에 시가를 저장하고자 했지만
실제로 양봉일때 var1에 C를 저장하지만 var2에 시가는 if 조건과 상관없이
매봉 var2에 해당봉의 시가를 저장하게 됩니다.
즉 {}없을 경우 if문 바로 아래의 시행문만 if문에 귀속된걸로 간주합니다.
그러므로 if문이 만족했을경우 동작을 해야 하는 시행문들을 구분해 주는 것입니다.
if C > O then{
var1 =C;
var2 =O;
}
<<if 문에 var1 = C;와 var2 = O;가 귀속되어 있다 라고 범위를 지정해 주는것입니다.
4. 우선 청산신호가 일반조건에 의해 청산이 되었는지 혹은 강제청산 함수로 청산되었는지를
알수 있는 함수는 없습니다. 목표이익과 손절함수는 그 경계가 분명하기에 포지션의 수익을 따져
가늠할 수 있지만 트레일링스탑의 경우는 일반 조건의 청산과 구분하기 힘듭니다.
즐거운 하루되세요
> CJ_5dream 님이 쓴 글입니다.
> 제목 : 다시 부탁드립니다.,,초보라서리..
> setstopendofday(1500);
setstoptrailing(L, P, percentstop, 0);
## 매수조건 2개
if marketposition() == 0 and 상향조건1()==1
and var2 == 0 //(var2가 1(참)이 아니다의 표현인데 바른건가요?)
then buy("매수1");
if marketposition() == 0 and c>고가이평선() and c>저가이평선()
then buy("매수2");
## 매도조건 2개
if marketposition() == 0 and 하향조건1()==1
and var3 ==0 //(var3이 1(참)이 아니다의 표현인데 바른건가요?)
then sell("매도1");
if marketposition() == 0 and c<고가이평선() and c<저가이평선()
then sell("매도2");
## 청산식 4개
If MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100))
then exitshort("익절환매");
If MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100))
then exitlong("익절전매");
익절환매= MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100));
//10% 수익이면 청산인데 수식을 잘 몰라서 이렇게 했네요-수정해주세요..//
익절전매= MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100));
//10% 수익이면 청산인데 수식을 잘 몰라서 이렇게 했네요-수정해주세요..//
if MarketPosition() == 1 and var2 == 2 //(Q & A에서 가져옴)
and 지표데드() then
exitlong("다이버전매");
if MarketPosition() == -1 and var3 == 3// (Q & A에서 가져옴)
and 지표골든() then
exitshort("다이버환매");
다이버환매= MarketPosition() == -1 and var3 == 3 and 지표골든();
다이버전매= MarketPosition() == 1 and var2 == 2 and 지표데드() ;
////////////////////////////////////////////////////////////////////
위와 같이 두개씩의 매수진입식과 매도 진입식
그리고 두개씩의 청산식으로 시스템을 예로 들어서요..
(실제로는 매수매도 그리고 청산의 조건을 더 많이 두었습니다만..)
예를 들어 매도후 10% 수익을 남기고 "익절 환매"로 청산을 하면
당해봉에 어떤 조건이든 매도 신호가 나오지 않도록 하고 싶은데,
봉 하나에 청산도 나오고 기존 조건도 지속인 경우에
재차 매도 신호가 나오게 됩니다...
(거꾸로 매수후 "익절 전매"도 마찬가지로)
청산후에는 (매수후 청산이든, 매도후 청산이든), n 봉 후부터
매수식이나 매도식을 적용하라고 시스템을 만들고 싶습니다
특히 이 조건에서 전체의 조건들을 통괄하는 부호들에 대해
간략히라도 설명해 주시면 감사하겠습니다..
예를 들면 대괄호 { } 같은 것의 용법을요..
또 하나는 위의 매수식 두개와 매도식 두개중 어떤 신호가 되었든 간에
진입후에 당해 신호만으로 - 누적 수익이 아닙니다 -
setstoptrailing(L, P, percentstop, 0); 조건으로 청산이 되면
당일은 일체의 신호를 내지 말도록 하는 것도 배우고 싶습니다..
회원
2007-01-30 11:25:32
제가 예가 필요해서 그러거든요..말씀 드렸듯이 이제 수식을 공부 하는 초보라
제가 준비해둔 식대로 시스템을 만들엇더니
한자리에서 매수청산과 청산 전의 매수신호가 재차 발생하는 경우가
자주 보여서 이를 어떻게 수정하는지를 알고 싶습니다
수고스러우시겠지만 가급적 제가 준비한 매수 매도식과 청산식을 가지고
완전한 하나의 시스템을 구축해주셨으면 합니다
아니면 제가 궁금해 하는 조건(청산후에 동 신호가 진입되지 못하게 하는것)을
예시로 해서 즉 매수조건2 개 매도조건 2개 청산조건 2개이상일 때의
(이때 { } 를 쓰면 진입금지의 조건이 더 간명해지는지?
아니면 각각의 매수매도조건 마다 마다에 진입금지의 식을 쓸수 밖에 없는지?)
완전한 하나의 시스템 식을 보여주시길 바랍니다
귀찮게 해드린것 같아 죄송스럽습니다..
다만 예스의 오랜 친구란 것으로 인사를 대신 합니다..
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 다시 부탁드립니다.,,초보라서리..
> 안녕하세요
예스스탁입니다.
1.
var2와 var3에 어떤 값이 저장되는지 알수 없지만
var2와 var3에 1과 0만 할당될 경우
var2 == 0 ,var3 == 0과 같이 사용하면
1(참)이 아니다라는 식이 될 수 있습니다.
2.
매수포지션일 경우
c > entryprice(0)*1.1
매도포지션일 경우
c < entryprice(0)*1.1
와 같이 간단하게 표현하실 수 있습니다.
3.
{}와 같은 경우는 범위를 지정합니다.
예를 들어 아래와 같이 식을 작성할 경우
if C > O then
var1 =C;
var2 =O;
양봉일때 var1에 종가를 저장하고 var2에 시가를 저장하고자 했지만
실제로 양봉일때 var1에 C를 저장하지만 var2에 시가는 if 조건과 상관없이
매봉 var2에 해당봉의 시가를 저장하게 됩니다.
즉 {}없을 경우 if문 바로 아래의 시행문만 if문에 귀속된걸로 간주합니다.
그러므로 if문이 만족했을경우 동작을 해야 하는 시행문들을 구분해 주는 것입니다.
if C > O then{
var1 =C;
var2 =O;
}
<<if 문에 var1 = C;와 var2 = O;가 귀속되어 있다 라고 범위를 지정해 주는것입니다.
4. 우선 청산신호가 일반조건에 의해 청산이 되었는지 혹은 강제청산 함수로 청산되었는지를
알수 있는 함수는 없습니다. 목표이익과 손절함수는 그 경계가 분명하기에 포지션의 수익을 따져
가늠할 수 있지만 트레일링스탑의 경우는 일반 조건의 청산과 구분하기 힘듭니다.
즐거운 하루되세요
> CJ_5dream 님이 쓴 글입니다.
> 제목 : 다시 부탁드립니다.,,초보라서리..
> setstopendofday(1500);
setstoptrailing(L, P, percentstop, 0);
## 매수조건 2개
if marketposition() == 0 and 상향조건1()==1
and var2 == 0 //(var2가 1(참)이 아니다의 표현인데 바른건가요?)
then buy("매수1");
if marketposition() == 0 and c>고가이평선() and c>저가이평선()
then buy("매수2");
## 매도조건 2개
if marketposition() == 0 and 하향조건1()==1
and var3 ==0 //(var3이 1(참)이 아니다의 표현인데 바른건가요?)
then sell("매도1");
if marketposition() == 0 and c<고가이평선() and c<저가이평선()
then sell("매도2");
## 청산식 4개
If MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100))
then exitshort("익절환매");
If MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100))
then exitlong("익절전매");
익절환매= MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100));
//10% 수익이면 청산인데 수식을 잘 몰라서 이렇게 했네요-수정해주세요..//
익절전매= MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100));
//10% 수익이면 청산인데 수식을 잘 몰라서 이렇게 했네요-수정해주세요..//
if MarketPosition() == 1 and var2 == 2 //(Q & A에서 가져옴)
and 지표데드() then
exitlong("다이버전매");
if MarketPosition() == -1 and var3 == 3// (Q & A에서 가져옴)
and 지표골든() then
exitshort("다이버환매");
다이버환매= MarketPosition() == -1 and var3 == 3 and 지표골든();
다이버전매= MarketPosition() == 1 and var2 == 2 and 지표데드() ;
////////////////////////////////////////////////////////////////////
위와 같이 두개씩의 매수진입식과 매도 진입식
그리고 두개씩의 청산식으로 시스템을 예로 들어서요..
(실제로는 매수매도 그리고 청산의 조건을 더 많이 두었습니다만..)
예를 들어 매도후 10% 수익을 남기고 "익절 환매"로 청산을 하면
당해봉에 어떤 조건이든 매도 신호가 나오지 않도록 하고 싶은데,
봉 하나에 청산도 나오고 기존 조건도 지속인 경우에
재차 매도 신호가 나오게 됩니다...
(거꾸로 매수후 "익절 전매"도 마찬가지로)
청산후에는 (매수후 청산이든, 매도후 청산이든), n 봉 후부터
매수식이나 매도식을 적용하라고 시스템을 만들고 싶습니다
특히 이 조건에서 전체의 조건들을 통괄하는 부호들에 대해
간략히라도 설명해 주시면 감사하겠습니다..
예를 들면 대괄호 { } 같은 것의 용법을요..
또 하나는 위의 매수식 두개와 매도식 두개중 어떤 신호가 되었든 간에
진입후에 당해 신호만으로 - 누적 수익이 아닙니다 -
setstoptrailing(L, P, percentstop, 0); 조건으로 청산이 되면
당일은 일체의 신호를 내지 말도록 하는 것도 배우고 싶습니다..
예스스탁 예스스탁 답변
2007-01-31 09:44:13
즐거운 하루되세요
예스스탁 예스스탁 답변
2007-01-31 10:50:28
var : cnt(0);
setstopendofday(1500);
setstoptrailing(L, P, percentstop, 0);
if marketposition() == 0 and cnt < 1 then{
if 상향조건1()==1 and var2 == 0 then{
buy("매수1");
cnt = cnt +1;
}
if c>고가이평선() and c>저가이평선() then{
buy("매수2");
cnt = cnt +1;
}
if 하향조건1()==1 and var3 ==0 then{
sell("매도1");
cnt = cnt +1;
}
if c<고가이평선() and c<저가이평선() then{
sell("매도2");
cnt = cnt +1;
}
}
if marketposition() == 0 and cnt == 1 and barssinceexit(1) > 0 then{
if 상향조건1()==1 and var2 == 0 then
buy("매수1");
if c>고가이평선() and c>저가이평선() then
buy("매수2");
if 하향조건1()==1 and var3 ==0 then
sell("매도1");
if c<고가이평선() and c<저가이평선() then
sell("매도2");
}
if barssinceentry() > 0 then{
If MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100))
then exitshort("익절환매");
If MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100))
then exitlong("익절전매");
if MarketPosition() == 1 and var2 == 2 and 지표데드() then
exitlong("다이버전매");
if MarketPosition() == -1 and var3 == 3 and 지표골든() then
exitshort("다이버환매");
}
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : Re : Re : 전화 주시기 바랍니다. 02-3453-1060
> 즐거운 하루되세요
회원
2007-01-31 13:51:48
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : Re : Re : Re : 참고하시기 바랍니다.
>
var : cnt(0);
setstopendofday(1500);
setstoptrailing(L, P, percentstop, 0);
if marketposition() == 0 and cnt < 1 then{
if 상향조건1()==1 and var2 == 0 then{
buy("매수1");
cnt = cnt +1;
}
if c>고가이평선() and c>저가이평선() then{
buy("매수2");
cnt = cnt +1;
}
if 하향조건1()==1 and var3 ==0 then{
sell("매도1");
cnt = cnt +1;
}
if c<고가이평선() and c<저가이평선() then{
sell("매도2");
cnt = cnt +1;
}
}
if marketposition() == 0 and cnt == 1 and barssinceexit(1) > 0 then{
if 상향조건1()==1 and var2 == 0 then
buy("매수1");
if c>고가이평선() and c>저가이평선() then
buy("매수2");
if 하향조건1()==1 and var3 ==0 then
sell("매도1");
if c<고가이평선() and c<저가이평선() then
sell("매도2");
}
if barssinceentry() > 0 then{
If MarketPosition() == -1 And c>고가이평선() and c>저가이평선()
and c< (entryprice(0)-(entryprice(0)*10/100))
then exitshort("익절환매");
If MarketPosition() == 1 And c<고가이평선() and c<저가이평선()
and c> (entryprice(0)+(entryprice(0)*10/100))
then exitlong("익절전매");
if MarketPosition() == 1 and var2 == 2 and 지표데드() then
exitlong("다이버전매");
if MarketPosition() == -1 and var3 == 3 and 지표골든() then
exitshort("다이버환매");
}
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : Re : Re : 전화 주시기 바랍니다. 02-3453-1060
> 즐거운 하루되세요
다음글
이전글