반응형

주식 소수점 거래란?


주식 소수점 거래란 무엇인지 알아보고, 해외 주식 소수점 거래가 가능한 미니스탁 앱으로 해외 주식 소액 투자를 해보자.

 

현재 시점(11월 21일)에서 전날 종가 기준 아마존(AMZN)의 1주당 주가는 3,099.40 USD 달러이다.

이걸 원화로 환산하면 약 346만원 정도가 되는데, 나 같은 소액 투자자 입장에서 아마존 1주를 매수하기엔 사이즈가 매우 크다.

 

그래서 아마존 주식을 0.1주만 살 수는 없을까? 해서 찾아본 것이 '주식 소수점 거래'이다.

주식 소수점 거래를 사용하면 0.1주 0.01주 등으로 주식을 나눠서 살 수 있기 때문에 소액 투자자들도 작은 금액으로 부담 없이 주식을 구매할 수 있다.

 

현재 국내에서 소수점 거래를 지원하는 서비스를 찾아보니 신한금융투자의 알파, 한국투자증권의 미니스탁이 대표적인 것으로 보인다.

 

이 중 보다 쉽고 간편한 UI를 제공하는 미니스탁을 사용해보기로 했다.

728x90

 

미니스탁(ministack)


미니스탁(ministack)은 한국투자증권에서 제공하는 해외 주식 소수점 거래 서비스이다.

해외(미국) 주식을 쉽게 거래할 수 있도록 주식 초보자(일명 주린이)에게 타겟팅 되어있는 것 같다.

 

미니스탁 가입 절차

일단 앱을 설치하고 계좌 개설을 해보자.

아래 주소로 접속하면 미니스탁 구글 플레이 페이지로 이동한다.

 

미니스탁 - Google Play 앱

천원으로 시작하는 해외주식 - 미니스탁 환전, 수수료 부담없이 내맘대로 쇼핑하듯 원화로 유명한 해외 기업에 투자해보세요. ■ 쉬운 계좌개설 • 비대면으로 지점 방문없이 모바일로 • 계좌

play.google.com

 

앱 실행 후 '시작하기' 버튼을 누르면 계좌 개설이 시작된다.

본인인증 절차까지 끝내면 아래와 같이 8천 원 상당의 주식을 준다는 페이지가 나온다.

이는 12월 31일까지 진행하는 신규 가입 이벤트 혜택이다. (연장될 수 있음)

 

나는 아마존을 사고 싶었으므로, '아마존 주식받기'를 선택하고 넘어간다.

이어서 진행하면 이렇게 '서비스 신청 및 약관 동의' 페이지가 나오는데,

이때 주의해야 할 점은 선택 마케팅 동의를 반드시 체크해야 한다는 것이다.

그렇지 않으면 주식 제공 이벤트 혜택을 받을 수 없는 것 같다.

(개인 정보와 주식의 맞교환..)

'본인 명의 계좌 확인' 페이지에서는 본인이 주로 사용하는 계좌번호를 적으면 된다.

(입/출금 내역 알림이 뜨는 계좌로 적을 것을 추천)

이후 1원 보내기를 클릭하면 입력한 내 계좌로 1원이 입금된다.

입출금 내역을 살펴보면 네 자리 인증번호(9253)가 보이는데 이걸 입력하고 넘어간다.

계좌 개설이 완료되면 가입 완료 페이지가 나온다.

내가 선택한 아마존 주식(8천 원) + 랜덤 하게 선택된 구글 주식(2천 원)을 받게 된다.

이제 로그인하면 주식이 도착했다는 팝업이 뜬다.

이벤트로 제공되는 주식은 '받기' 버튼을 눌러야 최종적으로 받아지는 것 같다.

'받기' 버튼을 누르면 바로 매수 주문이 접수된다.

주식 매수 방법

주식을 사려면 일단 계좌에 돈이 있어야 한다.

먼저 위에서 만든 계좌로 돈을 이체하기 위해 계좌번호를 알아보자.

계좌번호는 아래 지갑 모양의 버튼을 누르면 확인이 가능하다.

계좌에 돈을 이체했다면 사려는 주식 종목을 선택해야 된다.

아래 차트 모양의 버튼을 누르면 테마별 종목을 소개하는 페이지가 나온다.

테마별 추천 종목이 꽤 상세하게 잘 정리되어 있다.

인공지능(AI) 테마를 선택해보니 이런 식으로 테마별 간단한 설명과 관련 종목이 소개된다.

나는 아마존을 더 매수하기로 했다.

구매하기 버튼을 누르면 이렇게 원화(\) 단위로 매수할 금액을 입력할 수 있고,

금액에 따른 예상 수수료와 예상 주식수도 보여준다.

(현재는 건당 1만 원 이하는 월 10회 무료 수수료 이벤트 적용)

구매하기 버튼을 누르면 주문이 접수되고,

아래쪽 지갑 모양의 버튼을 누르면 주식주문내역에서 주문 현황을 볼 수 있다.

다음날 체결이 완료되면 이런 식으로 체결 환율,체결 가격(1주당), 체결 주식수를 보여준다.

(최근 업데이트로 1주당 체결가격을 달러로도 보여주도록 개선되었다.)

주식 매도 방법

만약 주식을 매도하려면 종목 페이지에서 팔기 버튼을 클릭하면 된다.

주식을 팔아서 남은 돈은 다른 주식을 또 사거나 출금할 수 있는데,

출금을 원할 경우 이체 버튼을 눌러서 다른 은행 계좌로 보내면 된다.

(단, 1회 500원수수료가 부과된다.)

 

미니스탁(ministack) 장/단점


미니스탁의 장점

  • 직관적인 UI와 원화 표기
  • 소수점 거래 가능
  • 테마별 종목 추천

 

미니스탁의 단점

  • 실시간 거래 불가능
  • 정확한 체결 시점 및 가격을 알 수 없음
  • 인기 종목만 거래 가능
  • 원화 표기로 인해 달러로 계산하기 어려움
  • 다소 높은 거래 수수료와 낮은 환율 우대
  • 출금 수수료

 

미니스탁은 직관적인 UI와 원화 표기, 테마별 종목 추천 등으로

해외 주식을 처음 시작하는 사람들은 사용하기가 매우 편하다는 장점이 있다.

 

그리고 꾸준한 장기투자를 생각하는 사람이라면 소수점 매수를 통해

매주 or 매달 일정 금액씩 부담 없이 투자할 수 있다는 점도 장점이 될 것 같다.

 

하지만 미니스탁의 체결 방식으로 인해 불편한 점도 생기는데,

미니스탁의 주문 체결 방식은 다음과 같다.

  1. 밤 10시 이전까지의 주문들을 취합
  2. 10시에서 다음날 오전 6시까지 주문 체결 작업
  3. 장 종료 후 오전 6시 30분까지 체결된 주식 분배
    ex) 0.1개를 주문한 10명이 있다면, 1주를 10개로 배분
  4. 오전 9시 30분에 최초 고시환율을 반영한 평가금액 표시

그러므로 실시간 거래가 어렵고, 매수/매도 시점을 조절할 수 없고,

정확한 체결 시점 및 가격도 알 수 없다 단점이 있다.

 

그리고 일부 인기 종목만 거래 가능하다는 점도 단점으로 작용한다.

 

마지막으로, 다소 높은 거래 수수료와 낮은 환율 우대 그리고 출금 수수료도 단점으로 꼽을 수 있겠다.

무료 수수료 이벤트가 적용되지 않는 경우 매수/매도 수수료는 각 0.25% 이며,

환전 수수료는 매수는 60%, 매도는 80% 우대 환율 적용된다.

출금 수수료500원으로 큰 금액은 아니지만, 다른 증권사를 이용하면서는 지불해본 적 없는 수수료이기에 다소 아깝게 느껴졌다.


주식 소수점 거래란 무엇인지와, 해외 주식 소수점 거래가 가능한 미니스탁 앱을 간단히 살펴보았다.

 

정리하자면, 주식 초보자에게는 해외 주식 투자에 대한 문턱이 낮아지는 장점이 있어 충분히 추천할만하다.

하지만 해외 주식 거래를 어느 정도 해본 투자자에게는 조금 답답하게 느껴질지도 모르겠다.

 

단점을 더 많이 쓴 것 같긴 하지만, 나 같은 소액 장기 투자자라면

소수점 거래만으로도 다른 단점들을 일부는 커버할 수 있을 것 같다.

 

일단 올해 12월 31일까지 주문금액 1만 원 이하 월 10회 무료 수수료가 제공되므로,

이걸로 당분간 아마존 주식을 사모아 볼 생각이다.

(2020.12.18 추가 - 무료 수수료 혜택 기간이 2021년 12월 31일 까지로 연장되었다.)

반응형
반응형

C/C++의 빌드 모드


C/C++의 Debug 및 Release 빌드 모드의 의미와 차이, 각 모드별 장단점에 대해서 알아보고, 추가로 성능 측정을 통해 실제 환경에서 비교해보자.

 

보통 C++로 코드 작성 후 결과물을 실행 파일로 만들기 위해서는 빌드 작업을 해야만 한다.

 

이때 Visual Studio와 같은 IDE에서는 Debug 또는 Release 빌드 모드를 선택할 수 있다.

이는 사실 C/C++ 컴파일러의 최적화 옵션의 차이인데, Visual Studio에서는 편의를 위해 빌드 모드를 분리해놓은 것이다.

 

Visual Studio의 빌드 모드 선택 항목

현업에 종사하거나 숙련된 개발자는 당연히 이 차이를 알고 있겠지만,

주로 C/C++ 개발을 처음 접하는 분들, 특히 학생들은 Visual Studio 기본값인 'Debug'로 빌드해서 배포를 하는 경우가 종종 있다.

 

잘못된 빌드 모드로 배포할 경우 성능 저하가 발생하거나 프로그램 실행 불가 등의 문제로 상당히 고생할 수 있다.

그러므로 각 빌드별 특징을 잘 알고있어야 한다.

728x90

 

Debug vs Release 차이점


그럼 Debug 모드와 Release 모드 빌드는 어떤 차이점이 있을까?

 

일단 이름에서도 알 수 있듯,

Debug 모드는 디버깅에 적합한 빌드이며,

Release 모드는 배포를 적합한 빌드이다.

 

빌드 구성의 세부 속성에 따라 일부 차이가 있을 순 있겠지만,

대체로 두 빌드에 대한 차이점을 요약하면 다음과 같다.

Debug Release
  • 코드 최적화 하지 않음
  • 바이너리(실행 파일) 크기가 크다.
  • 코드 실행 속도가 느림
  • 메모리 사용량이 많음
  • 바이너리에 디버깅에 필요한 정보가 포함됨
  • 컴파일 속도 빠름
  • 코드 최적화 과정 수행
  • 바이너리 크기가 작다.
  • 코드 실행 속도 빠름
  • 메모리 사용량이 적음
  • 디버깅에 필요한 정보가 거의 포함되지 않음
  • 컴파일 속도 느림 (최적화 과정이 포함되므로)

물론 코드 실행 결과는 동일하다.

 

각각의 빌드 모드는 언제 사용해야할까?

 

Debug 빌드는 코드 실행 속도가 느리지만, 디버깅이 용이하고 컴파일 속도도 빠르므로

한창 개발이 진행중인 프로젝트에서 개발자가 디버깅을 할때 사용하는 것을 권장한다.

 

Release 빌드는 코드 실행 속도가 빠르고 배포하기도 용이하므로 (VC++ 재배포 패키지) 개발이 완료되고,

실제 사용자에게 전달할 때 사용하는 것을 권장한다.

 

그러나 Release 빌드에서도 Debug 빌드에서 확인되지 않은 문제점이 발견되므로

Release 빌드에서의 테스트도 필수라고 할 수 있다.

 

Debug vs Release 성능 비교


그럼 Debug 빌드와 Release 빌드에서 성능 차이는 얼마나 발생하는 것일까?

 

간단한 테스트를 통해 각 빌드의 코드 실행 속도와 메모리 사용량을 비교해보자.

다음 테스트 결과가 모든 케이스를 대표하지는 못하겠지만, 참고용으로 활용할 수는 있겠다.

 

테스트는 '소수 구하기'이다.

#include <iostream>
#include <vector>
#include <Windows.h>

bool isPrime(int x)
{
    if (x <= 1)
    {
        return false;
    }

    for (int i = 2; i < sqrt(x); ++i)
    {
        if (x % i == 0)
        {
            return false;
        }
    }

    return true;
}

int main()
{
    int n;
    std::vector<int> vec;
    LARGE_INTEGER st, ed, freq;

    std::cout << "소수 개수 : ";
    std::cin >> n;

    QueryPerformanceFrequency(&freq);
    QueryPerformanceCounter(&st); // 측정 시작

    for (int i = 0; vec.size() < n; ++i)
    {
        if (isPrime(i))
        {
            vec.push_back(i);
        }
    }

    QueryPerformanceCounter(&ed); // 측정 완료

    std::cout << "소요 시간 : " << (double)(ed.QuadPart - st.QuadPart) / ((double)freq.QuadPart);
    system("pause");

    return 0;
}

100,000개의 소수를 구하는 방식으로 Debug, Release 빌드 각각 테스트하여 비교해볼 것이다.

 

빌드 환경

  • Windows 10 19H2 x64
  • Visual Studio 2019
  • Debug x86(/MDd /Od), Release x86(/MD /GL /O2 /Oi)

 

1. 실행 파일 크기 비교

Debug와 Release 모드로 빌드한 실행파일의 크기 비교

  • Debug  - 71.5KB (73,216 바이트)
  • Release - 15.0KB (15,360 바이트)

=> 약 4.7배 차이

 

2. 실행 속도 비교 (100,000개, 3회 평균)

Debug와 Release 모드로 빌드에 따른 실행 속도 비교

  • Debug  - 3.02014초
  • Release - 0.24319초

=> 약 12.4배 차이

 

3. 메모리 사용량

Debug와 Release 모드로 빌드에 따른 메모리 사용량 비교

  • Debug  - 1,000KB
  • Release - 844KB

=> 약 15%(156KB) 차이

    (단, 실행 파일의 크기가 커질수록 오차가 발생할 것이다.)


Debug 빌드와 Release 빌드 모드의 의미와 차이, 각 모드별 장단점에 대해서 살펴보았다.

각 빌드의 성능 측정 결과, 실행 파일 크기는 4.7배, 실행 속도는 12.4배, 메모리 사용량은 15% 정도 차이가 발생했다.

 

실제로 성능을 측정하여 비교해본 건 처음인데,

이번 케이스에서는 예상보다도 많은 차이를 보이는 것 같다.

 

위 내용을 참고해서 Debug와 Release 빌드를 적절히 활용하길 바란다.

반응형
반응형

VCRUNTIME140.dll 시스템 오류, 왜 발생하는 걸까?


간혹 프로그램을 실행할 때 아래와 같은 시스템 오류를 만나게된다.

 

VCRUNTIME140.dll 오류창

"VCRUNTIME140.dll이(가) 없어 코드 실행을 진행할 수 없습니다. 프로그램을 다시 설치하면 이 문제가 해결될 수 있습니다."

VCRUNTIME140.dll 시스템 오류가 발생하는 원인과 해결 방법에 대해 알아보자.

먼저, VCRUNTIME140.dll은 Microsoft Visual Studio 2015의 VC++ 런타임 라이브러리 중 하나이다.

 

대부분의 경우 현재 시스템에 필요한 파일이 설치되지 않아서 발생하지만,

바이러스 또는 악성코드에 의해 해당 파일이 지워져서 발생할 수도 있다.

 

그러므로 필요한 파일만 다운받아주면 실행이 될 것이다.

 

(but. 잘 사용하던 프로그램이 갑자기 실행되지 않는 것이라면, 백신부터 설치하고 바이러스 검사를 해보자..)

728x90

 

해결 방법은?


1. 재배포 패키지를 설치한다. (Best)

아래의 사이트로 들어가서 'Visual Studio 2015용 Visual C++ 재배포 가능 패키지'를 다운받아 설치하면 된다.

 

Visual Studio 2015용 Visual C++ 재배포 가능 패키지

Visual C++ 재배포 가능 패키지는 Visual Studio 2015를 사용하여 빌드된 C++ 응용 프로그램을 실행하는 데 필요한 런타임 구성 요소를 설치합니다.

www.microsoft.com

이때, 본인의 운영체제(OS)에 적합한 파일을 선택해서 다운받아야 한다.

  • 32비트 : vc_redist.x86.exe
  • 64비트 : vc_redist.x64.exe

but. 사용중인 운영체제의 종류(비트 수)를 모른다면?

아래 글을 통해서 알아보자.

 

윈도우 OS 비트(bit) 수 확인하는 방법 (Windows 7/10)

OS 비트(bit) 수? 프로그램을 설치하거나 문제가 발생했을 때 운영체제의 비트 수를 알아야할 경우가 종종 발생한다. 운영체제(OS)의 비트 수를 확인하는 방법에 대해 알아보자. 최신 운영체제는 

itisguide.tistory.com

 

요즘은 많은 PC들에 64bit OS가 설치되어 있으므로 x64를 받으면 대부분 해결될 것이다.

만약 잘못 선택했다면, 아래와 같은 에러가 뜨면서 설치가 안될 것이므로 x86용 파일로 다시 받고 설치하자.

 

Microsoft Visual C++ 2015 재배포 패키지 (64비트용)

 

2. 필요한 DLL을 직접 다운받는다.

만약 1번 방법으로 해결되지 않는다면, 아래 사이트에서 DLL을 직접 받아서 옮겨주자.

 

누락된 DLL 파일들을 무료로 다운로드받으세요 | DLL‑files.com

DLL-FILES.COM - 귀하를 위한 DLL 문제 해결 솔루션! 누구나 한 번쯤 "****.dll 파일을 찾을 수 없습니다..." 팝업 메시지를 보신 적이 있을 것입니다. 하지만 여러분, 이제 문제는 모두 끝났습니다! 컴퓨

ko.dll-files.com

먼저 우리가 필요한 VCRUNTIME140.dll 부터 찾아서 다운받아주자.

이렇게 필요한 파일을 입력하고 검색하면

DLL-FILES.com에서 VCRUNTIME140.dll 검색

검색 결과가 나오고

DLL-FILES.com의 검색 결과

클릭해보면 아래쪽에 다운로드 리스트가 보인다.

VCRUNTIME140.dll 검색 결과

Version은 가장 높은걸 선택하면 되고,

각 Version별로 Architecture가 32/64(bit)로 나뉘어진다.

 

32bit 운영체제를 사용하고 있다면, 32bit 파일만 다운받아서 아래 경로에 넣어준다.

C:\Windows\System32

하지만 64bit 운영체제를 사용중이라면 32bit, 64bit 둘다 다운받아서 각각 아래 경로에 저장하자.

(물론 실행해야할 프로그램의 bit 수를 안다면 이 중 하나만 다운받으면 되겠다.)

64bit : C:\Windows\System32
32bit : C:\Windows\SysWOW64

주의. 파일을 다운로드하면 zip 파일로 받아지는데, 반드시 압축을 풀어서 dll 파일만 옮겨야 한다.

 

dll 파일을 모두 옮겼다면 다시 실행해보자.

바로 실행이 될 수도 있겠지만, 또 다른 에러가 발생한다면 위의 방법으로 똑같이 다운받아서 옮겨주면 되겠다.


이렇게 VCRUNTIME140.dll 시스템 오류의 발생 원인과 해결 방법 2가지에 대해서 살펴보았다.

시스템 환경에 의해 한 가지 방법으로 해결이 안될 수 있으니, 각자 상황에 따라 적절히 활용하면 되겠다.

반응형

+ Recent posts