26장. 옵션
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
이전 장에서는 소프트웨어 시스템의 경제적 가치를 할인된 미래 현금 흐름( )의 합계로 모델링했습니다. 이러한 흐름을 변경할 때 가치를 창출합니다:
-
더 많이, 더 빨리, 더 높은 확률로 수익 창출하기
-
더 적은 비용으로, 더 늦게, 더 적은 가능성으로 지출하기
소프트웨어 디자이너로서 이 모델 안에서 일하는 것은 이미 쉽지 않은 일입니다. 디자인이 너무 많거나 너무 빠르지도 않고, 너무 적거나 너무 늦지도 않은 골디락스 같은 세상에 살고 있습니다. 하지만 잠깐만요, 더 있습니다. (쉬운 일이라면 모두가 이미 하고 있을 것이고 이 책에 대한 변명도 필요 없겠죠). 때로는 상충되는 또 다른 가치의 원천이 있는데, 바로 옵션성입니다.
수십 년 전 저는 월스트리트에서 트레이딩 소프트웨어로 일했습니다. 평소 좋아하던 대로 배경 공부를 하다가 옵션 가격을 발견했습니다. 저는 토끼굴로 들어갔습니다. 저는 최근에 테스트 주도 개발(TDD)을 발명했고, 연습 주제를 찾고 있었습니다. 옵션 가격 책정은 답이 알려진 복잡한 알고리즘이라는 점에서 좋은 예처럼 보였습니다.
저는 먼저 기존 옵션 가격 책정 공식 테스트를 구현했습니다(이 과정에서 부동소수점 숫자를 비교할 때 엡실론이 필요하다는 사실을 발견했습니다). 그 과정에서 옵션에 대한 직관이 생겼고, 그 직관은 소프트웨어 설계에 대한 일반적인 생각으로 흘러나오기 시작했습니다.
이러한 알고리즘을 모두 구현할 수는 없지만 제가 배운 교훈을 알려드릴 수는 있습니다( 정말 '이해'하고 싶다면 직접 실습해 보시길 권합니다 ):
-
"다음에 어떤 동작을 구현할 수 있을까?"라는 질문은 구현하기 전에도 그 자체로 가치가 있습니다. 깜짝 놀랐습니다. 저는 제가 한 일에 대한 대가를 받고 있다고 생각했습니다(이전 장에 따라). 그렇지 않았습니다. 저는 대부분 제가 다음에 할 수 있는 일에 대한 대가를 받고 있었습니다.
-
"다음에 어떤 행동을 구현할 수 있을까?"라는 질문은 포트폴리오에 행동이 많을수록 더 가치가 있습니다. 포트폴리오의 규모를 늘릴 수 있다면 가치를 창출한 것입니다.
-
"다음에 어떤 행동을 구현할 수 있을까?"라는 질문은 해당 포트폴리오의 행동이 가치 있을수록 더 가치가 있습니다. 어떤 행동이 가장 가치가 있을 것인지, 얼마나 가치가 있을 것인지는 예측할 수 없지만...
-
구현할 수 있는 옵션을 계속 열어두기만 하면 어떤 항목이 가장 가치가 있는지 신경 쓸 필요가 없습니다.
-
(이것이 가장 좋은 방법입니다.) 가치에 대한 예측이 불확실할수록 옵션의 가치는 (그냥 구현하는 것보다) 더 커집니다. 변화를 수용하면 기존 소프트웨어 개발이 가장 극적으로 실패하는 바로 그 상황에서 창출하는 가치를 극대화할 수 있습니다.
금융 옵션을 처음 접하는 분들을 위해 간단한 입문서를 준비했습니다.
가격이 있는 물건부터 시작하세요. 1달러에 감자 한 개. 나 1달러 ...