그냥 시스템 트레이딩으로 고찰

수수료 - 슬리피지 없음. 있으면 개막장 되는게 확실해서 말임 -ㅅ-


내가 받아들인 파우스트 횽의 변곡 매매법(?)(이하 F매매법)은 다음과 같이 정리한다

--------------------------------------------

1. 장시작 이후 2포 이상 진폭이 관측될때

2. 저점/고점대비 0.3포 반등이 관측되면 그방향으로 따라 들어간다.
 2-1 0.3포 이하로 반등이 관측되지 않으면 그 방향으로 들어가지 않는다.
 2-2 변곡을 포착해서 들어간다.

3. 손절은 저점 + 0.2포, 익절은 수익이 0.5포 이상 날때 한다.
 3-1 추세가 꺽이면 나온다.

4. 2시 이후엔 거래하지 않는다.

---------------------------------------------------
이상의 방법을 기반으로 깔고 코드를 짜면 다음과 같다.

input : bandw(2),p1(2), p2(15), pcut(0.5);
var : losscut(0);

var1 = p1;
if stime < 133000 then Begin // 1시 반 이후엔 신규 진입을 자제한다.
if dayindex > p2 then var2 = p2; else var2 = DayIndex;

if DayHigh - daylow > bandw then Begin// 2포 이상 변동폭이 나와주면


if H[p1] == highest(H,p2) then Begin
sell("s",atstop,highest(h,p2)-0.3); //매도의 경우 4~6분전의 봉이 최근 30분간의 최고가라면, 고점 대비 0.3포 이상 빠지는 시점을 포착하여 들어간다.
end;

if MarketPosition[1] != -1 and MarketPosition == -1 then begin
losscut = highest(h,p2) + 0.2; // 손절은 고점대비 0.2포
end;

if L[p1] == lowest(l,p2) then Begin
buy("b",atstop,highest(l,p2)+0.3); //매수도 동일
end;

if MarketPosition[1] != 1 and MarketPosition == 1 then begin
losscut = lowest(h,p2) - 0.2;
end;


end;
end;

if stime > 140000 then begin//2시 이후엔 모든 포지션 청산
exitshort();
exitlong();
end;

if MarketPosition < 0 then Begin
exitshort("es",atstop,losscut);// 손절선에 닿으면 강제청산
if OpenPositionProfit > pcut then exitshort(); // 수익이 0.5포 이상 날 경우 청산.
end;
if MarketPosition > 0 then Begin
exitlong("el",atstop,losscut);//위와 동.
if OpenPositionProfit > pcut then exitlong();
end;



해당 전략의 그래프는 위의 사진과 같다.
완벽하게 같진 않으나, 어느정도 흉내를 내는데는 성공했으니 2부에 이어질 고찰에 도움이 될듯...

일단, 변곡의 인식을, 세봉전에(2분봉 기준으로)의 고가가 30분동안의 최고가일경우. 라고 인식했음.
그다음 거기서 쳐 내려오는걸 잡는거지....

거래비용 0로 설정했는데도 이렇게까지 막장인거 보면 -ㅅ-./ 내가 뭘 잘못했나 싶기도 하긴 하는데. 내가 생각한 범위 내에서는 잘 구현 한거 같단 말이지..

일단 이것저것 만져보고 보고 느낀게 좀 있는데.. 자세한건 2부에 올릴게