커뮤니티
간단한 수식부탁합니다.
2014-05-14 21:50:43
190
글번호 75082
- 첫번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 2차진입금지
- 둘번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 3차진입금지
- 세번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 4차진입금지
- 네번째 ....
피라미딩 설정은 "다른 진입 신호만허용"으로 해놓았습니다.
sMa=Ma(c,sper); lMa=ma(c,lper);
If MarketPosition == 0 And CrossUp(sMa, lMa) Then {
Buy ("1차", OnClose, Def, 100) ; }
If MarketPosition == 1 And sDate <> EntryDate And CrossUp(sMa, lMa) Then {
Buy ("2차", OnClose, DEF, 200) ; }
If MarketPosition == 1 And sDate <> EntryDate(0) And CrossUp(sMa, lMa) Then {
Buy ("3차", OnClose, DEF, 300) ; }
....
....
....
수식을 작성했는데 당일날 진입금지가 먹지않고 두번 들어가네요
당일날 신호가 다시 발생해도 진입을 금지하는 코드는 어떻게 하는지 궁금합니다.
수고하세요
답변 3
예스스탁 예스스탁 답변
2014-05-15 15:13:50
안녕하세요
예스스탁입니다.
아래내용 참고하시기 바랍니다.
#날짜변경되면 모두 false로 초기화
if date != date[1] then{
Condition1 = false;
Condition2 = false;
Condition3 = false;
}
#지정한 이름의 진입이 발생하면 true
if LatestEntryName(0) == "1차" Then
Condition1 = true;
if LatestEntryName(0) == "2차" Then
Condition2 = true;
if LatestEntryName(0) == "3차" Then
Condition3 = true;
#각 false일때만 진입
If MarketPosition == 0 And CrossUp(sMa, lMa) and Condition1 == false Then {
Buy ("1차", OnClose, Def, 100) ; }
If MarketPosition == 1 And CrossUp(sMa, lMa) and Condition2 == false Then {
Buy ("2차", OnClose, DEF, 200) ; }
If MarketPosition == 1 And CrossUp(sMa, lMa) and Condition3 == false Then {
Buy ("3차", OnClose, DEF, 300) ; }
즐거운 하루되세요
> hoho 님이 쓴 글입니다.
> 제목 : 간단한 수식부탁합니다.
> - 첫번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 2차진입금지
- 둘번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 3차진입금지
- 세번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 4차진입금지
- 네번째 ....
피라미딩 설정은 "다른 진입 신호만허용"으로 해놓았습니다.
sMa=Ma(c,sper); lMa=ma(c,lper);
If MarketPosition == 0 And CrossUp(sMa, lMa) Then {
Buy ("1차", OnClose, Def, 100) ; }
If MarketPosition == 1 And sDate <> EntryDate And CrossUp(sMa, lMa) Then {
Buy ("2차", OnClose, DEF, 200) ; }
If MarketPosition == 1 And sDate <> EntryDate(0) And CrossUp(sMa, lMa) Then {
Buy ("3차", OnClose, DEF, 300) ; }
....
....
....
수식을 작성했는데 당일날 진입금지가 먹지않고 두번 들어가네요
당일날 신호가 다시 발생해도 진입을 금지하는 코드는 어떻게 하는지 궁금합니다.
수고하세요
hoho
2014-05-15 17:53:15
hoho 님에 의해 삭제된 답변입니다.
hoho
2014-05-15 20:01:22
수식 감사합니다.
그런데
수식이 에러가 나네요
LatestEntryName(0) 부분이 잘못된것 같습니다.
에러:"선언되지 않은 이름 'LatestEntryName'이 사용되었습니다."
참고로 차트는 15분봉을 사용하였습니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 간단한 수식부탁합니다.
> 안녕하세요
예스스탁입니다.
아래내용 참고하시기 바랍니다.
#날짜변경되면 모두 false로 초기화
if date != date[1] then{
Condition1 = false;
Condition2 = false;
Condition3 = false;
}
#지정한 이름의 진입이 발생하면 true
if LatestEntryName(0) == "1차" Then
Condition1 = true;
if LatestEntryName(0) == "2차" Then
Condition2 = true;
if LatestEntryName(0) == "3차" Then
Condition3 = true;
#각 false일때만 진입
If MarketPosition == 0 And CrossUp(sMa, lMa) and Condition1 == false Then {
Buy ("1차", OnClose, Def, 100) ; }
If MarketPosition == 1 And CrossUp(sMa, lMa) and Condition2 == false Then {
Buy ("2차", OnClose, DEF, 200) ; }
If MarketPosition == 1 And CrossUp(sMa, lMa) and Condition3 == false Then {
Buy ("3차", OnClose, DEF, 300) ; }
즐거운 하루되세요
> hoho 님이 쓴 글입니다.
> 제목 : 간단한 수식부탁합니다.
> - 첫번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 2차진입금지
- 둘번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 3차진입금지
- 세번째 이동평균 신호가 발생하면 진입하고, 당일날은 다시 신호가 발생해도 4차진입금지
- 네번째 ....
피라미딩 설정은 "다른 진입 신호만허용"으로 해놓았습니다.
sMa=Ma(c,sper); lMa=ma(c,lper);
If MarketPosition == 0 And CrossUp(sMa, lMa) Then {
Buy ("1차", OnClose, Def, 100) ; }
If MarketPosition == 1 And sDate <> EntryDate And CrossUp(sMa, lMa) Then {
Buy ("2차", OnClose, DEF, 200) ; }
If MarketPosition == 1 And sDate <> EntryDate(0) And CrossUp(sMa, lMa) Then {
Buy ("3차", OnClose, DEF, 300) ; }
....
....
....
수식을 작성했는데 당일날 진입금지가 먹지않고 두번 들어가네요
당일날 신호가 다시 발생해도 진입을 금지하는 코드는 어떻게 하는지 궁금합니다.
수고하세요
다음글
이전글