2012년 11월 28일 수요일

대우증권 Charts (2012-11-27)

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 

▶ Monthly, Fractal Count

그림 1


  Fractal count 12 이후로 조정 패턴이 진행되고 있습니다. 물론 중간중간에 한 단계 또는 더 낮은 수준의 충격 패턴이 섞여 있습니다. 나무가 아닌 숲을 본다고 할 때 파동을 어떻게 분석해야 할까요?


▶ Monthly, Wave Structure

그림 2

  Fractal count 12부터 그림 2의 T1 시점까지를 flat pattern(a:F3-b:c3-c:L5)의 a-b 파동으로 무방할 듯 합니다.

  그렇다면 마지막 c:L5를 어디까지로 봐야할까요? 현재 시점에선 확인이 어렵습니다. 아직은 A-C 추세선이 돌파될 가능성이 매우 적기 때문입니다.


▶ Weekly, Wave Structure

그림 3

  그림 2의 T1에서 T2까지의 파동을 weekly chart에서 보면 그림 3과 같습니다. 터미널 충격 패턴으로 파악해도 되지 않을까요? Chart 하단부의 Elliott oscillator 변화 추이를 보면 그렇게 판단해도 될 듯 한데요.

  만약에 그렇다면 T2에서 flat 패턴이 완성된 것일테지만, 더 지켜봐야 하겠습니다.


2012년 11월 27일 화요일

LG화학 Charts (2012-11-27)

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 

▶ Monthly, Fractal Count

그림 1

  Fractal count 20부터 23까지 급격한 하락 이후 횡보하는 느낌입니다.


▶ Monthly, Wave Structure

그림 2

  그림 2의 빨간색으로 표시된 파동을 Zig-zag로 본다면 A-C 추세선을 돌파하지 못하여 조금 애매한 상황입니다.


▶ Weekly, Wave Structure

그림 3

  그런데 그림 3 weekly chart를 보니 A-C 추세선을 돌파한 이후 지지를 받는 모습이네요. 그렇다면 우선은 zig-zag 조정 패턴이 완성된 것으로 봐야겠습니다.

  하지만 타원으로 표시된 파동을 x-wave로 보고 조정이 연장되고 있다고 판단하는 것이 옳을 듯합니다. 물론 이후 파동 전개를 확인해야 할 것입니다.

현대제철 Charts (2012-11-26)

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 

▶ Monthly, Fractal Count

그림 1

  Fractal count 18 이후의 파동을 어떻게 봐야 할까요?


▶ Monthly, Wave Structure

그림 2

  Zig-zag처럼 보이는 패턴 이후 현재 진행 중인 파동이 어떤 패턴으로 진행될지 지금 판단하기는 쉽지 않습니다.


▶ Weekly, Wave Structure

그림 3

  그림 2처럼 zig-zag 패턴 :5-:3-:5가 완성되었다면, 마지막 :5가 그림 3처럼 터미널 충격패턴으로 마감되었다고 판단해야 합니다. 그런 다음 새로운 조정 패턴이 시작되었다고 봐야겠죠. 그림 3의 타원으로 표시된 부분의 파동이 x-wave의 역할을 하면서, 이후 조정 패턴이 얼마나 길어질지 예측하기 힘든 상황이 되는 것이지요.

  그림 2의 zig-zag가 완성되지 않았다고 가정하면 어떻게 될까요? 그렇다면 마지막 :5 중 1번 파동이 그림 3의 터미널 패턴으로 완성된 후 2번 파동에 이어 3번 파동이 진행 중이라고 봐야 할 것 같습니다.


2012년 11월 26일 월요일

KOSPI Charts (2012-11-23)

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 

▶ Weekly, Wave Structure


그림 1


▶ Daily, Wave Structure

그림 2


▶ Daily, Fractal Count

그림 3


  Fractal count 20 이후 x-wave로 연결된 이중 조정(Flat과 Zig-zag combination)이 완성되는 듯한 모습입니다.

  Fractal count 27이 20 이후의 하락을 마감하는 역할을 할 수 있을까요? Weekly chart를 보면 조금 짧아보이는데요...


2012년 11월 23일 금요일

LG패션 Charts (2012-11-23)

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 

▶ Monthly, Wave Structure

그림 1

▶ Weekly, Wave Structure

그림 2


  늘어진 flat a-b-c 조정의 마지막 c 파동이 :5-:3-:5-:3-:5 충격 패턴으로 진행되는 것처럼 보입니다. 그 중 세 번째 파동 :5가 한 단계 낮은 수준의 미달형 충격 패턴으로 마감되고 네 번째 파동이 시작된 듯한 모습입니다.

KOSPI 증권 Monthly Charts (2012-11-23)

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 

▶ Monthly, Wave Structure

그림 1

▶ Monthly, Fractal Count

그림 2

  a-b-c 조정의 마지막 c 파동이 :3-:3-:3-:3-:5 터미널 충격 패턴으로 진행되는 것처럼 보입니다. 만약 그렇다면 :L5가 완성될 때까지 시간이 수 개월 더 소요될 듯 합니다.


2012년 11월 21일 수요일

KOSPI200 Charts (2012-11-21)

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 

▶ Monthly, Wave Structure

그림 1

▶ Monthly, Fractal Count

그림 2

▶ Weekly, Wave Structure

그림 3

▶ Weekly, Fractal Count

그림 4

  고점은 낮아지고 저점은 높아지는 모양입니다. 그림 3과 같은 :3-:3-:3-:3-:3 패턴의 완성을 기다려야 할까요? 

  그림 4에 보이는 지난 주의 Squat이 불완전해 보이는 패턴의 완성을 예시하는 것이라고 기대하기는 좀 성급해 보이는군요.


Proof - Gradient of ANFIS w.r.t a premise parameter

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 




Neuro-Fuzzy Control and Time-Series Forecasting

※ Elliott Pattern Helper Add In
  • Download Add In for Excel 2007 
  • Download Add In for Excel 2003 


  이번 글에서는 지난 글에 이어 ANFIS를 사용하여 시계열(time-series) 데이터를 분석하고 그 결과를 기반으로 향후 흐름을 예측하는 방법을 하나 더 소개하겠습니다.

  지금 소개할 방법이 지난 글에 소개된 것과 조금 다른 점은 두 개의 ANFIS를 사용한다는 것입니다. 실제 예측을 수행하는 'Plant'로서의 ANFIS와 이것에 제공될 Control 신호를 생성하는 'Controller' ANFIS가 함께 사용되는 일종의 Neuro-fuzzy contol 형태를 구성하는 방법입니다.


그림 1. Neuro-fuzzy control

  ※ 참고 논문: George S. Atsalakis, Kimon P. Valavanis, 'Forecasting stock market short-term trends using a neuro-fuzzy based methodology', 2009.


1. 모델링

   기본적인 발상은, 주가의 흐름을 아래와 같이 descrete-time 도메인 상의 process-controller equation으로 이해하는 것입니다.

        x(k+1) = f(x(k), u(k))
        u(k) = g(x(k))

  시간 k+1에서의 주가 x(k+1)은 시간 k에서의 주가 x(k)와 control signal u(k)에 의해 결정되며, 궁극적인 문제는 x(k)로부터 u(k)를 찾는 것입니다.

  위 논문에서 사용된 controller ANFIS의 training data set은 [x(k), x(k+1); u(k)]입니다. x(k)x(k+1)은 각각 시간 kk+1에서의 주가의 변화이며, u(k)는 |x(k) - x(k+1)|입니다. Membership function은 Gaussian 2로 각각의 input에 대해 5 개, 총 25 개의 inference rule로 400 epoch 동안 training을 수행했습니다.

  예측을 수행하는 plant ANFIS에서 사용할 signal u(k)의 값은 learning 이후의 controller ANFIS에서 input (x(k), xd(k+1))에 대해 계산한 output입니다. 여기서, xd(k+1)은 시간 k+1에서의 주가의 변화 x(k+1)을 미리 알 수 없기 때문에 사용한 값으로서, 시행착오 끝에 시간 k에서의 3일 이동평균 변화량을 채택했다고 합니다.

  주식시장의 프로세스 모델이라고 볼 수 있는 plant ANFIS는 data set [x(k-1), x(k), u(k); x(k+1)]으로 training한 후, 예측을 수행하도록 했습니다. 각각의 input에 대해 Gaussian 2 membership function을 3 개씩, 총 27 개 rule로 100 epoch 동안 training했습니다.


2. 테스트 시스템

  위 논문에 소개된 neuro-fuzzy control 모델을 그대로 적용하였으며, membership funciton만 Gaussian 2가 아닌 Gauss membership function을 사용하여 테스트했습니다.

  테스트 데이터로는 680 여개의 KODEX 레버리지 지수 데이터를 사용했으며, 이를 90%와 10%로 나누어 각각 training data set과 검증용(check) data set으로 나누어 테스트를 진행했습니다. 


3. 테스트 결과

  아래 그림 2는 controller ANFIS에 의한 output입니다. Training data set에 대해서는 실제 u(k)와 계산된 u(k) 값이 거의 일치하는 것처럼 보입니다. 물론 마지막 input (x(k), xd(k+1))의 output은 실제 값과는 차이가 나는 것을 볼 수 있으며, 이는 당연한 결과일 것입니다. 


그림 2. Controller ANFIS Output

  다음 그림은 plant ANFIS를 100 epoch 동안 training하는 과정에서의 learning error 변화를 나타낸 것입니다.


그림 3. Plant ANFIS의 epoch 별 에러 추이

  위 결과에 따라 epoch 수를 72회로 조정하여 plant ANFIS를 다시 training했습니다. 다음은 controller ANFIS가 산출한 u(k)를 input signal로 받아 plant ANFIS가 예측한 output, 즉 x(k+1) = f(x(k-1), x(k), u(k))를 실제 주가 흐름과 대비하여 표시한 그림입니다. 


그림 4. Plant ANFIS Output

  위 그림 3의 결과를 보면 '모양은 비슷해 보이지만.., 한 발 늦는군...'요. 논문에서는 4,000여 개가 넘는 data로 training한 후 60%가 넘는 'hit ratio' 결과를 얻었다고 하는데요, 위 결과는 그에 미치지 못했습니다. Training data의 양을 늘려야 할까요..?


4. 결 론

  정리를 하면, 주식 시장의 프로세스 모델을 아래 식에 기반한 neuro-fuzzy control로 모델링하여 주가의 단기 흐름을 예측해 보았습니다.

        x(k+1) = f(x(k-1), x(k), u(k))
        u(k) = g(x(k))

  Control signal u(k)는 3일 이동평균 변화량에 대한 controller ANFIS의 output입니다. 

  위 참고논문에서는 연구 성과를 타 연구들과 대비하여 'Hit Ratio가 조금 더 낫다'라고 스스로 평가하고 있습니다. Hit ratio 60% 정도면 'Random Walk'보다는 좋겠지요...? 

  물론, 제가 직접 테스트한 결과 수치는 그 정도까지 나오진 않았습니다만 training data의 양을 크게 증가시키고 동일한 membership function을 사용한다면 더 좋은 결과가 나올 수도 있을 것입니다.