본문 바로가기

backup

[커뮤니케이션이론 요약]상징적 상호작용주의(Symbolic Interactionism) 상징적 상호작용주의(Symbolic Interactionism) 학자 : 조지 허버트 미드(시카고 학파) - 언어와 같은 상징으로 인간은 상호작용을 통해 의미를 공유한다는 이론 - 사회적 실재를 구성하는 의미는 본질적으로 존재하는 것이 아니라 언어의 사용으로 서로간에 협상 조정된 결과이며, 인간은 자신에게 주어진 자아라는 의미의 기초 위에서 행동한다는 이론 - 자아(Self) = I + Me : 자아는 주체(I)와 객체(me)의 지속적인 결합 과정임 : 너가 전제되어야만 성립할 수 있는 개념인 나(타문화의 이해가 있어야만 나의 문화를 알 수 있다.) : 인간관계의 총합(self라는 개념에 내가 살아온 경험이 모두 있음) - Me= the generalized other(일반화된 타자) : 상대방이 바라보.. 더보기
FX마진거래 파운드 달러 변곡점 매매 7월 24일 시스템 트레이딩을 하다보면 요즘 경제적 이슈가 무엇인지 달러가 내리는지 오르는지 알지 못하고 관심도 가지 않는다. HFT는 로직에 따라서 차이는 있겠지만, 대체적으로 1초 이내에 거래가 시작되어서 끝나게 된다. 단순히 빨리 거래를 들어가는게 목적이라면 HFT보다는 flash order라고 하는게 좀 더 정확한 표현이다. 거래 기회를 확보하고 슬리피지를 줄인다는 점에서 flash order 역시 매우 중요하긴 하다 이처럼 거래 시간이 극도로 짧은 HFT를 하다보면 특히 순간 순간의 값들에 대해서만 모델링하고, 적용을 하게 되고, 관심을 가지다 보면 정말 경기가 어떻게 되는지도 알지 못한다. 작은 금액으로 수동으로 실거래 해보는 것은 그나마 경기에 관심을 좀 가지려고 하는 점이 있다. HFT가 활성화되면서 .. 더보기
C#에서 SIMD 쓰기 대실패 ㅋ C#에서 SIMD쓰기 대실패 ㅠ.ㅜ 어셈블리어 맨땅에 헤딩하면서 며칠 고생하면서 c++ dll 만들어서 c#과 연동시켰더니, 성능이 말이 아니다. ㅠ.ㅜ 어셈블리어 처리 속도는 하늘을 나는데ㅋ, C#에서 c++ dll 읽어서 처리하는 속도가 너무 느리다. 이건 0.1ms 줄이려고 하다가 3ms 더 늘어나는 상황이다. ㅋ 어쩔 수 없이 메인 프로그램을 c++로 가야만 할 것 같다. 개발 생산성은 c#이 훨 빠르지만, 더 빠르게 가려니 속도가 발목을 잡는다. 어차피 c++에서 주로 놀려고 생각은 하고 있었는데, 시기를 좀 빨리 땅겨야할 것 같다. c#하다가 c++하면 무지 귀찮은데 ㅠ.ㅜ 더보기
SIMD INSTRUCTION SET SUMMARY Intel® 64 and IA-32 Architectures Software Developer’s Manual -------------------------------------------------------------- INSTRUCTION SET SUMMARY 5.1.1 Data Transfer Instructions MOV Move data between general-purpose registers; move data between memory and generalpurpose or segment registers; move immediates to general-purpose registers CMOVE/CMOVZ Conditional move if equal/Conditional move i.. 더보기
C# Timer 성능 측정을 위한 ms이하 까지 측정 가능한 Timer C# 성능 측정을 위한 Timer 연산의 성능 개선을 위해서는 정확한 성능 측정이 필요로 한데 특히 HFT와 같이 고속 연산을 하기 위해서는 1ms이 아니라 1/1000 ms도 중요하다. 하지만 일반적인 C#에서의 timer 즉 C# DateTime 객체를 써봐야 1ms 단위까지 밖에 측정을 할 수가 없기 때문에 마땅한 방법이 없다. 한가지 방법으로는 연산을 십만번쯤 반복하고 걸린 시간에서 십만을 나누는 것도 하나의 방법이겠지만, Win32에 있는 QueryPerfomanceFrequency와 QueryPerfomanceCounter를 사용하면 1ms 이하의 속도를 측정할 수 있다. QueryPerfomanceFrequency는 CPU의 클락을 측정하고 QueryPerfomanceCounter에서 클락이.. 더보기
[SIMD 병렬 프로그래밍]범용 레지스터 SIMD 프로그래밍을 하기 위해선 C++ 코드 안에 어셈블리어로 구현을 하는데 아래와 같이 _asm{ } 안에 구현을 하게 된다. 여기서 eax, ebx 등은 지정된 값인데, 바로 범용 레지스터라고 하는 부분이다. 레지스터는 CPU에 바로 저장이 되는 영역으로 속도가 매우 빠른 반면 용량은 작다. 그 중에서 범용 레지스터는 연산을 위해서 쓰이는 부분들인데, 요즘의 CPU에서는 메모리에서 레지스터로 데이터를 불러와 연산을 하고 결과를 다시 메모리로 돌려보내게 된다. 비쥬얼 스튜디어에서 위와 같이 디버깅 과정에서 레지스터를 보려면 Debug > windows > registers 를 선택하면 된다. 각 범용레지스터는 그 역할이 있는데 그것은 다음과 같다. - EAX(Accumulator Register) 누.. 더보기
[SIMD 병렬 프로그래밍]MMX, SSE, AVX MMX, SSE, AVX는 모두 SIMD 명령어셋인데, cpu 차원에서 지원을 하는 것이다. 기술적으로 MMX -> SSE -> AVX로 발전되어서 최근의 CPU는 AVX를 지원한다. MMX(MultiMedia eXtension) 1997년 펜티엄 CPU에 탑재되었고, SSE(Streaming SIMD Extensions)는 1999년 펜티엄 III CPU부터 탑재되었다고 한다. SSE는 MMX가 가지고 있던 부동소수점 연산에서의 문제등을 해결하였다. AVX(Intel Advanced Vector Extensions)는 최근 CPU들에 적용이 되고 있는 명령어 칩셋이다. 최신의 AVX 명령어셋은 256bit 연산을 한번에 처리 할 수 있다. 더보기
[SIMD 병렬 프로그래밍]SIMD 프로그래밍이란? SIMD는 Single Instruction Multiple Data의 약자이다. 한번의 지시로 한번에 여러 연산을 동시에 일어나도록 하는 것을 의미한다. 일반적으로 하는 프로그래밍은 모두 SISD 즉 Single Instruction Single Data이다. 즉 한번의 지시로 한번의 연산을 하는 것을 의미한다. 펜티엄 이전의 CPU는 SISD만 지원을 하였는데, 현재의 CPU는 SIMD를 지원한다. 인털 C++ 컴파일러를 쓰기는 하는데, 인텔 CPU만 되는 것은 아니다. 이런 연산이 가능한 이유는 CPU가 한번에 처리할 수 Data양이 늘었기 때문이다. 128bit를 하나의 package로 처리를 하는 CPU라면은 byte연산의 경우 16개 데이타를 하나의 package로 묶어서 한번에 처리가 가능을.. 더보기
[FX마진거래 HFT]요즘 테스트 진행하고 있는 FX마진 HFT 거래입니다. HFT은 여러가지 전략이 많이 있죠, 대표적인 HFT로직인 마켓메이킹에서는 수익 곡선이 자대고 쭉이라고 하는데, FX마진거래는 유동성 공급 개념이 일반 주식이나 선물옵션하고 많이 다릅니다. 그러나 HFT로직은 마켓메이킹만 있는 것은 아니고, FX마진거래에서도 여러가지 HFT로직이 있습니다. 어제 하루 동안 FX마진거래에서 HFT 실제 테스트 한 결과입니다. 당연히 모의거래가 아니라 실거래입니다. 모의였으면 슬리피지가 없어서 손해날일도 거의 없죠. 우선 테스트로 유로달러 하나만 가지고 해서 진행을 한 것이고, 어제 하루 동안 총 700번 거래를 하였고, 2000불이 4000불이 되었네요. ㅎㅎ 전체 거래내역은 로직이 드러나기 때문에 보여드리기는 힘들지만, 평균 거래 들어가서 나오는 시간이 1초 미만입니다... 더보기
[금융공학]주가는 금융공학에서 가정하는 랜덤워크를 따르지 않는다. 금융공학에서 블랙숄즈 뿐만 아니라 더 상위 개념인 이토과정, 브라운 운동 등이 모두 기본적으로 가정하는 것은 주가가 랜덤워크(Random walk)를 한다는 것이다. 과연 그것은 진실일까? 아래의 논문에서는 주가가 랜덤워크 모델을 따르지 않는다는 것을 증명한다. Lo, A.W and A. C MacKinlay (1988): Stock market prices donot follow Random Walks: Evidence from a simple specification test, Review of Financial Studies, Vol1, p 41-66 이 논문에서 마켓마이크로스트럭쳐 등의 영향을 받지 않기 위해서 주간 단위로 여러가지 경우를 가지고 과연 브라운 운동에서 말하는 확산항이 분산이 1인 .. 더보기