커뮤니티
시스템식 질문 좀 드립니다..
2010-05-19 01:19:39
908
글번호 29998
노고에 항상 감사드립니다^^
다름이 아니라 초보다 보니 생각한것을 로직으로 만들기가 어렵네요
그래서 질문 좀 드릴까 합니다
기본 베이스식은
Input : Period1(9),Period2(10);
var : CCI(0);
cci=CCI(Period1);
if CCI >40Then
{
Buy();
}
Else if CCI<-40 Then
{
Sell();
}
입니다 그림 첨부에서와 같이 로직을 추가 부탁드리고요
설정에서 만지는 손절매나 최대수익대비,목표수익같은것은 세세한거 아니면
로직에 추가 안하고 창에나와있는 설정만 해도 무방한것이겠죠??
항상 감사드립니다..
- 1. 30250_1.jpg (0.14 MB)
- 2. 30250_2.JPG (0.11 MB)
답변 4
asd
2010-05-19 09:53:54
추가적으로 질문 드리겠습니다^^;;
다름이 아니라
손절이 매수가에서 -0.4p가 아닌 최대 수익비 -0.4p가 되는 식도 알려주시면 감사하겠습니다...
예스스탁 예스스탁 답변
2010-05-19 10:01:26
안녕하세요
예스스탁이니다.
강제청산을 조건에 따라 다른값을 사용하시려면
강제청산함수를 사용하시면 안되고 풀어서 작성하셔야 합니다.
개별진입을 경우별로 세세하게 나누셔야 하며
이때 모든 경우가 다 포함되는지 살펴보셔야 합니다.
아래식을 참고하시기 바랍니다.
Input : Period1(9),Period2(10);
var : CCIv(0);
cciv=CCI(Period1);
#매도포지션상태에서의 매수
if MarketPosition == -1 and
CCIv > 40 and
countif(CCIv > 0 and CCIv < 40,10) < 1 Then
{
Buy("b1");
}
#현재 무포지션 상태이고 직전청산이 매수진입에 대한 목표이익청산이고 다음봉에 바로 매수조건에 다시 만족한 경우
if MarketPosition == 0 and
MarketPosition(1) == 1 and
IsExitName("StopProfittarget",1) == true and
BarsSinceExit(1) == 1 and
CCIv > 40 and countif(CCIv > 0 and CCIv < 40,10) < 1 Then
Buy("b2");
#현재 무포지션 상태이고 직전청산이 매수진입에 대한 목표이익청산이고 다음봉에 바로 매수조건이 만족한 경우가 아닌 경우
if MarketPosition == 0 and
MarketPosition(1) == 1 and
IsExitName("StopProfittarget",1) == true and
BarsSinceExit(1) > 1 and
CCIv > 40 and countif(CCIv > 0 and CCIv < 40,10) < 1 Then
Buy("b3");
#직전청산이 목표이익 청산이 아닌경우 매수
if MarketPosition == 0 and
IsExitName("StopProfittarget",1) == False and
CCIv > 40 and countif(CCIv > 0 and CCIv < 40,10) < 1 Then
Buy("b4");
if MarketPosition == 1 Then{
if IsExitName("b1") or IsEntryName("b3") or IsEntryName("b4") Then
exitlong("bx1",AtStop,EntryPrice-0.4);
if IsExitName("b2") Then
exitlong("bx2",AtStop,EntryPrice-0.2);
}
#매수포지션상태에서의 매도
if MarketPosition == 1 and
CCIv<-40 and
countif(CCIv < O and CCIv > -40,10) < 1 Then
{
Sell("s1");
}
#현재 무포지션 상태이고 직전청산이 매도진입에 대한 목표이익청산이고 다음봉에 바로 매도조건에 다시 만족한 경우
if MarketPosition == 0 and
MarketPosition(1) == -1 and
IsExitName("StopProfittarget",1) == true and
BarsSinceExit(1) == 1 and
CCIv<-40 and countif(CCIv < O and CCIv > -40,10) < 1 Then
Sell("s2");
#현재 무포지션 상태이고 직전청산이 매도진입에 대한 목표이익청산이고 다음봉에 바로 매도조건이 만족한 경우가 아닌 경우
if MarketPosition == 0 and
MarketPosition(1) == -1 and
IsExitName("StopProfittarget",1) == true and
BarsSinceExit(1) > 1 and
CCIv<-40 and countif(CCIv < O and CCIv > -40,10) < 1 Then
Sell("s3");
#직전청산이 목표이익 청산이 아닌경우 매도
if MarketPosition == 0 and
IsExitName("StopProfittarget",1) == False and
CCIv<-40 and countif(CCIv < O and CCIv > -40,10) < 1 Then
Sell("s4");
if MarketPosition == -1 Then{
if IsExitName("s1") or IsEntryName("s3") or IsEntryName("s4") Then
ExitShort("sx1",AtStop,EntryPrice+0.4);
if IsExitName("s2") Then
ExitShort("sx2",AtStop,EntryPrice+0.2);
}
즐거운 하루되세요
> 포정의경지 님이 쓴 글입니다.
> 제목 : 시스템식 질문 좀 드립니다..
> 노고에 항상 감사드립니다^^
다름이 아니라 초보다 보니 생각한것을 로직으로 만들기가 어렵네요
그래서 질문 좀 드릴까 합니다
기본 베이스식은
Input : Period1(9),Period2(10);
var : CCI(0);
cci=CCI(Period1);
if CCI >40Then
{
Buy();
}
Else if CCI<-40 Then
{
Sell();
}
입니다 그림 첨부에서와 같이 로직을 추가 부탁드리고요
설정에서 만지는 손절매나 최대수익대비,목표수익같은것은 세세한거 아니면
로직에 추가 안하고 창에나와있는 설정만 해도 무방한것이겠죠??
항상 감사드립니다..
예스스탁 예스스탁 답변
2010-05-19 10:02:47
안녕하세요
예스스탁입니다.
if MarketPosition == 1 Then
exitlong("bx",AtStop,highest(H,BarsSinceEntry)-0.4);
if MarketPosition == -1 Then
ExitShort("sx",AtStop,Lowest(L,BarsSinceEntry)+0.4);
즐거운 하루되세요
> 포정의경지 님이 쓴 글입니다.
> 제목 : Re : 시스템식 질문 좀 드립니다..
> 추가적으로 질문 드리겠습니다^^;;
다름이 아니라
손절이 매수가에서 -0.4p가 아닌 최대 수익비 -0.4p가 되는 식도 알려주시면 감사하겠습니다...
asd
2010-05-19 10:15:43
차트에 대입해 보니 뭔가 잘못됬는지 제가 원하는 모습이
나오지 않았는데 이는 제가 작위적인 형식으로 차트를 만들어 달라고 해서 인것 같습니다, 로직이 아직 제게는 어려운 수식들이지만 열심히 공부하고 다시 질문드리겠습니다
^^ 즐거운 하루 되세요