(2022.2.9. 여기 온라인에 처음 작성해 공개) 아래 글은 이혁주 교수(서울과학기술대학교 행정학과)와 계획가 및 진보계열 연구자간 논쟁이 담긴 이메일을 실시간으로 올린 것이다. 2017.5 집권 후 문재인 정부 부동산정책과 토지의 탈상품화 논의를 둘러싸고 벌어진 논쟁을 담았다. 당시의 시대적 혼란에 대해 학계와 전문가가 어떻게 이해하고 있었는지를 보여주기 위해 기록으로 남긴다. 1차 연구사료로 이용되기 바란다.
주제어: 집값, 부동산, 과학, 측정, 스칼라십
등장 인사: 이혁주(서울과기대), 전강수(대구카톨릭대), 김경민(서울대), 박진백, 이태리(국토연구원), 김수현, 변창흠(세종대), 이창무(한양대), 박은철(서울연구원), 이준구(서울대)
참관: 대한국토도시계획학회 및 한국행정학회 회원, 국토연구원 및 서울연구원 도시계획 부서 연구자, 민간 전문가 등 47명
찾기: Ctrl + F를 하고 찾는 문구를 입력할 것
안내 말씀: 이 사이트를 방문한 방문자에 관한 일체의 정보가 기록되거나 보관되지 않습니다. 이 사이트는 구글 site 도구를 이용해 만들었는데, 이 도구는 관련 정보를 제공하지 않습니다. 여기에 기술된 연구 아이디어와 자료, 파일 등 일체를 인용, 사사 없이 자유롭게 이용할 수 있습니다(논문/저서화 포함).
최근 몇 년 동안 부동산 전문가들 사이에서 집값 문제를 두고 격렬한 논쟁이 있었다. 이 논쟁은 크게 투기 원인론(투기 때문에 집값이 높다는 주장)과 과잉 규제 및 공급 부족론의 충돌로 요약된다. 여기 실린 내용은 이러한 주요 논쟁 외에도 관련 주제를 상세하고도 광범위하게 논의한 결과를 모아 놓은 참여관찰 기록이다. 통계적 검증과 정식분석(formal analysis)을 거친 결론을 다수 포함하고 있기 때문에, 좌우가 크게 충돌하는 부동산문제의 핵심 쟁점에 관한 다수 전문가의 지혜와 학술적 성과를 집약한 내용이라고 보아도 크게 문제가 없다.
1. 관찰 결과
주요 내용은 다음과 같다.
첫째, 2003년 노무현 정부 이후 부동산 정책을 보수와 진보의 대립적 구도에서 분석한 결과, 투기원인론은 근거가 부족하고 노무현 정부 이래 오른 주택가격은 팬데믹 요인을 제외하고 대부분 진보정권 부동산정책의 산물이다. 또한 주택가격 상승도 투기 억제의 실패 때문이 아니라, 오히려 진보정권의 정책이 투기를 자극한 결과였다. 좀 더 구체적으로, 주택거래 전수(全數) 정보가 존재하는 문재인 정부 때 자료를 분석하면, 당시 정부의 반복적 시장개입이 주택시장의 투기장적 요소(가격, 거래물량, 거래가격 분포의 산포도)를 자극하면서 임기 중 주택가격을 지속적으로 상승시켰다. 투기원인론은 지난 수십년 동안 여러 저자가 다양한 경로를 통해 반복적으로 발신했음에도, 공통적으로 인과론적 측정에 기반한 것이 아니고 경험적 규칙성에 관한 인문학적 해석에 가까운 것이었다. 좀 더 기술적으로 아래와 같은 내용이 논쟁과정에서 경험적 근거가 확보되었다.
● 보수는 주택가격 하락기에 집권했고 진보는 주택가격 상승기에 집권한 결과, 보수정권에서 주택가격이 안정되었고 진보정권에서 주택가격이 상승했다는 문재인 정부 청와대와 진보 일각의 집값 주기론은 통계적으로 지지되지 않는다. 그런 주기성은 보수와 진보의 상이한 정책이 낳은 주택가격의 순환변동이었음이 다양한 통계 모형에서 일관되게 확인된다. 2022년 보수정권의 등장 후 급락했던 서울 아파트 가격은 주택가격 변동의 기저 기제 변화에 따른 평균회귀 현상이었다. 2022년 5월 전후로 문재인 정부 시기 가격상승 추세에서 진보정권의 정책 효과를 제거하면 가격은 하락 추세로 전환되는데, 이는 바로 주택가격의 정책주기론이 예측하는 바이다. 여타 요인들은 유의하지 않거나 유의한 변수도 정권 교체 전후 별다른 변동이 없어서, 이들 요인을 이용해 실연(實演)하면 정권교체 후 급격한 가격하락을 재현해 낼 수 없다. 주택거래 마이크로 자료가 제공되지 않는 노무현 정부의 경우 시장의 투기장적 지표를 사용할 수 없어 한계는 있지만, 여기서도 정권이 보수정권으로 바뀐 직후 주택가격 시계열에서 노무현 정부의 정권효과를 제거하면, 주택가격이 상향 추세에서 하향 추세로 급격하게 바뀌는 것을 통제된 실험환경에서 확인할 수 있다.
● 2008년 글로벌 금융위기 이후 문재인 정부 출범시까지 과잉 유동성 때문에 서울의 주택가격이 높았다는 주장은 검토 대상에 포함된 대부분의 과잉 유동성 관련 지표가 통계적으로 유의하지 않아 지지되지 않았으며, 유의한 일부 지표에서도 그 영향은 크지 않았다. 여타 금융요인도 마찬가지로 설명력이 불분명했다. 이후 문재인 정부 때 오른 주택가격은 정부요인이 2~3, 팬데믹 요인 1의 비율로 구성되었고 각 요인은 유의했다. 이 비율은 측정 모형에 포함한 변수군에 따라 다소 차이는 있지만, 문헌에서 거론한 변수 가운데 검토대상으로 선정한 모든 변수군의 모형에서 비슷한 결과를 얻었다.
● 보수정권에 비해 진보정권의 부동산 정책은 시장에 대한 기대(expectation)의 이질성(heterogeneity)을 증가시켰다. 그 결과 진보정권 시기에는 시장 수요곡선이 보수정권과 비교해 상향 이동했으며, 이는 두 정권의 시장 성과에 큰 차이를 초래했다. 글로벌 금융위기가 발생했던 2008년 이후 통계를 이용한 분석 결과에 따르면, 정권의 성격 차이가 수요곡선의 이동 여부와 정도를 좌우했는데, 이는 역대 정권에서 주택 가격의 안정 여부가 개별 정책의 성격보다 정책의 전반적인 기조와 강도 차이에 의해 결정되었음을 시사한다. 이 경우, 서울 주택 가격의 설명변수로서 경제 변수의 영향은 정권 변수에 비해 매우 제한적인 것으로 나타나게 되며, 실제로도 그러했다. 심지어 문재인 정부 시기 서울 주택가격을 일체의 경제변수를 생략한 임의행보 모형(random walk with drift model)으로 근사하는 것도 가능했다.
둘째, 그러나 이러한 분석결과에도 불구하고 높은 집값이 진보정권의 산물이라는 보수와 시장주의자의 주장 역시 문제의 본질과 큰 괴리가 있다. 2017년 5월 문재인 정부 출범 때 기존 아파트 단지에서 건축비가 서울 집값에서 차지하는 비중을 측정하면 2,30%에 불과했다. 이 말은 주택공급에 따른 각종 부작용(과밀 혼잡, 경관 파괴, 수도권 집중, 투기와 불로소득 조장)을 억제하고자 서울 아파트 단지 주택에 부과한 일종의 피구세(Pigouvian tax)가 집값의 7,80%에 달했다는 의미이다. 그런데 계획가는 토지이용계획과 용도지역제를 통해 주택공급에 절대적인 영향을 미친다. 이 피구세는 이런 계획제도적 요인이 주택의 본원가격(fundamental value)에 반영되어 시현된 계획결과(planning outcome)로서, 서울 아파트 단지에서 토지의 기회비용이 제로임을 시사한다. 이 지표를 이용해 서울 주택가격에서 여러 가지 요인이 차지한 비중을 따져 보면, 문재인 정부요인은 애교 수준이다. 이 피구세율은 계획계의 유구한 직업 정체성(professional identity)에 기반한 실무적 관행으로, 체계적인 규범적 분석을 토대로 설정된 것은 아니었다. 이렇게 높은 세율이 지난 수십년 동안 서울 주택가격에 존재했는데, 그 크기는 담배에 부과된 세율 74%와 비슷하고, 전국 대도시권에서 정도 차이는 있지만 광범위하게 관찰된다. 이러한 사실은 2025년 현재도 불변이다. 주택가격에 존재하는 피구세율이 이렇게 높다는 것은 주택의 추가공급을 통해 획득가능한 추가적인 사회적 순편익이 그에 비례해 크다는 것을 시사하고, 그만큼 주택의 과소공급이 심하다는 의미이다.
2. 해석
서울에서 주택이 이 정도로 과소공급된 것이라면, 과잉유동성과 투기 때문에 집값이 높았다고 믿었던 문재인 정부의 대책은 시장전망의 불확실성을 증가시켰을 가능성이 높았다. 실제로 문재인 정부가 들어선 이후 거래가격의 산포도(dispersion)는 계속 확대되었다. 거래가격 분포의 산포도 증가는 시장전망의 이질성 증가를 보여주는 지표로서, 공급부족이 아니라면 임기중 시종일관 확대되는 패턴이 관찰되어서는 안 된다. 이뿐만 아니라 각종 투기억제 대책은 가격 기대가 높은 소수의 시장참여자로 수요-공급자 풀(pool)을 좁혔다. 효과의 가역성(reversibility)에 관해서는 논란의 여지가 있지만, 이렇게 고액 거래자 중심으로 재편된 풀이 거래가격 분포의 산포도 확대와 결합하여 수요-공급곡선의 상향 이동과 거래가격의 상향 조정을 유발했다. 당시 분양주택의 공급축소는 잘 알려져 있었지만, 정부요인과 같은 충격이 거래가격에 미친 영향을 수요-공급분석 틀로 옮겨 다시 해석하면, 거래량이 평균 기준 이전 정권과 큰 차이가 없었던 재고주택 시장에서조차 공급곡선이 수요곡선과 거의 같은 크기로 상향 이동(즉 좌측 이동)했고, 그 결과 거래가격이 대폭 상승했다.
시장의 기대가 변할 때, 이런 변화가 반영된 수요-공급곡선은 거래량과 거래가격을 얼마든지 같은 방향으로 혹은 반대 방향으로 변하게 할 수 있다. 좀 더 구체적으로, 심화된 부정적 시장 기대가 거래량 감소와 결합할 때 주택가격 상승속도는 더 높게 나타났는데, 문 정부 시기 재고시장 대비 분양시장에서, 문 정부 전반기 재고시장 대비 후반기 재고시장에서 이 점을 확인할 수 있다. 이와 대조적으로 문 정부 전반기에 재고시장에서는 거래량 확대로 주택가격 상승이 후반기보다 더디게 진행되었다. 문재인 정부 시기의 분양시장과 재고시장을 해석할 때, 기대 변화 요인을 반영하지 않으면 일견 당혹스러운 통계들을 이해하기 매우 어렵다.
이렇게 정부의 시장충격이 새 아파트와 기성 아파트를 가리지 않고 주택시장의 수요-공급 양측면 모두에 가해진 결과, 당시 강력하게 통제되었던 가구신용 경로(household credit channel)조차 무력화되었고, 수요 및 공급곡선의 동반 상향 이동은 문재인 정부의 기대에 반해 임기중 집값을 큰 폭으로 올리는 기저 원인으로 작용했다. 당초 정부의 투기억제 대책은 수요곡선의 하향 이동을 노린 것이었다.
문 정부의 주택부문에 대한 충격은 28회 반복되었는데, 정부가 대책을 발표할 때마다 그 충격이 주택시장 안에서 투기장 지수를 자극하고, 투기장 지수와 주택가격이 상호 견인하면서 주택가격이 올랐다. 이어서 이렇게 주택시장 안에서 증폭된 가격은 주택시장 밖에서 정부 충격에 의해 임기중 수십 차례 다시 이중 증폭되는 확대과정을 겪었다. 그리고 정부 충격은 대체로 주택가격 변수를 매개로 금융시스템의 가계대출을 자극했고, 이런 자극은 시차를 두고 주택가격과 상호 견인하면서 주택가격을 다시 끌어올렸고, 정부의 반복적 개입은 이런 과정을 임기 중 수십 차례 되풀이 하면서 집값을 끌어 올리기를 반복했다. 이렇듯 정부 충격은 주택 및 금융시스템 전반에 폭넓게 반복 작용하면서 임기 내내 주택의 수요-공급 양측에 영향을 미치고 집값을 끌어올렸다. 자산의 가격은 투기 때문에 오르기도 하지만, 물건이 부족해도 경쟁적 과정(competitive bidding process)을 거치면서 오르기도 하는데, 정부 대책은 기왕의 공급부족으로 인한 가격불안을 더 부추겼다. 정부는 이렇게 자신이 올린 집값을 가격 거품으로, 그렇게 정부가 만든 시장에서 이루어진 주택거래를 투기로, 그리고 그런 시장에서 제공된 유인(market incentive)에 반응해서 거둔 거래 차익을 투기소득과 불로소득으로 이해했다.
과잉 유동성의 영향이 크지 않고 투기자금도 철저하게 통제되었지만, 문재인 정부의 반복적 시장개입이 이들의 역할을 대신하면서 정부는 주택시장을 투기장으로 만들고 유지시켰다. 여타 금융 요인들과 달리, 문재인 정부 시기에도 가계대출은 주택가격 상승의 직접적인 요인으로 일부 작용했다. 그러나 당시 증가했던 가계대출 가운데, 과잉유동성, 팬데믹 등 주요 교란요소를 통제한 후 문 정부요인이 직접 혹은 주택가격이라는 간접 경로를 통해 가계대출 증가에 미친 영향을 측정하면 120~130조원에 달한다. 이런 사실에 더하여 정부 및 팬데믹 결합요인이 문재인 정부 시기 집값 상승의 대부분을 설명하기 때문에, 당시 집값 상승의 원인을 가계대출 증가에서 찾는 것은 적절하지 않다. 결국 유동성과 민간 신용의 제한적 역할에도 불구하고, 정부의 반복적 개입으로 투기장이 형성·유지되었고, 이후 정부요인이 제거되자 얼마 지나지 않아 투기장은 빠르게 붕괴했다. 따라서 문재인 정부 시기는 유동성 공급과 신용 확대를 필수요소로 거론하는 기존 가격거품-붕괴 문헌의 전형적 사례들과 뚜렷하게 구별되는, 정부실패의 시기로 볼 수 있다.
이러한 분석결과를 논쟁 중에 드러났던 진보 부동산정책론의 허위성, 즉
광범위하게 관찰되는 인과론적 측정의 부재(虛)
통계적 유의도와 설명력, 상관관계와 인과관계의 혼동, 귀인(歸因) 오류와 다수의 허위 경험명제(僞)
일부 연구자에게서 보는 표본과 모집단의 동일시 혹은 기존 연구성과의 선별적 인용(僞)
어떤 진보 부동산정책론도 집값의 7,80%에 달하는 피구세의 출현 이유를 설명하지 못하고, 그 존재 또한 정당화하지 못하는 현실(虛)
등과 결합하면, 진보 부동산정책 사례의 하나로서 문재인 정부 대책에 임의적 요소가 적지 않았다는 시사를 얻는다. 이 시사를 통계모형으로 번역하면, 당시 집값을 임의행보(random walk with drift) 모형으로 근사할 수 있다. 실제로 임의행보 모형이라는 가설연역 모형(hypothetico-deductive model)을 이용하면 표준 통계모형으로 설명할 수 있는 가격 변동뿐만 아니라, 표준 통계모형으로는 설명할 수 없는 가격 변동까지 설명할 수 있다. 이를테면, 2019년 전후 주택가격이 일시적으로 안정되었던 시기는 임의행보하는 가격변동에서 흔히 관찰되는 현상이지만, 표준 통계모형으로는 구현할 수 없고 설명하기 힘든 현상이다. 이 모형에 따르면 그 구성원리상(by construction) 문재인 정부 시기 어떤 가격변동도 집값이 임의행보한 결과가 된다. 이 경우 문재인 정부 시기 주택시장에 어떤 일이 일어나도 이상하지 않다. 여기서 진보 허위 부동산정책론의 논리적 귀결로서 임의행보 모형의 설명력을 확인했다는 것은 넓게는 모형의 논리적 기원(起源)인 진보 부동산정책론의 허위성, 좁게는 문재인 정부 부동산 대책의 임의성을 경험적으로 확인한 것이 된다.
3. 종합 및 시사
요약하면, 서울 집값 문제는 주택을 가치재로 간주하는 사회 통념과 달리, 계획계와 한국 사회 전반에서 주택을 비가치재로 보는 분열적 관점이 낳은 모순이다. 왜냐하면 주택에 부과된 높은 피구세 그리고 건축비와 주택가격을 이용하면, 주택의 한계단위(marginal unit)에 대해 한국 사회가 부여한 가치를 곧바로 평가할 수 있는데, 이 평가에 따르면 주택이라는 재화와 자산의 순외부비용(net external cost)이 집값의 7,80%에 달하기 때문이다. 외부비용이 외부편익을 초과할 뿐만 아니라, 그 초과한 정도가 집값의 7,80%나 되는 가치재는 세상에 존재하지 않는다. 이렇게 나쁜 점(외부비용)이 좋은 점(외부편익)을 압도할 정도로 주택은 담배만큼이나 혹은 그 이상 나쁜 것, 즉 혐오재로 취급되었다. 주택이 이 정도로 나쁜 것이라면 사회적으로 최선을 다해 그 공급을 억제해야 했다. 이를테면, 논쟁 기간에 고밀화 등 추가적인 기성시가지 주택공급 확대 방안에 대해 다수의 계획가는 공급확대가 초래할 부작용과 인과론적 오류의 가능성을 거론하면서 부정적이거나 유보적 입장을 표명했다. 결과론적으로, 보수와 진보를 불문하고 계획가 일반은 비가치재적 주택관을 공유한다.
지난 수십년에 걸친 피구세율 통계에 따르면, 이러한 모순은 정권의 성향과 무관하게 그간 존재해 왔으며, 시장의 기대에 반하는 정부 개입이 잦을수록 더 뚜렷하게 시장에서 그 모순이 드러났다. 그리고 좌우는 자신의 입장과 일치하는 정책 결과를 시장에서 반복적으로 확인하게 되면서, 자신이 지닌 신념체계의 정당성을 더욱 강화하는 일이 마찬가지로 지난 수십년 동안 반복되었다. 예를 들어, 투기억제 대책의 시행으로 상승한 집값이 역설적으로 투기 대책의 정당성을 보여주는 시장 신호로 해석되었고, 이를 뒷받침하는 인지 기제(cognitive mechanism)가 문재인 정부 시기에 존재했다. 즉 유동성이 풍부한 시장에서 투기 때문에 집값이 전반적으로 높게 형성되어 있다고 믿을 때, 투기억제 대책을 시행했음에도 집값이 오르면, 이 오른 집값이 보수가 믿는 가격분포에서 생성되었을 확률(p1) 대비 진보 자신이 믿는 가격분포에서 생성되었을 확률(p2) 즉 p2/p1이 투기억제 대책 시행 전의 동일한 상대적 가능성(likelihood ratio) p2/p1보다 더 커진다. 이는 진보가 믿는 가격분포의 타당성을 실증하는 것으로서 지지 이론과 관찰이 일치하는 현상으로 이해되고, 이는 진보의 믿음이 올바르다는 움직일 수 없는 증거가 된다. 다시 말해 예상한 효과를 부정하는 사건이 발생했음에도, 역으로 투기원인론의 타당성을 실증한 사례로 해석되었다. 한편 보수정권에서는 진보정권의 정책기조를 뒤집는 정책을 시행하고, 그 정책결과를 합리화하는 정반대의 인과론적 인지 기제가 작동했다. 이렇게 좌우가 집권 후 자신의 지지 이론(theory)과 일치하는 시장의 결과물을 얻는 과정을 반복해 경험하게 되면서, 좌우 모두 자기강화적 신념 및 정책 과정에서 헤어나오기 힘들게 되었고, 양측의 긴장은 정치적 투쟁을 통해 해소되어야 하는 대상으로 변질되었다.
계획가 자신이 높은 집값을 초래하고, 양립 불가능한 상충적 인지 기제를 낳은 궁극적인 원인 제공자였음에도 불구하고, 이러한 사실을 인지하지 못한 채 계획가는 자신이 만든 인지 함정(cognitive trap)에 갇혀 서로 확신을 가지고 다투는 일을 반복했다. 한국의 부동산 문제는 주택 공급을 담당하는 전문가 집단으로서 상당 부분 계획가의 문제 의식 부재가 범사회적으로 확장되어 초래된 것이었다. 그리고 부동산 정책은 계획가가 설정한 인식 지평의 한계 안에서 논의되기를 반복했고, 이러한 반복은 좌우의 주기적 정책 갈등에도 불구하고 큰 변화가 없었으며, 서울의 주택 가격은 노무현 정부 이래 좌우 정책 주기에 연동되어 계획계가 설정한 가격을 기저에 깔고 순환적으로 변동했다. 그리고 정책논의 과정에 등장하는 반대 증거는 시사적 증거를 이용해 반론하고, 자신의 입장 역시 시사적 증거를 이용해 정당화하는 일이 흔하게 목격되었다. 이런 일은 인과론적 측정 없이 유령 명제(ghost proposition)를 활용해 정책을 논의하는 데 관대한, 이 분야의 오랜 관행 덕분에 가능했다.
그 결과, 유령 명제에 토대를 둔 정책적 입장임에도, 이런 관행 덕에 계획계 여러 인사들의 견해는 큰 도전을 받지 않고 그 권위와 때로는 신화적 지위를 유지할 수 있었다. 이런 정책 신화를 의문시하는 현상이 출현하면, 인과론적 측정의 유무에 크게 구애 받지 않고 사회과학적 유사명제(pseudo proposition)를 주장했던 관행에 따라 새로운 원인론을 자유롭게 쇼핑하여 '설명'할 수 있었다. 여기 논쟁은 처음부터 끝까지 그러한 '과학 명제'의 토대가 되었던 관측 과정의 공개와 결과물의 제시 요구, 이에 대한 당사자의 반발과 침묵의 전개 과정, 그리고 경험명제의 허위성 여부를, 주어진 정보의 한계 안에서 최대한 상세하게 기록한다. 부동산 정책은 사회과학 분야임에도 이와 어울리지 않게 고대 그리스의 자연철학에서 보았던 상상력의 경연장이거나, 인문학적 해석으로 제시된 당위적 주장의 장(場)으로 변한 모습을 신문 논설, 인터뷰, 학회와 TV 토론회, 유튜브(YouTube) 영상, 저서 등 공공의 공간에서 일상적으로 보게 되었다. 부동산 정책이 특히 논란이 많고 주장이 강했던 것은 부분적으로 학계의 이런 지적 풍토 때문이었다.
이런 부조리의 기저에는 계획계에 내재된 문화적 코드가 근인(根因)으로 자리 잡고 있었다. 계획가는 건축, 조경, 토목, 위생공학 등 기술 기반 분야에서 기원한 전문직으로서, 전통적으로 사회과학적 경험론보다는 공학적 처방과 설계 중심의 교육과 훈련을 받아왔다. 이러한 배경은, 인과 구조의 실증적 규명과 설명(theorizing)을 연구의 중심에 두는 사회과학 일반의 연구 풍토와 달리, 계획 이슈를 이해하거나 설명하기보다 처방하고 설계하려는 풍토를 학계 전반에 조성했다. 그 결과, 계획과 정책의 영역에서 논의와 합의의 출발점이 되는 검증된 인과 관계와 축적된 공통 이해가 충분하지 않았고, 이로 인해 논의의 기반 자체가 취약해지면서 생산적인 논의와 합의가 구조적으로 어려운 지형이 형성되었다.
계획가의 이러한 문화적 특성은 합리적 계획론(rational planning paradigm)이라는 규범적 준거가 작동하지 못할 정도로 계획가의 이성(理性)을 마비시켰고, 이는 공간계획은 물론 정치경제적 측면을 포함해 서울, 나아가 한국 사회 전반의 여러 영역에 걸쳐 파괴적인 영향을 미쳤다. 한국의 주택 및 부동산 문제가 계획가의 문화 코드 및 정체성과 깊이 얽혀 있어서, 최근의 계획환경 변화와 맞물려 과연 어느 정도나 현재의 혼돈에서 계획계가 탈출할 수 있을지 강한 의문이 들기까지 한다.
결론적으로, 계획가의 주택계획관은 주택가격과 부동산의 정치경제학을 이해하고, 나아가 관련 문제를 해결하는 데 있어 필수불가결한 개념이라는 사실이, 짧게는 지난 4년, 길게는 지난 7년에 걸친 논쟁을 통해 얻은 중요한 교훈이다.
이하 논쟁 원문(原文)
보낸이: 이혁주(서울과학기술대학교)
받는이: 전강수(대구카톨릭대)
안녕하세요. 다시 이메일 드립니다.
교수님은 2019.2.10. 투데이신문과 가진 인터뷰에서 “부동산 투기로 인한 문제를 해소하기 위한 전 교수의 해법은 명료하다. 세금제도, 특히 부동산 보유세를 강화하는 방향이 근본 해법이 될 수밖에 없다고 강조한다.”라고 했습니다. 이 진단은 공급론적 시각과 대비되는 진단입니다. 즉 집값이 높고 투기가 발생하는 것이 공급보다는 수요측 요인 때문이라는 견해입니다.
높은 서울 집값이 기본적으로 수요측 요인 때문이라는 주장은 공급이 대체로 부족하지 않다는 주장이기도 합니다. 그러나 진보계열 학자들의 저작 어디에도 주택공급 충분론의 타당성이 논증된 적이 없습니다. 정확히 말씀드리자면 시장주의자 포함 주택공급 과부족론 가운데 어느 것도 논증 혹은 부정된 적이 없습니다. 높은 집값의 투기원인론도 마찬가지입니다. 밀도규제 원인론에 따르면 투기와 같은 현상은 단기적 집값 등락을 잘 설명하지만 집값이 수십년간 건축비의 몇 배나 되는 수준에서 지속된 현상을 잘 설명하지 못합니다. <서울 집값, 진단과 처방> <그림 8-3>에 따르면 서울 아파트값에서 가격격차(=집값에서 건축비를 뺀 값)는 아파트값의 70% 내외가 됩니다. 이런 경향은 지난 수십년간 일관되게 서울에서 관찰됩니다.
교수님의 주장이 타당하다는 것을 어떻게 알 수 있는지 다음 질문에 답해 주셨으면 합니다.
(1)주택공급 충분론과 투기원인론의 논증 : 주택공급이 그런대로 문제가 없는 수준이라면 주택을 추가로 공급할 때 그 사회적 순편익이 별로 없거나 음수라는 말입니다. 즉 다음과 같습니다.
주택공급은 대체로 충분한 수준이다. (A)
--> 현 공급수준에서 주택공급의 추가 비용 > 추가 편익 (B)
그런데 제 비용-편익분석에 따르면 추가 비용<추가 편익으로서 이 결과는 언명 B의 부정 즉 ¬B이 됩니다. 따라서 ¬B→¬A이 되고 이 말은 ‘주택공급은 대체로 충분하지 않은 수준이다’라는 말이 됩니다. 그런데 다시 비용-편익분석에 따르면 추가 비용<<추가 편익이기 때문에 방금 도출한 명제 ‘주택공급은 대체로 충분하지 않은 수준이다’를 ‘주택공급은 충분하지 않은 수준이다’라고 고쳐 쓸 수 있습니다. 또한 위 추론과 별개로 수행한 정책실험에 따르면 사회적 최적 수준=1.5*현 공급수준입니다. 이 실험결과의 타당성을 특별히 부정할 이유가 없다면, ‘주택공급은 충분하지 않은 수준이다’라는 말을 ‘주택공급은 매우 부족한 수준이다’라고 다시 고쳐 쓸 수 있습니다. 주택공급 충분론을 논증할 수 없다면 진보계열 토지‧주택정책관의 기초가 붕괴되고, 주택수요 관리정책으로서 제안되는 각종 정책의 근거가 모호해지거나 부정됩니다. 즉 진보계열이 추구하는 탈상품화 논의 전체가 위협 받습니다. 지난번 이메일에서 3기 신도시 물량을 모두 서울에 공급할 때, 모형에 따라서는 서울 집값이 심지어 음수가 되기도 한다고 설명했습니다. 토지의 공공임대제를 시행해야 하는 이유도, 개발이익과 보유세에 집착할 이유도, 차액 지대를 모두 회수해야 할 경험적 토대도 부정됩니다(물론 이 실험결과는 이보다 신중하게 해석해야 합니다).
(2)두 경쟁가설을 통합적으로 설명하기 : 제 이론이 의미 있는 진실을 나름대로 반영한 것이라면, 밀도규제 원인론과 투기원인론을 통합적으로 이해할 수 있는 틀을 제시해주고 두 이론이 어떻게 양립할 수 있는지 설명 부탁드립니다. 즉 두 경쟁적 이론에 대한 통합적 설명(coherent rationalization) 방식을 제안해 주세요. 투기가 원인이라면 이 통합적 설명이 가능해야 합니다. 제 이론적 틀에서 투기현상은 자연스럽게 설명되고, 두 주장은 모순 없이 양립합니다. 투기론은 오히려 제 설명방식에 변용을 주고 추가 연구주제를 선사합니다.
(3)두 가설의 설명력 비교 : 경험모형을 이용해 투기원인론과 밀도규제 원인론이 높은 집값에 미친 영향을 비교‧측정해 주십시오. 만약 투기가 원인이라면 유동성 관련 변수가 실제 집값에 미치는 영향이 그 어떤 변수보다 클 것입니다. 우선 이 점에 대해 확인 부탁드립니다. 현실에서는 할 수 없는 실험이 모형에서는 가능합니다(counterfactual analysis). 이 결과를 토대로 <서울 집값, 진단과 처방> <그림 3-1>, <그림 3-2>, 일전 보내드린 논문에 포함된 유사 그림을 비교하고 제가 유도한 그림을 설명(rationalize)해 주십시오. 경제학자들은 가격거품=실제 가격 - 본원가격≒0이라고 말하는 사람도 있습니다(전에 보내드린 논문의 참고문헌에 있습니다). 서울 집값에서 투기로 설명되는 부분과 실수요로 설명되는 부분이 각각 얼마나 되는지도 알고 싶습니다(경제학자들의 이러한 설명방식에 제가 반드시 동의하는 것은 아닙니다). <서울 집값, 진단과 처방> <그림 8-3>도 마찬가지입니다. 밀도규제론에 따르면 현 집값에서 건축비를 제외하고 작지 않은 부분이 규제가 부과한 주택소비세(a Pigouvian tax)에 해당합니다. 과거 집값의 추세치로 볼 때 투기가 설명할 수 있는 부분이 많아 보이지 않습니다. 최근 급등한 집값은 추세가격을 크게 벗어나는데 이 부분은 문재인 정부 주택수요 관리정책에서 직접 기인하는 것으로 보이는데 현재 관련 연구를 진행하고 있습니다.
(4)투기원인론의 타당성이 부정되는 조건/사례 나열하기 : 주택공급 충분론과 투기 원인론의 타당성을 의문시하거나 부정해야 하는 경우 혹은 조건을 나열해 주십시오. 교수님의 주장이 과학이려면 이 점이 명확해야 합니다. 경험적으로 부정할 수 없는 명제(non-refutable hypothesis)는 과학이 아니라고 과학철학자들이 말합니다. 어떤 경우라도 신의 뜻이라고 설명할 수 있는 종교에서 신의 뜻을 부정할 수 있는 사례는 발견할 수 없고 그래서 과학이 아니라고 합니다. 20세기 초 상대성 이론의 등장과 함께 보편적 적용가능성이 부정된 뉴턴의 고전물리학도 수백년 동안 그 타당성이 수없이 입증된 바 있습니다. 자신의 주장과 일치하는 현상을 근거로 명제가 타당하다고 주장하는 것에 대해 과학철학자들은 비판적이고 저도 같은 생각입니다. 제가 주장하는 과소 주택공급론의 타당성이 부정되는 조건들은 보내드린 논문 여기저기에서 손쉽게 찾아볼 수 있습니다(다만 분석적 결과에 대한 해석은 전문가답게 신중하게 해야 합니다. 간혹 깊이 없는 상투적 비판도 듣습니다). 지금까지 한국에서 주택문제와 관련해 시장주의자, 계획가, 진보계열 학자간 논쟁이 이런 방식이었고, 이런 류의 언설이 지금도 글쓴이의 지향, 처방의 적정성과 관계없이 대중 매체를 채우고 있습니다. <서울 집값, 진단과 처방>에서는 이를 끝말잇기 놀이라고 불렀습니다. 교수님 포함 진보계열의 논설도 이 범주에 속한다는 것이 저의 판단입니다.
밀도규제 원인론에 따르면 서울에서 공급가능한 아파트 총량의 상한이 정해지면 이에 대응하는 아파트값 곡선의 시계열적 높이가 결정되고 유동성과 투기는 집값 곡선 위에서 상하 변동에 영향을 주는 정도가 됩니다(왜 주택 일반이 아니라 아파트만 논의해도 큰 문제가 없는지, 오히려 문제의 핵심을 찌르고 그 기초 원리가 무엇인지는 <서울 집값, 진단과 처방>을 참고하세요). 제가 보내드린 논문에 보면 유럽 여러 나라에서 집값이 금융위기 전후로 어떻게 변했는지 나옵니다. 유동성이 큰 영향을 미친 것은 사실이지만 결국 금융위기 후 집값이 붕괴하고 완만한 장기 상승추세로 복귀했습니다. 한국의 경우도 이와 유사한 방식으로 이해할 수 있다는 것이지요.
다른 학자들의 도움을 받아 회신하셔도 좋습니다. 그리고 혹시 저에게 자문하시면 교수님 편에 서서 논리개발에 도우미가 되어 드리겠습니다. 이 기회에 같이 공부해도 좋습니다. 한국의 계획계가 요구하는 논증의 질적 수준은 매우 높습니다. 과밀/혼잡과 같은 공간현상을 잘 다루지 못하면 계획가들을 설득하지 못합니다. 경제학자들의 주택공급론을 한 방에 무너뜨리는 논리로 무장한 것이 계획가들입니다. 계획가를 움직이지 못하는 한 해결되지 않습니다.
<서울 집값, 진단과 처방>의 저자들은 이번에 책을 하나 더 출간할 예정입니다. 이 이메일을 새 책에 포함할 예정입니다. 이 글 다음에 교수님의 회신을 삽입할 용도로 쪽을 비워 놓겠습니다. 출간 목표시점에서 역산할 때 7월 말까지 교수님의 글을 받아 보았으면 합니다. 원고 분량은 A4용지 5쪽 이내면 좋지 않을까 합니다.
혹시 몰라서 다른 분들 주소를 참조로 달았습니다. 회신하실 때도 참조 처리 부탁드립니다. 대단히 감사합니다.
2021.5.13. 이혁주 드림
---------- 원본 메일 ----------
보낸사람: "전강수"
받는사람: "Rhee, Hyok-Joo"
날짜: 2021-05-13 (목) 22:30:55
제목: Re: RE: 보유세 관련
이혁주 교수님,
회신이 늦어서 미안합니다.
뭔가 많은 연구를 하고 계신 듯 한데, 한 번 얼굴도 보지 않은 상태에서 저에게 무리한 요구를 하시는 느낌입니다.
함께 하는 분들과 계속 공동 연구 하셔서 좋은 성과 내시기를 기원합니다.
저는 제 일이 너무 많아서 교수님의 요청에 부응하기 곤란합니다.
양해 바랍니다.
전강수 드림
이혁주-->전강수
네, 잘 알겠습니다. 제가 무리한 요구임에도 불구하고 교수님께서 수고하셔야만 한다고 생각했던 이유를 말씀드리는 것으로 얘기를 접겠습니다. 제가 생각했던 이유는 여럿입니다.
첫째, 지금까지 여러 매체를 통해 하신 말씀에 대해 이 분야의 전문가로서 책임지셔야 한다고 생각했습니다. 최근에는 알릴레오에 출연하시기도 했습니다. 대중이 주목했고 주요 언론사도 마찬가지입니다. 원하든 원하지 않든 교수님은 강력한 지식권력의 핵에 있습니다. 그러나 권력에는 사회적 책임이 따릅니다. 자신의 논설을 한정하고 수정하고 때로 부정하는 일은 과학에서 일상적으로 일어나는 일입니다. 그것을 진보라고 부르기도 합니다. 교수님도 과학자이기 때문에 자기성찰해달라는 부탁이었습니다.
둘째, 제 논설이 가지는 학술적, 정책적, 정치적 의미 때문입니다. 교수님마저 논쟁을 회피한다면 진보계열 학자들의 스칼라십 전반이 의심받게 된다고 보았습니다. 교수님과 진보계열의 스칼라십이 무엇인지 보여 주셔야 할 때가 되었다고 생각했습니다. 혼자 힘으로 안 되면 힘을 합쳐서라도 하셔야 한다고 보았고, 거기에는 저도 힘을 보태겠다고 했습니다. 이건 특정 지향만의 일이 아니고 우리 모두의 일이라고 보았습니다.
셋째, 과학에서 지배적 관점에 의미 있는 질문을 할수록 그 가치는 높습니다. 제 이론에 따르면 진보계열의 토지‧주택정책 기조뿐 아니라 탈상품화 논의 전반의 타당성에 대해 재점검이 필요한 것이 됩니다. 모형에 따라서는 집값이 음수가 되므로 개발이익과 차액지대(differential rent)가 아예 존재하지 않는 경우도 있습니다(보내 드린 논문 참고. 단 논문에서도 경고했지만 수치는 신중하게 모형의 특성을 고려해 해석해야 함). 추가적인 기술적, 경험적 근거는 <서울 집값, 진단과 처방>에 있습니다. 교수님의 논설은 공리(axiom)로부터 연역적으로 만들어낸 명제가 아닙니다. 그 타당성은 경험 일치성과 설명력을 가지고 판단해야 할 사안입니다. 지금 학계에서 영향력이 큰 기성 학자들이 현 상황을 명료하게 정리해 주어야 하고 그것이 교수님과 우리 세대 학자들의 사명이라고 보았습니다. 그래야 학계에서 튼튼한 새싹이 자라고 무성해집니다. 교수님께서 젊은 학자들의 전범(典範)이 될 수 있도록 시간을 내어 주셔야 한다고 보았습니다.
넷째, 계획가는 서울시 아파트 단지 고밀화에 반대합니다. 그래서 변창흠 장관은 2.4대책에서 서울 아닌 곳에 대량으로 집 짓자고 할 수밖에 없었습니다. 그러나 문제의 발원처가 서울이고 아파트이니 어쩔 수 없이 더해진 것이 재개발‧재건축인이기는 한데, 진보계열에서는 투기가 원인이고 한국사회를 병들게 한다고 하니 사업방식으로서 공공주도를 선택할 수밖에 없었습니다. 그러다 보니 어렵게 마련한 대책임에도 불구하고 반에 반쪽 대책이 되었고 수도권의 시가지 확산만 초래하고 논자에 따라서는 서울고밀화보다 더 수도권 집중을 초래하는 정책이 되어버렸습니다. 최근 신임 국토부장관이 종전 국토교통부 입장과 달리 민간의 역할을 좀 더 중시하겠다고 했습니다. 모두가 조금씩 진실을 말하고 있지만 작은 부실이 모여 거대한 비과학이 되었고 이 괴물이 우리 자신을 속박한 사례입니다. 이러한 혼선이 이번 정부에서 극적으로 드러나기는 했어도 과거부터 있어 왔습니다. 교수님이 최근 모매체와 가진 인터뷰에서 이런 상황을 객체화해서 말씀하셨지만, 교수님도 이런 상황을 유발한 당사자 가운데 한 분이라고 보았습니다. 당사자인 만큼 방관자연하는 것은 책임 있는 자세가 아니라고 보았습니다. 여기에는 요즘 한참 신난 시장주의자도 포함됩니다. 아마도 이 정권이 잘못되기라도 비는 것 같은 모습도 종종 봅니다. 변창흠 장관의 손발을 꽁꽁 묶고서는 제대로 하지 못한다고 말한 것이 불과 몇 달 전 한국에서 벌어진 일입니다. 신임 국토교통부 장관도 오세훈 시장의 상황도 마찬가지일 거라고 봅니다. 계획가와 진보계열이 절반씩 책임이 있다고 보면 교수님도 그 절반에 대해 책임을 지는 자세가 필요하다고 보았습니다.
응답을 회피하기에는 교수님께서 설명하셔야 하는 이상현상(anomaly)이 너무 많다고 보았습니다. 이전 이메일에 나열한 것들입니다. 자신의 기존 이론과 일치하는 현상에만 근거해 논설을 펴는 것은 fallacy of confirmatory bias를 저지르는 것이 됩니다. 산타클로스 실재론을 뒷받침하는 관찰 결과는 아주 많습니다. 전 세계 젊은 부모들이 연말이면 하는 말에서, 12월 25일 아침 전세계 어린이 머리맡에서, 연말 TV 방송에서, 인터넷 산타 우체국에서, 수많은 어린이의 증언과 교보문고 도서를 통해서 확인할 수 있습니다. 제가 드리는 말씀은 산타클로스 실재론으로 설명되지 현상이 지나치게 많은데 반해, 산타클로스 허구론에 입각했을 때 비교적 자연스럽게 풀리는 퍼즐이 많다는 것이었습니다. 산타클로스의 모습을 어른이 되어서도 간직하자고 말씀하시는 것이 되기 때문에 교수님의 설명이 필요하다고 보았습니다.
교수님의 통찰력이 필요한 시기에 많이 아쉽습니다. 그래도 이러한 고민이 이 시기, 우리 세대에 있었다는 것으로 자위하고자 합니다. 다른 분들과도 이러한 고민을 공유할 필요가 있다고 보아서 참조를 여럿 달았습니다. 제가 국토학회 편집위원장 시절 토지공개념 관련 논문집을 꾸미면서 관여하셨던 분들과 몇 분을 추가했습니다.
여러 가지로 불편하게 해드려 죄송합니다. 교수님의 많은 가르침 부탁드립니다. 감사합니다.
이혁주 드림
이혁주-->전강수
참조: "변창흠" "김윤상" , "김용창" , "이석희", "정세은" , "우석훈 교수" , 김경민
안녕하세요. 이혁주 교수입니다.
무더운 여름 시골 물가 원두막에 배 내놓고 평상에 누웠다고 생각하시고 소일 거리로 생각거리 하나 드립니다. 가볍게 읽어보세요.
전강수 교수님은 얼마전 오마이뉴스 컬럼에서 제 질문에 답해 답한 바 있습니다. 아래 링크에 저의 반론이 있습니다.
유튜브 제 측정 결과에 따르면 문재인 정부 집값 상승은 정책실패시 나타나는 결과와 일치합니다. "투기억제책이 정교하지 못해서 집값이 상승했다"는 투기원인론자의 입장을 의문시하는 분석결과입니다. 퀴즈입니다.
1. 이 외생변수를 내생화하는 모형을 제시하라. 즉 투기와 주택정책의 강도간 상호작용 구조를 실현한 회귀모형을 제안하라. 여기서 외생 정권 더미를 내생변수로 취급하자면 정권 더미를 어떻게 조작해야 하는가?
2. 여기서 영가설은 무엇인가? 어떤 자료와 어떤 통계모형을 이용해 측정할 것인가?
3. Two way or multiple way interaction을 보여주는 회귀계수의 예상부호와 유의도에 대해 기존 정책자료 및 경험자료를 이용해 추정해 보라. 예상부호가 여러 가지일 수 있다는 점을 상기하고 시나리오를 구성하라. 어떤 시나리오가 경험자료에 가장 부합하는가? 문재인 정부 주택정책과 진보계열 일반의 탈상품화 논의의 전제와 이론에 주는 학술적 시사가 있는가? 있다면 그것이 무엇인가?
4. 2009년 금융위기 이후 서울 집값은 주택보급(률)과 무관하게 지속적으로 떨어졌다 상승하는 패턴을 보인다. 주택보급률을 x축에, 문재인 정부 집값을 y축에 그리면 수직선이 그려지는데, 앞서 기술한 논리의 연장선상에서 이 수직선은 공급요인이 아니라 수요측 요인 즉 투기요인을 제하고 설명이 불가능하다고 투기원인론자는 말한다. 매우 강력하고 설득력 있는 설명방식이다. 이때 문재인 정부에서 본 지속적 가격상승을 설명할 수 있는 유일한 출구(?)는 문재인 정부의 투기억제책이 정교하지 못해서라고 추론하는 것이다. 1~3번 질문에 대한 검토 결과가 이러한 추론에 던지는 시사는 무엇인가? 유동성 요인을 배제하고도 투기-->대응-->투기 +... 라는 과정을 통해 자체 가격 상승과정이 설명될 수 있는가? price bubble에 대한 historical record에 따르면 유동성이 fuel역할을 한다고 한다. 문재인 정부에서도 동일한 역할을 했는가? fuel 역할을 한 유동성과 다른 candidate factor는 무엇인가? 경쟁적 요인간 영향을 어떻게 분리해 측정할 것인가? 투기는 원인인가 아니면 결과인가? 문재인 정부 집값 상승은 투기 때문인가 아니면 정부의 정책실패 때문인가? 코멘트하라.
감사합니다. 이혁주 드림
<의미> 직전 이메일에서 이혁주 교수는 더 이상 논쟁을 하지 않겠다고 했음. 이메일 4는 양자간 암묵적 합의로 끝낸 논쟁을 전강수 교수가 오마이뉴스에서 다시 거론했다고 이혁주 교수가 해석한 것. 고밀화에 대한 이야기는 언론을 통해 간간히 나오기는 했지만, 집값 위기의 근원이자 본원적 처방으로서 서울 아파트 단지의 고밀화를 거론하는 것은 당시 전문가 가운데 이혁주 교수가 유일. 이 견해에 따르면 문재인 정부 수요억제책도 저밀 아파트단지 개발의 종속변수로 봄. 즉 고밀화를 통해 집값 안정화 기조가 정착되면 각종 수요억제책의 필요성이 줄어들 것이라고 봄.
이혁주-->전강수
서울과기대 이혁주 교수입니다.
첨부한 논문은 2017.5~2019.12까지 문재인 정부 기간 서울 아파트값을 분석한 논문으로서 투기와 정부 대책간 상호작용의 결과 집값이 상승했다는 내용을 담고 있습니다. 김경민 교수님 등 몇몇 분도 실명 인용했습니다. 이 분들의 경우는 유튜브 영상자료로서 최종 출판 때는 하이퍼링크만 다는 것을 고려하고 있습니다. 워낙 민감한 주제라서 실명인용은 가능하면 피하려고 합니다.
전강수 교수님의 비판에 대한 반론이 논문 뒤쪽에 실려 있습니다. 전 교수님께 검토 부탁드립니다. 제가 오해한 것은 없는지 바로 잡아 주셨으면 합니다. 그리고 반론을 논문 부록에 첨부하는 방안에 대해서도 고려해 주셨으면 합니다. 만약 다른 분도 토론에 참여하는 것도 가능하지 않을까 합니다. 가장 손쉬운 방법은 제 논문을 여러 필자들이 비판하는 것입니다. 아직 이런 류의 논문과 비평이 한 셋트로 투고된 적이 없습니다만, 만약 문의한다면 편집위원회에서 취지 자체는 환영할 것으로 예상합니다.
우선 검토해 보시고, 논문이 좀 더 다듬어지면 그때 다시 정식으로 요청드리도록 하겠습니다.
국토 및 수도권 공간관리 측면에서도 21세기 전반기 한국 계획사에 남는 실패사례가 될 것 같습니다. 계획계와 진보계열의 스칼라십 위기도 봅니다.
감사합니다. 이혁주 드림
추신: 워낙 중요한 주제로서 견해의 차이와 무관하게 비과학이 지배하는 주제라서 몇몇분을 더 초대했습니다. 처음 초대된 분께서는 놀라지 마시고 첨부한 논문을 잘 읽어 보시고 아래 링크를 열어 보세요. 전체적인 논지를 파악할 수 있습니다.
보낸이: 전강수
받는이: 이혁주
참조: : "변창흠", "김윤상", "김용창", "이석희" , "정세은", "우석훈 교수", 김경민
이혁주 교수님
몇 달 전에 긴 이메일을 보내시면서 제게 뭔가 제안을 하셨던 기억이 나네요(제안 내용은 잘 기억이 안 납니다).
그 이메일은 삭제해서 없고, 제가 교수님께 보내드린 회신 메일은 남아 있더군요.
그 회신 메일에서 저는 이렇게 말씀드렸습니다.
"뭔가 많은 연구를 하고 계신 듯 한데, 한 번 얼굴도 보지 않은 상태에서 저에게 무리한 요구를 하시는 느낌입니다.
함께 하는 분들과 계속 공동 연구 하셔서 좋은 성과 내시기를 기원합니다.
저는 제 일이 너무 많아서 교수님의 요청에 부응하기 곤란합니다. 양해 바랍니다."
그런데 이번에 또 제게 이메일을 보내셨네요. 다른 선생님들에게까지 참조를 거시면서요.
이번에는 집필하신 논문을 첨부해서 제게 논평과 의견을 요청하셨네요.
다시 한번 말씀드리지만, 저는 교수님의 연구에 대해 관심이 없습니다. 너무 바빠서 토론하기도 어렵습니다.
첨부된 논문을 열어보니 저에 대한 비판을 한 장이나 할애하셨네요.
제 주장에 관심을 보여주셔서 감사하기는 합니다만, 거짓 내용을 기술하셔서 난감합니다(14쪽).
"전 교수는 최근 고밀화론자와 직간접적 경로를 통해 후속 논쟁을 한 바 있기 때문에" <--> 저는 그런 논쟁을 벌인 적 없습니다.
"그의 견해는 이 논문의 분석 대상으로서 문재인 정부 부동산정책의 이념적, 정책적 토대가 된다." <--> 전혀 동의하지 않습니다.
저는 오래 전부터 문재인 정부 부동산 정책의 기본 방향이 잘못됐음을 지적해 왔습니다.
"전 교수가 이 논문을 사전 검토했다는 점도 전 교수를 비평 대상으로 선택한 이유다" <--> 저는 교수님의 논문을 검토한 적이 없습니다.
아래 메일에도 거짓 내용이 들어 있습니다. 제가 오마이뉴스 칼럼에서 교수님의 질문에 답한 바 있다고 하셨는데 그런 적이 없습니다.
사실 저는 교수님의 질문이 무엇인지도 모릅니다.
저의 공개된 견해를 비판하는 것은 교수님의 자유겠지만, 거짓 정보를 담아서 비판의 명분을 강화하려고 해서는 곤란하겠지요.
앞으로 더 이상 교수님으로부터 이런 연락을 받기를 원치 않습니다.
제가 너무 바빠서 시간과 에너지를 쏟기도 어렵고, 또 해 봐야 건강한 토론이 될 것 같지 않아서입니다.
부디 양해를 부탁드립니다.
전강수 드림
회신 감사드립니다. 회신에 대한 제 답은 천천히 하겠습니다.
아래 슬라이드는 제가 준비중인 문서의 내용인데 문제가 있는지 확인 부탁드립니다. 이견이 있다면 반론을 ppt 슬라이드 한 쪽에 적어 보내주시면 첨부해서 사용하겠습니다. Not a scientific statement, meaningless한 문장이다라는 설명도 있을 것 같습니다.
그리고 김경민/우석훈 교수 두 분의 경우 토론회에서 한 말씀들이라 제가 정확하게 인용하는 것인지 확인 부탁드립니다. 원하신다면 ppt 한 쪽을 보내주셔도 좋습니다. 발표자료에 첨부하겠습니다.
회신이 없으면 그냥 진행합니다. 명절 잘 보내세요. 이혁주 드림
수신: 전강수
참조: 남기업(토지자유연구소), 김윤상(경북대), 변창흠(세종대), 김용창(서울대), 강남훈, 김수현(세종대), 선대인(선대인경제연구소), 최배근(건국대), 임미화(전주대), 김경민(서울대)
안녕하세요. 서울과기대 행정학과 이혁주 교수입니다.
얼마 전 전강수 교수의 아래 글을 중심으로
여기 참조에 달린 분들이 보는 데서 이메일로 집값 논쟁을 한 적이 있습니다. 오늘 참조에는 몇 분을 더 초대했습니다.
전강수 교수에게서 문제가 되었던 내용이 최근 김경민 교수가 삼프로TV에 출연하면서 다시 반복되었더군요.
https://youtu.be/2ttJGyUwx04 50:20
아주 간단한 문제입니다. A→B인 추론이 있는데 전 교수는 명제 B가 true라고 하면서 명제 A가 true라는 전제하에 추론합니다. 이혁주 교수가 요구한 것은 A=true라는 전제가 참이라는 것을 보이라는 것이었습니다. 여기서 A는 지난 5~10년간 주택공급 수준, B=현 주택공급 수준인데, 이후 전 교수는 침묵했습니다. 김경민 교수의 경우는 주택공급 수준 대신 주택가격이라는 차이만 있을 뿐 문제의 formal structure는 동일합니다. 두 변수 모두 현재 벌어지고 있는 집값논쟁 그 자체를 대변하고 있고, 민주당을 중심으로 추진되고 있는 토지 탈상품화 정책논의의 배경이 되는 핵심 지표입니다.
수업용으로 준비했던 것인데 여기 첨부합니다. 순서대로 보실 것을 권합니다.
https://youtu.be/p3TfvteWnFc (서울 집값의 70%=주택보유/소비억제세+강남훈 교수 논설 비판)
https://youtu.be/3Eg0jheHIR8 (전강수, 김경민 교수 논설=fallacy of tautology)
https://youtu.be/RBp-zJ6LZJA (종합, 국회 발표자료)
최근 어느 매체에서인가 강남훈 교수가 말했던 것처럼 토론이 활성화되었으면 합니다. 과거 변창흠, 김용창 교수의 바람이기도 했습니다. 지금이 흔하지 않은 기회입니다. 여기 이메일에 회신 방식으로 반론이나 코멘트를 보내 주시면 위 두 번째 영상물 뒤에 첨부해 다시 올리겠습니다.
위 논설의 근거가 되는 논문 2편도 첨부합니다. 감사합니다.
이혁주 드림
수신: 전강수
참조: 변창흠(세종대), 김윤상(경북대), 김용창(서울대), 이석희(세종대), 정세은(충남대), 우석훈(성결대), 남기업(토지자유연구소), 선대인(선대인경제연구소), 이태경(토지자유연구소), 이진수(토지자유연구소), 이상경(가천대), 김수현(세종대), 천현숙, 최배근(건국대), 김경민(서울대), 임미화(전주대)
12월 17일 토지자유연구소 남기업 박사님께서 아래와 같은 이메일을 보냈습니다.
“그런데, 교수님. 정확히 어떤 문제를 제기하시는 것인지 이해가 되지 않네요.^^;”
이후 의문 사항을 좀 더 자세히 전체 회신으로 올려달라고 요청했는데 응답이 없군요. 논점 이해에 도움이 되도록 이 논쟁의 배경, 성격, 주요 논점에 대해 요약해 다시 설명드립니다.
이 논쟁은 2018년 대한국토도시계획학회 춘계 학술대회 “토지공개념은 헌법에 도입되어야 하는가?”라는 토론회에서 시작되었습니다. 이후 2019년 당시 학회지 ‘국토계획’의 편집위원장이던 이혁주 교수의 제안으로 관련 논쟁이 이어져 현재에 이릅니다. 이전 논쟁에서 공급론적 처방의 일환으로서 이혁주 교수의 밀도규제 원인론에 대한 비판이 있었고, 당시 이혁주 교수는 다른 학자들 특히 변창흠, 서순탁 교수한테 현 밀도규제의 적정성 혹은 투기원인론에 대한 구성적 논변 내지 논증을 요구했습니다. 이후 같은 필진을 중심으로 “토지공개념과 국토/도시계획”(보성각, 2021)에서 논쟁의 성과물이 담겼지만, 당초 계획과 달리 만족스럽게 정리되지 않았습니다.
전강수 교수에게 요구하는 것도 그 연장선상에 있는 동일한 내용인데, 전 교수의 논변은 시사적 증거(suggestive evidence)를 제시한 것으로서 conclusive하지도 해당 명제를 논증한 것도 아닙니다. 자세히 보겠습니다.
전 교수의 언급: “2017년과 2018년 서울과 수도권의 주택 공급량은 그 이전 10년 평균치와 5년 평균치를 모두 상회하는 수준으로 예측되고 있었다. 공급 측면에서 서울과 수도권의 집값 폭등을 유발할 만한 특이 요인은 없었다는 뜻이다.”
기호 정의부터 합니다.
x: 현공급수준, xbar: 과거 5~10년간 평균 공급수준
Fact: x=xbar+α (전 교수가 기술한 바)
Judgment: x는 충분/적정 즉 x* (전 교수의 판단)
여기서 xbar+α는 전 교수가 말한 “10년 평균치와 5년 평균치를 모두 상회하는 수준”을 말합니다. 그런데 Judgment로서 x*라는 말은 Fact로부터 x*=(xbar+α)*라는 것을 말합니다. 논리연산에서 x*=(xbar+α)*는 x*를 (xbar+α)*로 등치(等値)시킨다는 말입니다. (xbar+α)가 충분한 공급수준이려면 예년 공급수준 xbar가 그런대로 부족하지 않은 공급수준이라는 점이 전제되어야 합니다. 물론 이점에 대해 전 교수는 정당화 논거를 제시하지 않습니다.
다시 알아보면 이렇습니다. “10년 평균치와 5년 평균치를 모두 상회하는 수준”이 이를테면 5만호/년이라고 합시다. 그렇다면 2017, 2018년 공급수준이 5만호와 다른 공급수준 이를테면 20만호/년, 1만호/년과 같은 공급수준은 적정수준에서 배제한다는 뜻입니다. 전 교수에게 이 점은 분명하지 않습니다.
전 교수는 현 시점 공급수준의 적정성을 과거 시점 공급수준의 적정성 여부 판단으로 치환했을 뿐 과거이든 현재이든 공급수준의 적정성에 대해서는 어떤 이야기도 하지 않은 것이 됩니다. 즉 fallacy of tautology를 범했습니다.
정당화 논거가 없는 과거 시점 변수값에 근거해 현 시점 변수값의 적정성을 추론하는 것인데, 이런 논법은 김경민 교수에게서도 발견됩니다.
2018년 집값=(1+소득증가율 50%)*2008년 집값
> 2008년 집값
이기 때문에 2018년 집값이 적절한 수준이라고 주장한 김경민 교수의 추론과 형식상 동일합니다. 여기서 김 교수는 2008년 집값이 적절한 수준이라는 암묵적 전제를 이용합니다. ‘풍류대장’, ‘싱어게인2’에 출연한 참가자가 심사자석에 앉아 있는 것과 비슷한 상황입니다.
장하석 교수가 말한 것처럼
Otherwise all we can have is a chaotic situation in which each proposed fixed point declares itself fixed and all others variable if they do not agree with it (Chang, 2004: 40).
인 상황이 지금까지 벌어진 것입니다. 어느 라디오 프로그램에서인가 선대인 소장과 한양대 이창무 교수간 주택논쟁에서도 똑같은 일이 벌어진 바 있습니다.
그래서 장하석 교수의 관점이 대단히 흥미롭습니다. 왜냐하면 이 시각에 따르면 왜 지금까지 주택논쟁이 계속 헛돌았는지 그 원인을 인식론적 시각에서 설명할 수 있기 때문입니다. 평가대상을 평가기준에 포함하게 되면서 투기원인론자와 공급론자는 각자의 오염된 평가기준을 이용해 주택공급량과 주택가격의 적정성을 보았고, 자신의 기준에 맞지 않는다고 상대방의 주장을 논박하면서(장하석 교수가 말한 “variable”) 논쟁은 평행선을 그리고 서로 화성인으로 취급하게 되어버리고 말았습니다. 남기업 박사의 반응도 그러한 화성인 시각을 담고 있습니다.
이혁주 교수의 논법은 진보계열, 공급론자 모두에게서 보는 인식론적 논법의 한계를 어떻게 극복할 수 있는지 그 대안 하나를 제시합니다. 논쟁은 자기가 하고 싶은 말만 하는 것이 아니라 상대방도 이해할 수 있는 언어와 추론과정을 통해 대화하는 것입니다. 변창흠, 강남훈 교수가 활발한 토론을 희망했던 것도 이런 이유일 것입니다.
이혁주 교수의 밀도규제 원인론은 곧 계획가의 표준적 실무이자 관행인 현행 밀도규제의 비적정성을 주장하는 것입니다. 계획가가 취했던 가장 손쉬운 자기방어 방식은 밀도규제 원인론의 허점을 공박하는 것이었습니다. 김학열-이혁주(2021)에 실린 한양대 최창규 교수의 글과 이혁주-유상균(2021) 서두에서 보는 계획가의 반응(변창흠, 서순탁, 전강수 교수의 반응 포함)이 그런 것들입니다. 그런데 계획가의 이런 주장이 아무리 설득력이 있어도 계획실무의 타당성을 직접 보이는 것은 아닙니다. 우리에게 필요한 것은 시사적 논변이 아닙니다. 남 박사님의 냉소적 코멘트도 계획가의 비판과 같은 유형으로 보입니다.
다른 의미를 하나 더 설명드리겠습니다. 이혁주 교수는 수요가격과 공급가격간 격차 즉 가격격차를 주택보유/소비억제세라고 부르고 그 크기가 서울 아파트값에서 70% 정도 된다는 점을 보입니다. 이 개념화와 계산과정이 크게 틀린 것이 아니라면 최근 논란이 되는 양도세 중과, 기본소득토지세, 국토보유세 부과의 현실적 근거가 의문시됩니다. 이렇게 세금이 높은데 왜 그렇게 또 부과해야 하는지 설명이 필요하기 때문입니다. 그 인과론의 정당성은 차치하고. 기본소득토지세와 국토보유세가 논의되는 배경에는 공장용지, 상업용지, 임야 땅값이 마구 올라서 그래서 수천조원씩 땅값이 지난 몇 십년간 올라서가 아니고 기본적으로 집값이 높아서 많은 사람들이 경청하고 있는 것입니다. 그 중심에는 서울 아파트가 있구요. 그래서 높은 집값의 투기원인론에 기초한 기본소득토지세는 재검토가 필요하다는 말씀입니다. 주택용지가 아닌 땅값 문제는 또 다른 연구어젠다가 필요합니다. 차근하게 논의해야 하는데 지나치게 조급하고 치밀하지 못합니다.
김경민 교수도 마찬가지입니다. 전 교수가 주택공급량의 적정성을 논검증하지 못하는 모습을 앞서 보았고, 유동성과 투기도 원인은 아닌 것 같고(이전 이메일에 해당 논문 첨부), 그러면 집값이 높은 이유가 있을 터인즉 소득을 들고나온 것이 3프로tv에서 한 주장으로 보입니다. 김 교수는 두 가지를 오해하고 있습니다.
첫째, 소득이 오른다고 집값이 반드시 오르는 것은 아닙니다. 이론적 논의는 접어두고 그냥 통계만 보지요. 미국에서 1890년대부터 1980년대까지 100년 동안 소득과 가구수가 증가했지만, 이 100년 동안 실질가격은 凹字 모양(Shiller, 2015: Figure 3.1. 아래 그림 참고) 즉 비교적 일정한 수준을 유지했습니다. 다시 말해 demand pull 요인이 작용한다고 집값이 상승하는 것은 아니라는 말씀입니다.
둘째, 공급규제가 구속적인 상황에서 소득이 오르면 가격격차(=아파트값-아파트건축비=수요가격-공급가격)가 확대되는 것은 사실이지만, 이 가격격차가 장기적으로 존재하려면 공급규제가 전제되어야 합니다. 소득이 올라도 현재 서울 아파트값이 높은 이유를 설명하는 가격격차는 zero일 수도 있습니다(이혁주, 유상균(2021)의 Figure 4)
위 그림 Figure 4에서 소득, 가구수 등 demand shift factor의 값이 커져서 수요곡선이 상향 이동한다고 합시다(서울에서 아파트 공급곡선이 수직선이라는 것은 이미 이혁주, 유상균(2021)에서 논증). 이런 경우에라도 밀도규제가 없다면 장기적으로 A,B는 E로 수렴하고 그 거리 즉 가격격차는 0이 됩니다. A,B간 거리가 장기적으로 존재하는 경우는 오직 공급규제가 존재하는 경우입니다. demand pull factor의 변화와 관계없이. 따라서 KB주택가격 동향 조사가 처음 보고된 1986.1 이후 지금까지 서울에서 70% 수준을 유지하고 있는 가격격차를(제 기억이 맞다면) 수요측 요인으로 설명할 수는 없고, 따라서 가격상승을 “무조건 인정”해야 한다는 김경민 교수의 주장은 근거가 모호합니다.
아무리 서울로, 서울로를 외치는 것이 현실이라고 하더라도 가격격차가 집값의 70%라는 것은 커도 너무 큰 값입니다. 김원중 외(2021: <그림 8-4>)에 따르면 서울 인구증가 20~30만명을 용인하면 고밀화를 통해 서울 집값을 몇 십 퍼센트 낮추고, 문재인 정부의 정책기조를 과거로 되돌리면 추가로 더 낮출 수 있습니다. 해볼 만 합니다.
따라서 문재인 정부 출범 후 2019년까지 오른 가격의 설명요인으로서 소득과 같은 수요측 요인은 설명력이 약합니다. 이전에 첨부한 통계논문은 직접적으로 문재인 정부의 정책실패를 시사하는 것이구요. 박근혜 정부 집값이 문재인 정부 집값에 미친 영향을 추세치(즉 VAR 1차 차분 모형의 절편)와 유동성, 가계부채 등 여러 가지 변수를 이용해 통제한 후 얻은 결과이기도 합니다(지난번에 첨부한 두 번째 논문, 특히 p.14 민감도 분석 참고). 결과적으로 2019년까지 문재인 정부에서 오른 집값이 시장 여건변화에 따라 불가피했다고 면죄부를 주는 김경민 교수의 진단은 통계적(앞서 말한 논문), 분석적(이혁주, 유상균(2021) 논문), 정책실험적(이전 이혁주 교수 논문 참고)으로 근거가 없습니다.
이상입니다. 남기업 박사님께서는 질문을 다시 해주실 수 있을까요? 다른 분들의 토론/반론도 환영합니다. 감사합니다.
참고문헌
김원중 외. 2021. 서울 집값, 진단과 처방. 박영사.
이혁주, 유상균. 2021. 밀도규제의 구속성과 규제의 타당성 검토: 서울 아파트단지를 중심으로. 「국토계획」 56(5): 44-59.
김학열, 이혁주(편). 2021. 토지공개념과 국토‧도시계획 — 계획현상의 이해와 실천. 대한국토‧도시계획학회 기획도서. 보성각.
Chang, Hasok , 2004. Inventing Temperature, Measurement and Scientific Progress. Oxford University Press.
Shiller, Robert J. 2015. Irrational Exuberance. Princeton University Press.
이혁주 드림
수신: 전강수(대구카톨릭대)
참조: 강남훈(한신대), 변창흠(세종대), 김윤상(경북대), 김용창(서울대), 이석희(세종대), 정세은(충남대), 우석훈(성결대), 남기업(토지자유연구소), 선대인(선대인경제연구소), 이태경(토지자유연구소), 이진수(토지자유연구소), 이상경(가천대), 김수현(세종대), 천현숙, 최배근(건국대), 김경민(서울대), 임미화(전주대), 이형주, 윤주선, 한정탁, 김원중, 김준형(명지대), 정창무, 김현아, 이현석(건국대), 김홍배, 차학봉
아직도 이혁주 교수의 질문이 불분명한 것 같군요. 전강수, 김경민 교수가 답해야 할 질문을 다시 적습니다.
*전강수 교수용
질문1...서울 아파트시장에서 공급곡선이 우상향임을 논증(whatever you may call it)하라.
질문2...지난 5~10년간 공급치 평균+알파로 공급할 때 주택공급이 충분한 수준임을 논증하라.
*전강수, 남기업 박사 등 토지자유연구소 연구원 및 이재명 캠프 정책참모용
질문3...서울 아파트에서 밀도규제는 구속적이고 따라서 아파트 공급비용(resource cost)에서 토지비용은 제외된다. 이때 어림 계산으로 서울 아파트값 가운데 SMC(social marginal cost)는 30% 정도이고 나머지는 가상의 비용(fictitious social marginal cost)이 된다. 이 말은 서울 아파트값에서 가상의 비용÷아파트값=0.7 즉 ‘주택보유/소비억제세’가 집값의 70% 정도 된다는 말이다. 이 세금은 과밀혼잡, 투기억제, 국토균형발전을 위해 계획가가 지난 수십년간 부과해온 것이다. 이재명 캠프는 여기서 더 나아가 국토보유세/기본소득토지세 등 세금을 더 부과해야 한다고 주장한다. 설명하라. 진보계열은 세율 측면에서 주택을 담배(세율 70%)와 같은 demerit good 취급하는 계획가의 견해에 동의한다는 말인가?
수신: 전강수(대구카톨릭대)
보낸 날:2022.7.26
참조: 강남훈(한신대), 변창흠(세종대), 김윤상(경북대), 김용창(서울대), 이석희(세종대), 정세은(충남대), 우석훈(성결대), 남기업(토지자유연구소), 선대인(선대인경제연구소), 이태경(토지자유연구소), 이진수(토지자유연구소), 이상경(가천대), 김수현(세종대), 천현숙, 최배근(건국대), 김경민(서울대), 임미화(전주대), 이형주, 윤주선, 한정탁, 김원중, 김준형(명지대), 정창무(서울대, 전 대한국토‧도시계획학회 회장), 김현아(전 의원), 이현석(건국대), 김홍배(한양대), 차학봉(조선일보),
추가: 이창무(한양대), 임의영(강원대, 행정학회 전 편집위원장, 행정철학), 김진유(경기대, 주택학회 부회장/편집위원장), 정익재(서울과기대, 정책학회 편집위원장), 김흥순(한양대, 계획이론), 한상훈(중원대, 계획이론), 국토연구원 주택/토지연구본부 연구위원, 서울연구원 도시공간연구실 연구위원
서울과기대 행정학과 이혁주 교수입니다. 논의를 재개합니다.
오늘은 국토연구원과 서울연구원 연구자를 중심으로 새로 초대했습니다. 젊은 연구자들이 선배들이 하는 말 가려듣는게 좋겠다는 생각에서 초대했습니다. 그 외 행정학/계획 학회 주요 인사도 초대했습니다.
전에 공지한 것처럼 여기 내용은 공개공간에 연구자료로 남고 향후 자유롭게 실명 인용됩니다. 이후 통신도 마찬가지입니다.
https://sites.google.com/view/debate2022-1
한 전문가 집단의 편견과 무지가 어떻게 다른 전문가 집단을 오도(誤導)하고 사회 전체를 혼돈으로 몰아갔는지 이혁주 교수의 시각에서 기록으로 남기기 위해서입니다.
전강수 교수는 아래 글에서
공급론자의 주장을 “굳이 공급부족이라 부르는 데는 진정한 원인을 감추고 진실을 호도하려는 의도가 깔려 있다고 볼 수밖에 없다.”라고 비판합니다.
지난해 봄 이혁주 교수가 논쟁을 접을 것을 약속한 후, 전 교수가 두세 달 후에 오마이뉴스에 논쟁을 재개하면서 쓴 글입니다. 관련 논문과 설명을 그 전에 여러 차례 제공 받고 들은 후 몇 달 지나서 작성한 내용이므로 이혁주의 논설을 충분히 반추할 시간이 경과한 후 작성한 글이 됩니다. 여기서 전 교수는 개인적 동기에 초점을 맞추어 비판합니다.
이렇게 개인적 동기에 초점을 맞추어 전강수 교수의 언행을 rationalize하면 어떤 분석결과를 얻는지 시도해 본 것이 "이메일 11" 맨 밑에 있는 글입니다. 과학문서와 그 부정(否定)은 양립하기 쉽지 않은데 이 모순(would-be paradox)이 어떻게 존재할 수 있는지 theorizing해보았습니다. 개인에게 발생하는 이득을 극대화할 수 있도록 어떤 선택을 할 때, 전강수 교수는 일정 수준 부정직하게 선택하는 것이 합리적입니다. 만약 전 교수가 정직한 사람이라면 오마이뉴스에서 보는 것처럼 경솔한 평가를 하기가 쉽지 않습니다. 이때 마지막으로 생각해 볼 수 있는 것이 전 교수의 학술적 문맹입니다. 전문가라고 하지만 (기술)문서를 해독할 만한 학력(學力)이 안 된다는 것이지요. 전 교수는 과학적으로 사고하지도 않고 윤리적으로 행동하지도 않는 것 같습니다. 추론과정에 어떤 문제가 있는지 전강수 교수님은 코멘트 바랍니다. 현재 마련된 개념화 방식 안에서 수용할 수 있다면 최대한 해보고, 안 되면 후일을 기약해 보겠습니다.
퀴즈: 만약 이 분석에서 전강수 교수가 개인적으로 지불해야 하는 비용이 매우 클 때 전 교수의 합리적 선택은 무엇인가? 그림을 이용해 이해하기 쉽게 설명하라.
앞으로의 계획도 함께 말씀 드립니다. 먼저 김수현 교수의 아래 글
https://www.hani.co.kr/arti/politics/bluehouse/805351.html
을 중심으로 몇 가지 질문을 해보겠습니다. 잘 선택된 건지 모르겠습니다만 얘기를 좀 풀어 보지요. 해석에 논란이 있는 부분은 가능하면 피하도록 하고 언급한 내용과 판단의 학술적 근거를 중심으로 질문해 보겠습니다.
그 다음으로는 한양대 이창무 교수의 아래 글
https://www.joongang.co.kr/article/25050045#home
에 포함된 “서울의 주택 공급 부족 문제는 용도지역 제도의 문제가 아니라 독선적 행정의 누적된 부작용 때문이다.”라는 말에 대해 이창무 교수의 상세한 설명을 들어보도록 하겠습니다. 이유도 다양한데 밀도규제 때문에 집값이 높다는 주장에 대한 평가입니다. 이혁주 교수는 대학 교수인데 이런 말도 안되는 주장을 버젓이 하니 세상이 미쳐 돌아가는 것 같고 그러니 누군가는 해야 할 말을 이창무 교수가 했습니다. 잘 했습니다.
이 칼럼은 한국에서 ‘보통’의 계획가와 ‘보통’의 시장주의자가 가진 표준 정책관을 보여줍니다. 이 표준 정책관은 지금까지 언급되었던 진보계열 인사들의 입장과 정면으로 맞서지만, 동시에 이러한 견해가 제2의 변창흠, 김수현, 전강수, 그리고 정치인으로는 제2의 추미애를 다시 등장하게 하고, 유튜브, 부동산계, 경제학계에서는 설명이 궁색하다 싶으면 유동성과 금융요인을 거론하게 만드는 등 이들 현상의 근인(根因)이 바로 용적률 규제이고 이거 때문에 집값이 높다는 것이 이혁주 교수의 생각입니다. 지난 대선 기간중 국토연구원 소속 연구원들도 [주택연구]에 금리에서 발생한 "구조적 전환" 때문에 집값이 높다는 논조의 글을 발표한 적이 있습니다. 그간 논쟁과정에서 흥미로운 시각이 많이 노출되었고, 이창무 교수의 설명에서도 흥미로운 관점이 많이 있을 것으로 기대합니다.
대단히 불편하더라도 이 시대 우리가 두른 질곡을 후배들한테 물려주지는 맙시다. .
아울러 선대인 소장이 자신의 유튜브 채널에 한 차례 올렸다가 지금은 지워져 없는 문서를 첨부합니다.
이후 논의에서 텍스트로 인용할 수도 있습니다. 선대인 소장은 이재명 지사 시절 분과위원회 위원장을 했고 여기 분과에 남기업/이상경 등이 활동했습니다. 소장님께서는 수정이 필요한 부분은 수정해서 올려주세요. 논문 주제 탐색하다가 유튜브에서 자동 팝업되어 우연히 보게 된 내용입니다. 이미 한차례 김경민 교수에게서 보았던 것처럼 유튜브 스타들의 논설에서 흔히 보는 논설방식으로서 혹시 간략하게 참조할 수도 있어서 선택한 것입니다.
감사합니다. 이혁주 드림
******* 전강수 교수 글 rationalize하기 ********
제목 : 전문가의 역량과 윤리 문제
1) 대안적 설명방식이 필요한 이유
인과론적, 인식론적 오류의 제시에도 불구하고 연구성과의 검토과정에서 학계의 비중 있는 인사들은 과학문서의 의미를 경시, 외면, 왜곡하는 발언이 이어졌다. 이렇게 엄존하는 부정(否定)행위가 어떻게 과학문서와 양립할 수 있는지 추가 설명방식이 필요하다.
투기원인론자와 시장주의자는 상대방을 “화성인”이라는 시각에서 바라본다(이혁주, 2022.2.9). 이 시각은 모순된 현실에 대한 양편의 좌절감을 담고 있는데, 이런 현실을 이해하자면 객관적 사실의 기술 이상으로 그 무엇인가를 담은 대안적 설명방식이 필요하다.
여기서는 사회현상의 인과론적 설명을 담고 객관적 현실을 적시한 과학문서와 그 평가(appreciation) 사이에 존재하는 간극에 관한 마지막 퍼즐을 풀어본다. 이 의문을 풀기 위해 지금까지 알아본 사실과 인과론의 적시가 아니라 논쟁 당사자들의 이기적 동기에서 출발해 이들의 ‘선택’을 이해하도록 노력해 본다. 이 경우 도덕적 선택은 그 선택이 자신에게 득이 되는 경우에 한해 나타나는 것으로 이해된다.
개인적 동기에서 출발한 설명방식은 전강수 교수가 이혁주 교수의 비판에 대해 반론하면서 활용했던 방식이기도 하다. 이혁주 교수가 전강수 교수에게 반복해 요구했던 내용을 한 마디로 압축하면 ‘설명’(rationalize)이었다. 전 교수는 이러한 요구에 대해 “공급부족이라 부르는 데는 진정한 원인을 감추고 진실을 호도하려는 의도가 깔려 있다고 볼 수밖에 없다”고 대응한다. 또한 공급부족론과 공급확대론에 대해 “부동산 시장 만능주의자들이 개발하여 줄기차게 ... 이 이론을 주장한 데는 노무현 정부의 부동산 불로소득 환수 정책을 흠집 내려는 의도가 깔려 있었다.”고 평가한다(전강수, 2021.5.27).
2) 이론
충실하게 과학문서를 작성하지 않는다는 것이 전문가 윤리에 문제를 일으키는 직접적 원인이 되기도 한다. 전강수 교수의 논설로부터 전 교수의 학술적 부정직(dishonesty)과 무능 가능성 두 가지를 의심해 볼 수 있다. 좀 더 자세하게 알아본다.
서울에서 아파트 재고는 그림에서 H0이다. 현 공급수준에서 아파트공급의 사회적 한계비용이 현 아파트값의 30%인 0.3P0이 수준이라고 할 때(이혁주‧유상균, 2021; https://youtu.be/p3TfvteWnFc), “투기적 가수요에 맞춰 공급한다는 것 자체가 어불성설”(전강수, 2021.5.27.)이라고 주장하는 것은 아파트값의 70%에 해당하는 사회적 순편익의 실현을 거부하는 것이 된다. 왜냐하면 H0에서 아파트를 공급하면 한 채당 0.7P0만큼 사회적 순편익이 실현되기 때문이다. 또한 부담가능한 주택을 공급할 때 가장 큰 이득을 보는 집단은 주거약자들이다. 전 교수의 비판은 공익 혹은 공공성이 도시계획을 통한 사회문제 해결에 있어서 정책결정과 계획의 정당성 확보의 근거가 된다는 한상훈(2021: 41)의 계획철학적 관점과 배치되기도 한다. 어떤 관점에서 보아도 전강수 교수의 논설은 학술적으로 이해하기 힘들고 윤리적으로도 정직하지 않은 행동이다. 이제 이 퍼즐을 어떻게 설명하고 이해해야 하는지 분석한다.
부정직한 행동은 그러한 선택을 하는 개인과 그가 속한 소집단에 일정한 편익을 준다. 이 편익을 PMB(private marginal benefit)라고 부르자. 사회적 편익은 금전적으로 이 사적 편익의 합으로 주어진다. 그러나 부도덕한 사적 편익에 대해 부여된 사회적 가치는 0으로 놓자. 이때 사회적 한계편익 SMB=0이 된다. 아래 <그림>에서 횡축을 부정직의 크기로 놓을 때 횡축은 SMB=0에 해당한다. 한편 이러한 부정직은 사회적으로 작지 않은 비용을 초래한다. 반면 부정직하게 행동한 개인 및 이 개인이 속한 집단이 치러야 하는 비용은 사회적 비용보다 작다. 여기서 사적 한계비용을 PMC라고 표기하고 편의상 0으로 놓자.
<그림>에서 SMC는 부정직한 행동이 초래하는 사회적 한계비용이다. 수평축은 PMC=0, SMB=0에 해당하는 직선이다. 전강수 교수의 사적 이득은 PMC=PMB1가 일치하는 D1에서 극대화된다. 이때 사회적 비용은 모두 OAD1만큼 발생한다. 반면 사회적으로 전강수 교수에게 요구되는 최적의 부정직 수준은 SMC=SMB가 달성되는 원점 O이다. 전강수 교수의 합리적 선택인 D1은 원점 오른쪽에 있으므로 전 교수의 선택은 사회적 관점에서 최선이 아니다.
이메일 교신이 이루어진 것은 2021년 여름부터 2022년 2월까지 즉 20대 대통령 선거 직전까지였다. 진보계열의 명망 있는 논객으로서 전강수 교수의 사적 한계편익 곡선은 평상시 PMB1 대신 PMB2로 이동했을 가능성이 있다. 이때 전강수 교수의 부정직 유인(incentive for dishonesty)은 증가해서 D1 대신 D2를 선택하게 된다. 즉 대통령 선거라는 행사는 그림과 같은 상황에서 정치적 활동가의 전략적 인식과 행동을 부추긴다. 2021.12.13. 조선일보 ““우리 진영 다나서야” 여권 총동원령 내린 이해찬”이라는 기사는 당시 집권당인 더불어민주당과 진보계열의 분위기를 잘 보여준다. 이해찬 씨는 2018.7.20.에서 2020.8.20.까지 더불어민주당의 대표를 하면서 재임기간 중 국회의원 선거에서 180석 압승을 달성한 바 있고 집권당의 재야 좌장격 정치인이다.
두 번째 가능성은 전강수 교수의 학술적 무능이다. 정직이라는 기본적 도덕률에 위배되는 행동을 하기는 쉽지 않다. 그렇다면 나머지 가능성은 학술적 문맹이다. 문맹이 아니고서 오마이뉴스에서와 같은 글을 당당하게 쓰는 것은 상상하기 어렵다.
전 교수가 2021.5.27. 칼럼을 쓰기 전까지 이혁주 교수는 여러 차례 이메일과 논문을 통해 논점을 설명하고 전 교수의 논설에 대해 반론했다. 비록 세부전공과 애용하는 연구방법론에서 차이가 있다고 하더라도 수십년 전공자라면 같은 분야 다른 전공자 논문의 대강(大綱)을 이해해야 한다는 것이 대학교수 학력(學力)에 대한 통념적 기대수준이다. 그런데도 논지를 이해하지 못했다면 대중의 지명도와 학력간 괴리가 매우 클 가능성에 대해 의심해야 한다. 논문을 일별하면서 간과했을 가능성도 있지만 설득력이 있어 보이지 않는다. 일별해도 눈에 들어온다. 그것이 전공자의 안목이고 통찰력이다. 이해하지 못했다면 남을 존중하기라도 해야 한다. 그것이 보통 사람들의 행동방식이다.
3) 실천
전강수 교수의 논변방식은 과거 시장주의자와 진보계열 학자간 벌어졌던 논쟁방식에서 오히려 퇴보한 것으로 보인다. 인식론적으로 올바르지도 않고, 자신의 이론이 타당하다는 점만 주장할 뿐 자신의 이론을 이용해 타인의 설명방식에서 제기된 의문을 설명하려 노력하지도 않는다. 같은 헨리 조지스트로 분류할 수 있는 김윤상 교수는 자신의 이론을 이용해 시장주의자의 주장을 논박하지만 동시에 설명하려고 노력한다(김학열‧이혁주(2021)에 실린 김윤상 교수의 글 참고). 적절한 설명 없이 생산적 논쟁은 성립할 수 없기 때문에 김윤상 교수의 학술적 태도는 중요한 의미가 있다.
지명도와 학력간 괴리가 클수록, 그리고 지명도에 비례해 부정직이 클수록, 그 원인이 무엇이든 사회가 치러야 하는 비용은 커진다. 이러한 역유인(逆誘因)의 통제방안을 고민할 필요가 있다.
지금까지 사적 한계비용이 0이라고 가정했다(즉 PMC=0). 이를 좀 더 현실적인 것으로 바꾸고 다시 생각해 보자. 부정직한 행위가 많지 않은 원점 인근 구간에서 SMC는 거의 전적으로 부정직한 행위를 하는 개인에게 귀속할 것이다. 이를테면 그림에서 O에서 X까지 SMC는 PMC와 일치한다. 그러나 부정직한 행위가 빈발하고 정도가 심해질수록 그 외부비용이 커지고 SMC와 PMC간 높이 차이가 벌어진다. 그림에서 X에 출발점을 둔 2시 방향 점선이 새로운 PMC곡선이다.
부정직한 행위를 억지하는 사회적 노력이 많을수록 PMC곡선의 기울기는 급해지고 MB곡선과 새 PMC곡선은 D1, D2에서 더 멀리 떨어진 왼쪽에서 교차한다. 일반적으로 말해 새 교차점이 D1, D2에서 최대한 왼쪽에 형성되도록 PMC곡선을 최대한 위쪽으로 옮기고 PMB곡선을 최대한 아래쪽으로 옮겨야 한다.
PMC곡선을 위로 이동시키는 노력으로서 그러한 행위를 공개하는 노력이 먼저 있어야 한다. 연구에 쓰일 사초(史草)가 많이 마련되어야 한다. 과학에서 사실은 객관적으로 존재하고 불변하는 존재가 아니라 어떤 구성체(construct)이고 가변성을 지니고 있다. 그래서 그 구성방식이 중요하다. 이것이 비과학과 허구적 서사(narrative)가 그 구성방식이 되어서는 안 되는 이유다. 그리고 논설, 논문 등 다양한 방식으로 그러한 행위를 평가하는 노력이 뒤따라야 한다. 학계도 그런 시도를 현명하게 관리해야 한다. 이러한 노력이 있어야 그러한 논설에 귀 기울이는 청중이 깨어나고 그 수가 줄어들며 정치인과 대중이 오도(誤導)될 가능성이 감소한다.
PMC곡선이 위로 이동하고 PMB곡선이 아래로 이동하면 ‘전강수’의 합리적 선택 D1은 왼쪽으로 이동한다. 그리고 ‘전강수’형 인간이 이를테면 100명에서 50명으로 준다. 결과적으로 사회적 총비용은 100*OAD1에서 50*OAD1로 줄고 OAD1 자체도 작아져서 전체적으로 부정직이 유발한 사회적 비용은 감소한다.
문재인 정부에서 본 집값 통계는 개인 수준의 부실한 스칼라십이 상호 참조과정을 통해 시스템 실패로 이어진 사례이자, 학자의 도덕성마저 훼손하게 만든 원인이 되었다. 상호참조는 집단 지성이 되기도 하고 집단 광기(狂氣)가 되기도 한다. 과학적 탐구와 설명 노력이 성공한다는 보장은 없지만, 그러한 과정에서 상식과 표준과 캐넌(canon)에도 의문부호가 달릴 수 있다는 가능성만 인식해도 집단 광기를 자기 성찰할 기회의 창이 열린다.
한편 PMB곡선을 아래쪽으로 옮기는 것은 PMC곡선을 위로 옮기는 일보다 더 어렵다. 이 일은 학술역량과 정직성에 문제가 있는 인사에 대한 보상체계의 변화를 요구하고, 보상체계의 개선은 사회 전체 공동의 노력이 필요하기 때문이다. 학자 개개인의 역량에 대해 정확히 평가하는 것이 얼마나 가능한지 그리고 그러한 평가가 얼마나 공정하고 정확한 것인지도 현실적 장애요소로 작용한다. 시민사회의 자유는 시민의 올바른 판단(informed judgment)을 전제하지만, 이러한 올바른 판단이 이루어지자면 지식인이 먼저 그러한 노력을 외주(外注)하지 않고 감당하는 수고를 해야 한다.
그러나 이것 또한 쉬운 일이 아니다. “민주당, ‘20년 집권 플랜’ 이해찬 택했다”(한겨레, 2018.8.27.)와 같은 격문이 호소력이 있는 상황에서 “이재명의 기본소득과 국토보유세 주장은 자본주의를 폐기하고 사회주의로 가는 이행기 강령”(김순덕, 2021.11.16)으로서 기본소득토지세의 인과론적 오류는 거대 명분과 목표의 달성에 비해 지엽적인 문제이고 따라서 용인해야 하는 것이 된다. 학술적 진실성(integrity)은 정치에 종속되고, 지적으로 겸손해야 하는 학자들은 과학자로서 아는 것 이상으로 이야기하고 처방한다.
<참고문헌>
김순덕, 2021.11.16. “이재명이 기본소득을 주장하는 이유”, 동아일보.
김학열‧이혁주(편), 2021. 「토지공개념과 국토‧도시계획」. 서울: 보성각.
유상균‧이혁주, 2019. “기성시가지 용적률 규제와 계획가치 — 서울대도시권을 중심으로”, 「국토계획」, 54(5): 107-128.
이혁주‧유상균, 2021. “밀도규제의 구속성과 규제의 타당성 검토: 서울 아파트단지를 중심으로,” 「국토계획」, 56(5): 44-59.
전강수, 2021.5.27. “아파트공급 확대론의 치명적 결함,” 오마이뉴스.
한겨레, 2018.8.27. “민주당, ‘20년 집권 플랜’ 이해찬을 택했다”.
한상훈, 2021. 「도시계획과 공익의 이해」, 서울: 박영사.
지난 금요일 서울연구원 박은철 박사로부터 전화 연락이 와서 주택정책에 대한 수십년 연구성과에 대해 여러 가지 유익한 말씀을 들었습니다. 그리고 제가 쓴 논문 두 편을 보내드렸습니다. 나중에 얘기할 기회가 있을 것입니다.
그리고 아래는 선대인 소장으로부터 받은 이메일이고 제 회신입니다.
* 선대인 --> 이혁주
잘 알지도 못 하는 분이 제가 전혀 원하지 않는 논쟁에 왜 끌어들여서 이메일 스팸을 계속 보내는지 이해할 수 없군요. 이 자체도 제 의사를 무시한 폭력입니다. 저는 제 신간에 제 입장을 설명했으니 궁금하면 제 책을 참고하십시오. 앞으로는 이 메일에서 빼주시길 바랍니다. 그리고 둘 또는 당사자들끼리 나누면 될 이야기들을 관심없는 다수의 사람들 의사도 묻지 않고 이렇게 끌어들이는 행위는 지양해 주세요. 불쾌합니다.
이 자리를 빌어 제 회신을 드립니다.
*이혁주 --> 선대인
네, 이런 일이 본래 불편합니다. 여기 얘기가 다 끝나면 간단하게 서로 질문할 기회를 가지겠습니다. 그때 전문가답게 행동하시면 됩니다.
다시 김수현 교수님에게 돌아옵니다.
서울 아파트값 기준 투기 때문에 오른 집값이 얼마나 되는지 수치 몇 가지 제시해 주시지요. 가능하면 제일 큰값을 가지고 투기 때문에 집값이 높은게 아니라는 걸 보이겠습니다. 어쩌면 밀도규제 완화는 그보다 5배, 10배 효과가 있고 사회적 순편익도 개선한다는 결과가 나올지도 모르겠네요.
모두 지켜보고 있습니다. 감사합니다. 이혁주 드림
이혁주 --> 위 사람
서울과기대 이혁주 교수입니다. 본격 논의에 앞서 housekeeping입니다.
2022.8.16. 선대인 --> 이혁주 이메일입니다.
다시 한 번 말씀드리는데 지금과 같은 메일 스토킹 행위를 중단해주시기 바랍니다. 나는 당신이 누구인지 전혀 모르며 이 논쟁에 참여할 의사도 전혀 없습니다. 앞으로도 이런 행위를 지속할 경우 법적 소송의 대상이 될 수 있음을 알려드립니다.
이것이 현실이라면 받아들이는 수밖에 없군요. 다음에는 더 큰 사람이 되어 만나 뵙기를 바랍니다.
김수현 교수에게서 회신이 없으므로 해당 주제에 대해서는 투기원인론자의 입장을 최대한 존중해 이후 논의하겠습니다.
김수현 교수님께서 확인해 주셨으면 하는 것이 두 가지 정도 더 있습니다. 이 확인을 토대로 2017.5 당시 집값이 대단히 높아서 어떤 식으로든 정책개입이 필요했다는 김 교수의 인식을 정당화하고, 또한 더 거슬러 올라가 박원순 시장 임기초 집값 역시 보통의 시장주의자 인식과 달리 대단히 높았다는 점을 보이게 됩니다.
첫 번째 확인사항입니다. 아래 동영상 링크 소개화면에 있는 논문은 2017.5~2019.12까지 서울 아파트값을 분석한 결과입니다.
최대한 신중하게 접근하기 위해 분석기간을 팬데믹 발발 직전까지로 한정하고 박근혜 정부의 영향을 문재인 정부 집값에서 최대한 제거했습니다. 이 분석도 온갖 크고 작은 시비의 대상이었습니다. 그냥 싫다, 확실하게 통계적으로 확인되지 않는 한 믿을 수 없다 등등.
아래는 요약이고 여기서 “정부대책”이란 같은 기간에 있었던 19차례 정부대책을 말합니다.
* 문 정부 출범 후 2019.12까지 오른 집값 대부분이 정부대책의 결과물이다.
* 정부대책 때문에 오른 집값 가운데 일부만이 2019.12까지 실현되었다.
* 여러 모형에서 문 정부의 정권요인이 서울에서 아파트가격을 영속적으로 올리는 요인으로 작용했지만, 박근혜 정부요인에 대해서는 통계적으로 유의하지 않아서 유사한 평가를 할 수 없다.
* 문 정부 초기 정부대책과 집값이 비슷한 비중으로 양자간 상호 견인기제에서 역할했다. 그러나 2019년이 되면서 아파트값이 정부대책-집값 상호 견인기제에서 주도적 역할을 했고, 그 결과 가격상승이 정부대책과 큰 관계 없이 또 다른 가격상승을 추동하는 방식으로 집값 상승기제가 변했다.
이용한 분석기법은 익숙하지 통계모형이라 “STATA를 이용한 응용계량경제학”(박영사)의 저자에게 두 차례 자문하면서 작성했습니다. 아래는 위 동영상에 첨부한 논문 초고에 대해 위 전공자가 코멘트한 내용 전문입니다.
“매우 분석적이고 잘 구성되어 있습니다. 무척 재미있게 읽었습니다.”
첨부 논문의 분석에 따르면 전강수 교수의 주장대로 투기억제책이 충분히 정교해야 했지만, 설령 그러하지 못해 투기억제에 실패했다고 하더라도 대폭 오른 집값 대부분이 그러한 부동산정책의 직접적 결과물이어서는 안 됩니다. 당시 정책설계를 주도한 당사자로서 김수현 교수님께 코멘트 부탁드립니다.
위 링크에 기술문서와 논문에서 사용한 통계자료가 모두 있습니다. 이걸 이용해 논문의 그림과 표를 재생할 수 있습니다. 한 달 정도면 검토하는데 별문제가 없겠지요? 천천히 살펴보세요. 이용한 소프트웨어는 R과 STATA입니다. 기술문서를 보시면 어느게 어느건지 구분이 됩니다.
그리고 이혁주 교수가 전강수 교수한테 했고 계획가들이 이혁주 교수한테 했던 여러 가지 질문을 자신에게 던지면서 답해 보세요. 그리고 동영상 링크에 있는 통계 분석결과를 rationalize해 보세요. 자신의 이론을 이용해 상대편이 가진 의문에 답할 수 있을 뿐 아니라 중요 통계를 rationalize하는 설명방식을 제시한다면 교수님께서는 학계에 크게 기여하는 것이 됩니다.
김수현 교수로부터 별다른 문제 제기가 없으면, 서울 집값과 공급수준의 적정성 문제는 시기적으로 2017.5 당시로 재설정되고 이를 두고 보통의 계획가, 보통의 시장주의자와 그 적정성 문제를 따져보게 됩니다. 이상이 후속논의를 하는데 필요한 최소한의 분석적 조치가 됩니다.
김수현 교수님, 부탁드립니다.
감사합니다. 이혁주 드림
아직 회신이 없었던 것 같습니다.
좀 더 편안하게 이혁주 교수를 교수님 박사생으로 간주해 보면 어떨까요. 박사생인 만큼 아직 해당 문제와 기법에 익숙하지 않고 기술내용도 전문가 눈에 많이 부족합니다. 이런 학생이 학위논문을 작성하고자 지난번 이메일 링크에 있는 분석결과를 들고 왔습니다.
어떻게 코멘트하시겠습니까? 이혁주 드림
김수현 교수님께서 수고가 많으십니다. 모두가 힘든 시기, 나이 든 우리가 조금 더 수고하도록 합시다.
두 사람 모두 통계에 어두워서 그런가요? 나아가기 쉽지 않군요. 주택전문가이면서 통계기법에 밝은 이한테 자문해보는 것은 어떻겠습니까?
교수님께서 공급론적 시각에 비판적인 사람을 추천해 주시지요. 저도 찾아 보겠습니다. 이혁주 드림
문재인 정부 집값을 분석한 논문으로
박진백, 이태리, 오민준, 2022. 금리의 주택가격 상승 기여도 추정. 주택연구, 29(4): 75∼100.
이 있군요.
2019.7에 고금리에서 저금리로 금리의 구조적 전환(structural break)이 있었는데 이 때문에 이후 집값이 급등한 것이지 공급요인 때문에 집값이 급등한 것이 아니라는 주장입니다. 아래는 논문 요약입니다.
This study aims at estimating the effect of interest rates on change rate of housing price and level of contribution. Main findings are as follows. Firstly, as a result of the existence of structural break in financial market after 2011 using structural break test, we found that there was a structural break in financial market around July 2019 under the circumstances of low interest rates. Examining the characteristics of changes in financial market by comparing before with after, we verified the 1.46-fold increase in residential mortgage and the rapid increase in housing prices after the structural break (July 2019) comparing with the period between May 2017 (inauguration of the current government) and June 2019. Secondly, according to the result of regression analysis, an increase in housing prices is closely related to a fall in interest rates. Particularly, the effect of interest rates on housing prices was stronger than that of housing supply factor and housing demand factor. Thirdly, another finding which is related to the analysis of the contribution on changes in housing prices with Shapley decomposition is strong contribution of interest rates during the period of post financial structural break (34.3-44.5%) comparing with the contribution of other variables. Lastly, According to results on the basis of Variance Decomposition of Panel VAR estimation, it is analyzed that interest rate works as a main factor of an increase in housing prices within 12∼24 months after structural break point. Thus, the main conclusion of this study is that a decrease in interest rates was one of the key factors of current increasing housing prices.
저자들은 언론 인용, 연구원 보고서, 논문 등 이 분야의 최고 전문가들입니다. 문구를 만들어서 여기 이메일을 통해 정중하게 요청해 보지요. 현재 이메일 리스트에는 없군요. 이혁주 드림
이태리, 박진백 박사님께
저는 서울과기대 행정학과 이혁주 교수라고 합니다. 두 분께 논문 한 편에 대한 논평을 부탁드리고자 이렇게 이메일을 보내게 되었습니다. 이 논평은 그간 범(汎) 계획분야 학자들간 집값 논쟁의 연장선 위에 있습니다. 자세한 그간 내용은 아래 링크에서 일부 확인하실 수 있습니다. 지금은 훗날 뭐라 하면 시늉했다는 말 정도는 하고자 여러 사람 불편하게 만들고 있습니다.
https://sites.google.com/view/debate2022-1/홈
현재 김원중·이혁주(2022, in press)의 분석결과에 대해 김수현 교수한테 의견을 구하는 중입니다. 이 논문에 따르면 두 분이 발표한 박진백 외(2022)의 결(紋)과 달리 2019.12까지 오른 집값 대부분이 문재인 정부의 부동산정책 때문입니다.
김원중·이혁주(2022)와 이혁주·유상균(2021)을 결합하면 기존상식과 practice의 정당성을 부정하는 결론에 도달합니다. 그 시사에 따르면 진보는 계획가의 장단에 맞추어 춤춘 것이 됩니다. 김수현, 전강수 교수는 괴물이 되고 이 괴물은 기성 계획관의 산물이 됩니다. 박사님들도 계획가가 한정한 economist의 시각을 다시 수입해서 이제는 계획가 자신이 오인한 것이 되고, 두 분이 쓴 논문은 그 증거 하나로서 건강하지 못한 증상이 됩니다. 위 링크에서 언급한 이창무(한양대), 박은철(서울연구원) 박사의 인식이 보여주는 그 일상성(banality)이 보통 계획가의 상식인데 이 일상성이 진짜 괴물이라는 말이지요. 이때 김수현, 이창무, 변창흠, 박은철, 박진백, 이태리 박사 모두 누가 누구를 탓하는게 무의미하게 됩니다. 이혁주 교수도 이 일상성의 일부이고 두 분이 속한 기관도 이 거대 모순의 중요 지지축이 됩니다.
두 분에게서 김원중·이혁주(2022)에 대한 통계적 검증을 더 받아야 하는 것은 이런 시사 때문입니다. 추가 검증도 현재 예정되어 있습니다.
논평 요청을 드리는 것은 두 분이 주택전공자이면서 통계에도 능한 전문가이고 언론에서도 주목하는 분들이라는 점 때문입니다.
서울신문 인용기사(2021.12.24.)
그 밖에 사정은 기회가 되면 말씀 드리겠습니다.
그래서 질문을 드립니다. 첨부 논문 김원중·이혁주(2022)는 연구질문에 대해 편향되지 않게 답할 수 있도록 연구를 설계하고 충실하게 분석했으며, 또한 분석결과를 과장과 왜곡 없이 기술했다고 볼 수 있는지요?
두 분의 논평은 김수현 교수가 김원중·이혁주(2022)를 논평하는데 큰 도움이 될 것으로 기대합니다.
두 분께 부담을 드려 대단히 죄송합니다. 우리 시대 연구자들이 져야 할 짐이라고 생각하고 함께 수고해 주실 것을 정중하게 요청 드립니다. 시한을 두고 하는 일이 아니니 여유 있게 검토하시면 될 듯합니다. 감사합니다.
이혁주 드림
참고문헌
김원중·이혁주, 2022. 서울 아파트값 급등 원인에 대한 통계적 검토. 국토계획. 근간
(논문 설명: https://www.youtube.com/watch?v=9vjr8CXwp7c)
박진백·이태리·오민준, 2022. 금리의 주택가격 상승 기여도 추정. 주택연구, 29(4): 75-100.
이혁주·유상균, 2021. 밀도규제의 구속성과 규제의 타당성 검토: 서울 아파트단지를 중심으로. 국토계획, 56(5): 44-59.
이혁주-->박진백, 이태리 등
박진백, 이태리 박사님께
정책리포트를 논문으로 꾸며 발표했다는 것은 그만큼 자신들의 주장에 대한 확신이 있다는 것이고 논문 내용을 공유하기를 원한다는 것입니다.
김원중·이혁주(2022) 논문 한 편에 근거해 문재인 정부 초반의 부동산정책이 total failure라고 말하는 것은 성급합니다. 더구나 이 논문의 저자들은 통계논문을 처음 써보는 사람들입니다.
김원중·이혁주(2022)에 대한 논문 심사평을 “주택논쟁” 사이트 맨 뒤에 첨부합니다. 계량경제학 전공자의 논평과 달리 논문에 문제가 많습니다. 계량경제학 전공자는 주택전문가가 아닙니다.
두 분께 전문가다운 협조를 요청 드립니다. 두 분 및 연구원의 평판과도 관련된 사안입니다. 감사합니다. 이혁주 드림
<첨부> 국토계획 심사평
심사자 3
1. 문재인 정부 하의 주택가격 급등이 투기 때문인가 또는 정책실패 때문인가를 여러 각도에서 검증하고자 하는 논문임.
2. 다양한 검증 모형을 활용하고 있는데, 왜 꼭 그래야 하는지 모르겠음. A방법론과 B방법론이 서로 중복되지 않는 장단점을 가지고 있다면 A, B를 모두 실험하는 것이 이해되지만, 이 논문은 방법론간의 장단점 내지 보완관계에 대한 고려 없이 너무 다양한 방법을 나열하고 있음. 연구목적에 맞는 최적의 방법론(들)을 선택하는 과정이 필요함.
3. 이 논문의 결정적인 약점은 자료의 기간이 문정부 정책 효과를 이전 정부와 차별적으로 드러나게 할 정도가 되지 못한다는 것임. 주택가격 급등이 2020, 2021년에 특히 두드러졌으나 이 기간의 자료가 포함되지 않았음. 문 정부 이전의 자료도 충분한 기간이 포함되었는지 의문임.
4. "투기"가 주요 연구대상이지만, 이를 어떤 변수로써 포착하여야 하는지 설득력 있는 논의가 부족하다고 생각됨. 측정 불가한 변수의 효과를 검증하고 있다고 보임.
5. 일부의 논의는 이해하기 힘듬. 연구목적 부분에서 "주택보유, 소비억제세율"이라고 하지만 어떤 현실의 세금을 가리키는 것인지 불분명함. 세금이 아닌 것을 세금이라고 부를 수는 없음.
6. 자료를 보완하되, 논문을 문제의식에 따라 몇 개로 쪼개서 각자가 차별성을 갖도록 하는 것이 저자의 노력을 돋보이게 하는 방법이 아닌가 함.
본 논문에 대해 수정후 재심을 판정합니다.
심사자 4
[논문제목] “투기 대 정책실패”가 무슨 말인지 잘 모르겠습니다. 주택 투기에 대응하기 위한 정책들이 실패했다는 뜻인지요? 본 심사위원의 생각으로는 함축적이고 수사학적 표현이 논문에 대한 관심을 끌어들이는 편익보다 표현의 모호성으로 인한 비용이 더 커 보입니다.
[거품 형성 논의 부분] 자산가격 거품을 검증하는 것도 아니고 거품을 다룬 연구도 주로 해외연구 위주로 소개되었는데, “2.자산가격의 거품형성과 붕괴” 부분이 논문에서 꼭 필요한 것인지 검토해주시면 좋겠습니다. 없어도 상관없을 것 같습니다. 이 자리에 거시건전성 정책 관련 문헌연구가 수록되면 어떨런지요?
[데이터의 출처] 분석데이터의 출처를 정확히 밝혀주시기 바랍니다. 그리고 주택보급률은 다가구주택에서 구분거처를 반영한 신주택보급률인지요? 단순 주택보급률인지요?
[활용된 변수들에 대한 단위근 검정 필요] 특히, M2는 비정상성(non-stationarity)이 심한 변수인데 각 변수에 대해 단위근에 대한 검토 없이 회귀식을 구축하고 있습니다. univatiate/multivariate unit root test를 실시하셔서, order of integration이 서로 다른 변수가 하나의 방정식에 그냥 포함되도 되는 것인지 검토해주시기 바랍니다.
[가설 1에 대한 의견] 가설 1이 연구가설이 될 수 있는 것인지 모르겠습니다. 모든 정부에서 아파트값 상승의 양상은 다를 것입니다. Table 4의 Model 1, 5, 6에서 Regime 더미변수가 유의미한 것은 다른 거시변수들을 통제한 후 이전 정부 기간에 비해 현 정부 기간에 주택가격이 높았다라는 것을 보여주는 것이지, 그것이 주택가격 형성 양상의 구조적 변화가 될 수 없다고 봅니다.
[Figure 3] 과거 정부의 주택정책이 현재 정부 초기의 주택가격 형성에 영향을 줄 수 있습니다. 본 심사위원의 눈에는 가격상승의 크기가 현 정부 초기에 높은데 이는 주택가격에 정(+)의 효과를 끼칠수 있는 정책들이 과거 정부 시절 있었고, 이것이 현 정부 초기 아파트 가격 형성에 영향을 미친 것으로 판단됩니다. 그러니까 문재인 정부 시절 주택가격 형성이 꼭 문재인 정부 시절 정책 때문만은 아닐 수 있다는 것입니다. 이에 대해 디펜스를 해주시기 바랍니다.
[Figure 5] Figure 5는 저자께서 작성하신 것인지요? 아니면 다른 연구에서 인용한 것인지요? 아니면 다른 연구의 그림을 일부 수정한 것인지요? 그림 밑에 출처를 밝혀주시기 바랍니다.
[미주 활용 필요] 본문에 괄호를 써서 내용 추가를 하는 부분이 많은데, 저자께서 판단하셔서 미주(foot note)로 옮겨주시기 바랍니다. 예를 들면, “기술적 과정은 Brueckner(2011) 참고” 이 문구를 미주를 사용해주시면 좋겠습니다.
[대책 횟수 누적변수] 대책을 변수화하는 것이 어렵다는 것은 본 심사위원도 인지하는 상황입니다. S(t)는 횟수만 누적하는 것일 뿐, 정책의 성격과 강도(intensity)는 반영하지 않는 한계가 있습니다. 또한 횟수 누적 방식은 과거 대책의 효과가 그대로 유지된다고 가정하는데 과거 대책의 효과는 현재 대책의 효과보다 크기가 약해지는 것이 더 현실적입니다. 이에 대해 논문의 한계 중 하나로 코멘트를 넣어 주시면 좋겠습니다. 다른 연구(한국주택학회 주택연구에 출간된 연구로 기억됩니다)는 대책을 수요억제, 공급활성화 등 속성을 나누어 살펴보았습니다. 그리고 S(2017.5)=0 인지요? 물론, 기존 S(t)에 상수가 더해지기 때문에 회귀식에서 유의미성에는 변함이 없겠습니다만, 이전 정부 정책도 카운트해야 하지 않을지요?
[대책과 가격상승의 양방향성] 식(9)에서 이 양방향성이 어떻게 지지되는 것인지 좀 더 자세히 설명해주시기 바랍니다. 그리고, “정부대책때문에 집값이 상승했다”라는 결론은 내릴려면 차분변수에 의한 단기변동보다는 가격과 대책간 장기균형관계(cointegration)를 살펴봐야 하지 않을런지요?
[SVAR] short-run restrictions, long-run restrictions, identifying assumption에 대해 구체적으로 기술해주십시오. 그리고, 식 13, A matrix의 –a21가 –0.46으로 추정되었는데 이 계수가 통계적으로 유의미한지 유의미하지 않은지 제시해주십시오.
[논문의 기술 스타일에 대하여] 논문 전체적으로 내용은 학술적인데 기술 방식이나 의견 제시 방식, 단어의 선택이 학술논문에 부적절하고 신문 기고문 혹은 시사 잡지에 표현될만할 부분이 많이 있습니다. 이 관점은 심사위원 본인의 사견이지만, 다른 심사위원으로부터도 만약 이와 비슷한 의견을 받으신다면, 표현 방식에 대해 좀 더 고민해주시기 바랍니다. “집값”이라는 표현이 일상적으로 와닿기는 하지만 필요한 경우 “주택가격”으로 표현하면 어떨지 제안드립니다.
[국내 학술논문 문헌연구 추가 검토 필요] 정부정책과 주택시장 간 관계에 대해 탐색한 국내 논문에 대한 검토가 부족합니다. 대한국토도시계획학회, 한국주택학회, 한국부동산분석학회, 한국지역개발학회, 한국부동산연구원에서 운영하는 학술지들을 더 검토하셔서 이 주제에 대한 학술연구의 흐름을 제대로 설명해주십시오.
심사자 5
본 논문은 서울 집값이 급등하는 원인에 대한 연구로서 시의성이 높다. 상당히 의미 있는 연구라고 판단된다.
< 첨부> 계량경제학 전공자의 조언 내용
<1차 자문에 대한 이메일 회신 내용>
관심 가져주셔서 감사합니다. 컨설팅 회사 애널리스트, 연구소 연구원, 교수님들 많은 관심을 가지고 필요한 때 많은 연락이 오고 있습니다. 우선 보내주신 메일 내용에 대해 제 생각을 말씀드리면 다음과 같습니다.
1. VAR모형에서 중요한 것을 결국 충격반응함수(irf)인데 외생성은 변수의 오더링(ordering)을 조정해서 파악하면 되는데 구태여 svar를 사용할 필요가 있을까 하는 생각이 듭니다.
2. 정책변수를 외생적으로 결정되는 것으로 보고 있는데 제가 보기에는 정책이 오히려 집값의 영향을 받는다는 생각입니다. 이런 생각은 var모형이 개발된 동기이기도 하고, 전통적인 연립방정식 모형이 인기를 잃은 이유이기도 합니다. 또한 Lucas' critique 문제가 제기된 이유이기도 합니다. 또한 정책을 외생변수로 본다고 해도 varx모형으로 충분히 커버됩니다.
3. 내가 svar을 권장하지 않는 이유는, 경제변수들 간의 구조계수를 모형화한 모형의 문제점 때문에 var이 개발되었는데 이젠 다시 var내에서 버렸던 구조모형으로 돌아가려는 시도이기 때문입니다.
4. var, varx, svar에서는 통상 추정계수의 유의성 여부를 가설검정하지 않습니다. 예외적으로 설명하는 논문도 있긴 합니다만 그렇게 설득력 있는 설명으로 보이지 않습니다.
5. 만약 집값상승-->대책 -->집값 상승 --> ... 이라는 악순환을 관찰하고 싶다면 차라리 집값상승과 정부대책의 충격반응함수에서도 관찰할 수 있습니다. 충격반응함수의 각계수에 대한 유의성 검정통계량도 출력됩니다. 또한 예측오차의 분해 결과를 이용해서도 파악이 됩니다. 더 중요한 것은 모형에서 이런 악순환을 파악하려고 C계수값을 추정하고 유의성 검정을 하려는데 C계수값이 이를 보여주는 파라미터가 아니란 생각이 듭니다.
6. svar모형에는 단기 svar모형과 장기 svar모형으로 나누어지는데 C계수값을 구한다는 것은 장기 svar모형을 추정하는 것입니다. C계수값과 표준오차 및 유의수준을 출력하려면 옵션은 lreq(C)을 부여하면 됩니다.
결론적으로 모형은 가능하면 단순한 것이 좋습니다. 간혹 테크니컬한 부분을 강조한 연구가 있지만 큰 의미는 없다고 봅니다. 제가 가장 권하고 싶은 것은 var에서 오더링 정하는데 신경을 좀 쓰시고, 오더링이 결정되면 충격반응함수를 관찰하여 원하시는 답을 찾는 것입니다.
추가적인 질문은 e메일로 하시기 바랍니다. 가능하면 자료와 stata code를 함께 보내주시면 그 결과를 봐가면서 보다 도움되는 조언을 할 수도 있을 것 같습니다. 요즘 강의는 전부 동영상 강의로 하기 때문에 학교에 출근하지 않습니다.
또 다른 책을 집필하고 있어서 무척 바쁘네요. 저의 책 가운데 "생산성의 경제학, 박영사(2018)도 있는데 많은 실증분석 사례가 있습니다. 혹시 다른 연구에 참고되시길 바랍니다. 끝.
<2차 자문에 대한 이메일 회신 내용> 매우 분석적이고 잘 구성되어 있습니다. 무척 재미있게 읽었습니다. 끝.
일전에 박진백 외(2021)의 저자인 두 분께 김원중·이혁주(2022)에 대해 논평을 요청한 적이 있습니다. 두 분께서 회신하지 않으셔서 박진백 외(2021)와 두 분이 작성한 국토연구원 정책리포트가 왜 문재인 정부 부동산정책의 면책 근거가 될 수 없는지 지금부터 제가 설명해 보겠습니다.
김원중·이혁주(2022) 논문에 대해 심사과정에서 제기되었던 의문에 대해 우선 답하고, 이 작업을 마치면 본격적으로 박진백 외(2021)를 비판적으로 재검토합니다.
그럼 심사과정에서 제기되었던 비판에 대해 답합니다. 아래는 심사평에 대한 회신인데 그런대로 변론이 되었다고 생각합니다.
주목할 만한 심사평은 아래 내용입니다. 심사자 3의 심사평인데 마지막 문장을 눈여겨보세요.
5. 일부의 논의는 이해하기 힘듦. 연구목적 부분에서 "주택보유‧소비억제세율"이라고 하지만 어떤 현실의 세금을 가리키는 것인지 불분명함. 세금이 아닌 것을 세금이라고 부를 수는 없음.
설명연구에서 추상화, 개념화가 어떤 의미를 갖는지 이해하지 못하고 쓴 심사평입니다.
익숙하지 않은 문서를 보고 이해하지 못하는 것은 자연스러운 일이지만, 같은 분야 전공자로서 그 의의(significance)마저 파악하지 못하고 오히려 과학문서에 대한 존중 없이 자신의 주장을 관철하려는 것은 삼가야 합니다. 이런 현상을 당분간 전강수 현상, 그런 유형에 속하는 사람을 전강수형 인간이라고 부르겠습니다. 지금까지 등장한 ‘전강수’는 전강수, 김경민 교수 그리고 심사자 3입니다. 한국 부동산 및 토지의 탈상품화 논의에서 이제 ‘전강수’를 도외시해도 좋은 변칙사례로 취급하기가 어렵게 되었습니다.
두 분께서 왜 박진백 외(2021)를 문재인 정부 면책의 근거로 사용할 수 없는지 직접 설명하지 않으시면, 이혁주 교수가 두 분께 확인하는 과정을 추가하게 되어 논의시간이 더 걸리게 됩니다.
오늘 내용도 주택논쟁 사이트에 추가합니다.
감사합니다. 이혁주 드림
안녕하세요. 서울과기대 행정학과 이혁주입니다.
일전 이메일에서 말씀드렸던 것처럼 왜 박진백 외(2021)가 문재인 정부 부동산정책의 면책근거로 사용할 수 없는지 지금부터 살펴보겠습니다. 이 문제를 명확히 하지 않는 한 이후 논의가 별의미가 없을 정도로 중요한 이슈이고, 금리원인론은 대중매체에서 라디오 뉴스처럼 반복적으로 발신되는 내용입니다.
김수현 교수님께서는 과학문서가 진상(眞相)에 다가가는 도정에서 어떤 역할을 하는지 특히 눈여겨보시기 바랍니다. 나중에 질문합니다.
오늘은 한성대 김상조 교수님을 초대했습니다. 환영합니다. 최근 구여권 인사를 중심으로 구성한 정책포럼에서 중요하게 다룰 것으로 예상되는 부동산문제를 두고 현재 학자간 논쟁이 벌어지고 있습니다. 논쟁의 주제어는 집값, 부동산, 계획가, 과학문서, 측정, 스칼라십 등이고, 그간의 논쟁이력이 ‘주택논쟁’ 사이트에 있습니다. 클릭해서 확인해 보시면 좋을 것 같습니다.
다시 본론으로 들어와서 논의를 계속합니다. 논문 박진백 외(2021) “금리의 주택가격 상승 기여도 추정”에서 저자들은 2019년 7월 금리의 구조적 전환이 발생했고 이후 집값 상승의 주요 요인으로 작용했다고 주장합니다. 사용한 변수는 아파트가격, 금리, 제조업 생산지수, 주택 준공물량, 세대수 등 아파트값에 영향을 미치는 수요/공급요인들입니다.
우선 분석모형이 보수와 진보가 대립하는 핵심 지점을 정확히 겨누고 있으면서 핵심 의문을 공정한 시각에서 바라보는 분석틀을 갖추었는지 살펴보겠습니다. 보수는 문재인 정부가 집값 상승을 유발한 당사자라고 주장합니다. 이러한 비판이 경험적 규명의 대상으로서 아직 논란이 정리된 것이 아니기 때문에 이러한 주요 논점을 담아 모형을 설정하는 것이 분석의 정도(正道)입니다. 그런 일을 하는 것이 연구자이구요.
보수의 비판과 저자들의 분석틀을 참고해 변수간 인과 경로를 다시 그린 것이 아래 <그림>입니다. 제가 생각해 본 가장 간단한 그림입니다. 실제 모형(execution model)은 이 그림이 담고 있는 인과론을 얼마든지 더 풍부화해 사용할 수 있습니다.
저자들은 수요/공급요인이 집값에 영향을 미치는 경로로서 경로 B를 상정하고 분석하면서, 정부요인이 집값에 미치는 직간접 경로 정부요인-A-B-집값, 정부요인-C-집값 등 경로 두 가지는 사상(捨象)합니다.
만약 이들 직간접 경로를 사상해도 된다면 굳이 복잡한 모형을 사용할 이유가 없고 두 분의 접근법은 타당하게 됩니다. 직간접 경로를 사상하고 경로 B만 고려한 모형을 이용해 문재인 정부의 정책을 평가한 이유가 무엇인지 설명해주실 수 있겠는지요? 논문에 관련 설명이 없어서 질문드립니다.
감사합니다. 이혁주 드림
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
서울과기대 이혁주 교수입니다.
지난번 이메일에서 알아본 내용은 이렇습니다. 두 분은 논문에서 정부대책이 집값에 미치는 직간접 경로를 사상(捨象)하고 금리, 주택공급 등 통상적인 경제변수만 고려해 문재인 정부 기간 집값 상승의 원인을 분석했습니다. 이렇게 모형을 설정한 이유에 대해 이혁주 교수가 그 이유를 물었습니다.
이 질문에 대해 박진백, 이태리 박사 두 분이 답해야 하는 이유는 두 가지입니다.
첫째, 정부요인을 생략한 이유에 대해 적절히 변론하지 못하면 이 논문은 교과서에서 말하는 specification error, omitted variable로 인한 편향(bias) 때문에 논문에 기술한 내용 전반의 타당성이 의문시됩니다. 다행히 학술지에 게재되었습니다. 그러나 다시 쓰고(rewriting) 새로운 투고 절차를 밟아야 하는 문제라서 심사과정이 충실했다면 게재 불가 판정을 받았을 것입니다.
둘째, 박진백 외(2021)라는 논문의 가치 때문입니다. 문재인 정부 부동산정책의 효과를 측정한 논문은 현재 김원중·이혁주(2022), 박진백 외(2021) 등 2편이 있습니다. 두 분이 쓴 논문은 좁게는 문재인 정부 부동산정책, 넓게는 그 전신인 노무현 정부 부동산정책의 refined version으로서 진보적 부동산정책의 2nd round 정책실험의 성패에 관한 글입니다. 이 글의 타당성이 부정되면 진보 부동산정책과 그 연장선 위에 있는 최근 결성 ‘정책포럼’의 정당성까지 의문시됩니다.
논문 한두 편으로 진보의 어젠다와 그간 성취가 부정되는 것은 아니지만, 진보적 부동산정책의 정당성을 평가할 수 있는 인과론적 측정문건의 전반적 부재 상황에서 주목할 만한 희소 문서의 가치가 부정된다는 것은 그냥 지나칠 문제가 아닙니다.
두 분이 scholar라면 논문의 가치를 논변하셔야 하고 또 할 수 있어야 합니다.
경청해 주셔서 감사합니다. 이혁주 드림
김원중·이혁주. 2022. 서울 아파트가격 급등 원인에 대한 통계적 검토. 국토계획 57(7): 69-90.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
안녕하세요. 서울과기대 행정학과 이혁주 교수입니다.
오늘은 이준구 교수님을 초대합니다. 최근 출간한 책 이준구(2023)에서 집중 거론한 내용을 현재 연구자들이 이메일 논쟁하고 있습니다. 교수님 성함 세 글자 모르는 분은 없으실 것으로 보고 따로 소개하지 않습니다. 교수님께 도움을 요청하고자 이렇게 초대하게 되었습니다. 인사드립니다. 그간 논쟁은 ‘주택논쟁’ 링크에 있습니다. 주제어는 집값, 부동산, 과학문서, 측정, 스칼라십 등입니다.
다시 본론으로 와서, 과학은 이론과 관찰이라는 기둥 둘로 구성되었고, 관찰은 설명방식으로서 이론과 일치해야 합니다. 사회과학 조사방법론의 세계적 best seller Babbie(2020: 8), 국내 베스트 셀러 남궁근(2021: 11)에 나오는 실험과학(experimental science) 얘기입니다.
아무튼 이런 논설에 따르면 이론과 관찰 가운데 어느 하나라도 없으면 그러한 믿음, 관행, 실무(practice), 정책은 과학이 아닌게 됩니다(Pigliucci, 2013: 22). 그런데 박진백 외(2021)의 경우 이론과 일치하는 관찰결과 즉 evidence를 확보하지 못한 것으로 보이는데, Babbie, 남궁근에 기술된 원칙을 적용하면 박진백 외의 시도는 진보 부동산정책의 과학적 근거 확보 노력이 실패한 사례가 됩니다.
전강수(2021)의 경우 ‘이론’의 내적 타당성(internal validity)에 문제가 있어서 그 논설이 과학의 요건을 갖추지 못했던 것과 대조가 됩니다. 변창흠, 김경민 교수의 경우는 얘기가 왔다 갔다 해서 ‘의견’으로 분류됩니다. 김수현 교수는 침묵이라 판단 자체가 현재로서는 힘듭니다.
여기 얘기가 모두 정리되면 이준구 교수에게는 refutable hypothesis의 기술(記述)을 요청해보겠습니다. 과학 커뮤니티에서 존중받는 두 지식체계가 충돌할 때 어떻게 이 모순을 해결하고 ‘의견’을 지식화할지 20세기의 철학적 성취를 활용해보자는 취지의 제안입니다.
과학과 비과학의 구분(demarcate)에 관한 얘기로서 이준구(2023)에서 제기한 방대한 주제 전반뿐 아니라 공급론자의 주장에 대해서도 똑같은 기준을 적용할 수 있습니다. 황당한 얘기같이 들리지만 현재 목도하는 인식의 간극과 현상(現狀)에 주목할 때 고려해 볼 만한 접근법입니다. 전강수 교수는 유사 제안에 대해 거절한 바 있습니다(이전 이메일 참고).
박진백, 이태리 박사님께서 설명이 없으면 중요변수의 생략이 연구결과에 어떤 영향을 미쳤는지 자료를 이용해 살펴보겠습니다.
감사합니다. 이혁주 드림
남궁근. 2021. 행정조사방법론. 6판. 서울: 법문사.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
전강수, 2021.5.27. “아파트공급 확대론의 치명적 결함”, 오마이 뉴스.
Babbie, Earl. 2020. The Practice of Social Research. 15th edition. Belmont, CA: Wadsworth Cengage.
Pigliucci, Massimo. 2013. The demarcation problem. In Pigliucci, M. and Boudry, Maarten (ed), Philosophy of Pseudoscience, Chapter 1. Chicago: University of Chicago Press.
안녕하세요. 이혁주 교수입니다.
이준구 교수님께서 격려 이메일을 보내 주셨습니다. 감사드립니다. 이준구 (2023)에 제기된 여러 가지 speculation 의 진위는 차차 알아보도록 하겠습니다. 문서의 가치를 고려해 첨부합니다 ( 첨부 1).
다시 본론으로 와서, 지난번 이메일에서 박진백, 이태리 박사님의 설명이 없으면 중요변수의 생략이 연구결과에 어떤 영향을 미쳤는지 자료를 이용해 살펴보겠다고 했습니다.
분석결과의 강건성 (robustness) 을 고려해 자료 두 가지를 이용합니다.
(1) 박진백 외에서 사용한 자료 가운데 서울 자료
기간 .. 박진백 외와 동일. 2011.1~2021.5
변수 (박진백 외에서 사용한 변수).. 실질 KB 아파트가격 지수 월간변동률 Price.r(t), M2 월간변동률 M2.r(t), 실질 CD 금리 1 차 차분자료 CD.d(t), 실질 제조업 생산지수 월간변동률 MPI.r(t), 주택준공물량 월간변동률 H_supply.r(t), 세대수 증감률 HH.r(t). t 는 월
추가한 변수 .. 문재인 정부 더미 Moon(t), 박근혜 정부 더미 Park(t), 팬데믹 더미 Pandemic(t)
자료 내려받기 .. PJB_data_Seoul.csv
(2) 월간 1 차 차분 자료
기간 .. 2009.1~2022.4
변수(명목자료)..서울 KB 아파트가격 지수 월간 자료 1 차 차분한 것 Price(t), M2 월간 자료 1 차 차분한 것 M2(t), CD 금리 월간 자료 1 차 차분한 것 CD(t), 서울 제조업 생산지수 월간 자료 1 차 차분한 것 MPI(t), 가계부채 월간 자료 1 차 차분한 것 Debt(t), 서울 전세가격 지수 월간 자료 1 차 차분한 것 Jeonse(t), 문재인 정부 더미 Moon(t), 박근혜 정부 더미 Park(t), 팬데믹 더미 Pandemic(t), 이명박 정부 정부대책 더미 D_Lee(t)( 발표한 달 -1, 아닌 달 0), 박근혜 정부 정부대책 더미 D_Park(t)( 발표한 달 -1, 아닌 달 0), 문재인 정부 정부대책 더미 D_Moon(t)( 발표한 달 +1, 아닌 달 0), SumD(t)=D_Lee(t)+D_Park(t) +D_Moon(t) (정부대책 누적횟수를 1 차 차분한 변수. 이 누적횟수에 비례해 Price가 변할 것이라는 가설 검증 가능. period-differentiated impact 의 존재 여부도 측정/검증 가능)
자료 내려받기 .. 1st_differenced_data.csv
보수정부의 경우 정부대책 발표시 -1, 진보정부의 경우 정부대책 발표시 +1 값을 부여했습니다. 부호는 중요하지 않습니다. 그러나 부호를 반대로 하는 것은 중요합니다. 상대방 탓 하는데 누가 올바른 말을 하는지 확인하려면 이렇게 해야 합니다.
이용할 소프트웨어는 R studio 공개소프트웨어로서 여기서 내려받아 설치하면 됩니다.
<첨부 2> 안내에 따라 자료를 R Studio 에 올린 후 자유롭게 자료를 검토해 보시기 바랍니다. 제가 검토한 결과는 다음에 올리겠습니다.
시계열자료간 허위 상관문제가 있어 보통 차분자료 (differenced data) 로 변환해 자료를 이용합니다. 올린 자료는 모두 일차가공 처리하고 통계검증 절차 (stationarity) 를 거쳤기 때문에 바로 이용할 수 있습니다. 변수간 상호작용 때문에 보통 single equation model 대신 다방정식(multiple equation system) 모형인 vector autoregressive model(VAR 모형, 유튜브 참고)를 이용합니다. 여기서도 동시성 편향문제가 있을 수 있어 독립변수로 lagged variable을 이용합니다. 과하다 싶을 정도로 입증의 짐을 지는 것이 과학커뮤니티 일반의 규범이라서 이 정도는 해야 할 것 같습니다.
감사합니다. 이혁주 드림
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가 ? 경기도 고양 : 문우사.
<첨부 1>... 이준구 교수 -> 이혁주 교수 이메일 (2023.2.16.)
이 교수께,
변변치 않은 제 책이 젊은 경제학자들의 연구열에 자극제가 되었다니 너무나 기쁜 일입니다.
잘 아시다시피 제 시론은 엄밀한 실증적 근거 위에서 쓴 게 아니기 때문에 좀 더 정밀한 실증적 검증이 필요하다고 봅니다.
참여하고 계신 여러분들의 노고로 진실이 좀 더 정확하게 밝혀지기를 기대해 봅니다.
이준구 드림
<첨부 2> R codes
아래 명령어 가운데 > 다음에 있는 명령어를 R Studio 명령어 입력창에 입력한 후 Enter 키 침
> install.packages("vars") # VAR 모형 돌리는데 필요한 package 설치하기
> PJB=read.csv(file.choose(),header=T) # 자료 읽어들이기
> View(PJB) # 자료 PJB 가 어떻게 생겼는지 볼 수 있음
> Rhee=read.csv(file.choose(),header=T) # 자료 읽어들이기
> View(Rhee) # 자료 Rhee 가 어떻게 생겼는지 볼 수 있음
아래는 R Studio 화면의 모양 .
안녕하십니까, 이혁주 교수입니다.
박진백 외(2021)가 사용한 월간 변화율 자료 가운데 서울 통계를 이용해 금리의 구조전환이 아파트값에 영향을 주었는지 알아보겠습니다. 박진백 외와 같이 단일방정식을 이용합니다.
Price.r=-.0050-.0003*CD.d+.0031*CD.d*Break+.0110*MPI.r (식1)
(.0069) (.0159) (.0051)**
+.0012*H_supply.r-.9163*HH.r+.0059*Park+.0128*Moon, R2=.44
(.0009) (.5817) (.0012)*** (.0014)***
*** p-value<0.01, ** p-value<0.05, 괄호 안 숫자는 표준오차
변수명(순서대로): 서울 아파트값 지수, 금리, 금리*2019.9 전후 더미변수, 제조업생산지수, 주택공급, 가구수, 박근혜 정부 더미, 문재인 정부 더미(금리는 월간 1차 차분, 나머지는 모두 월간 변화율)
관심변수인 금리 관련 변수의 회귀계수 2종(빨간 숫자) 모두 유의하지 않습니다. 정권더미 Park, Moon 빼고 추정해도 마찬가지입니다(보고 생략).
다음은 김원중·이혁주(2022) 월간 1차 차분자료를 이용해 추정한 결과입니다.
Price=.021-.021*CD+.062*CD*Break+.353*Jeonse+.605*Pandemic, R2=.38 (식2)
(.022) (.063) (.089)*** (.095)***
변수명(순서대로): 서울 아파트값 지수, 금리, 금리*2019.9 전후 더미변수(상호작용 변수), 전세가격지수, 팬데믹 더미(2020.3 이후=1, 나머지 기간=0)
금리 관련 변수 2개 모두 유의하지 않고, 2019.9 이후 금리 하락은 집값 하락을 의미합니다. 이상한 결과입니다. 다른 방식으로 추정해도 대동소이합니다.
정권변수를 추가하면 조금 개선됩니다. 아래는 결과입니다.
Price=-.276-.055*CD+.086*CD*Break+.534*Jeonse+.191*Park (식3)
(.018)*** (.052) (.076)*** (.064)***
+.659*Moon+.099*Pandemic, R2=.59
(.073)*** (.098)
*** p-value<0.01, 괄호 안 숫자는 표준오차
변수명(순서대로): 서울 아파트값 지수, 금리, 금리*2019.9 전후 더미변수(상호작용 변수), 전세가격지수, 박근혜 정부 더미, 문재인 정부 더미, 팬데믹 더미(2020.3 이후=1, 나머지 기간=0)
(식3)에 따르면 2019.9 이후 구조전환이 관찰되지 않습니다(insignificant, 빨간 숫자). 그리고 2019.9 이후 이자율 하락은 집값 하락을 의미하는 것으로 계수의 크기가 산출되었습니다(-.055+.086>0). 기대부호와 반대입니다. 유의하게 나왔다면 더 문제가 될 뻔했습니다.
박진백 외에서는 구조전환 여부를 판단하면서 (1)집값은 당기 독립변수에 의해 결정된다고 가정했고(no lagged variables used), (2)변수간 상호작용을 고려하지 않았고(즉 단일 방정식 이용), (3)정부요인도 사상(捨象)했습니다. 사실과 다르면 말씀 부탁드립니다. 박진백 외 모형을 이용해 분석했지만, 모형의 타당성과 별개로 이렇다 할 만족스런 결과를 얻지 못했습니다.
다음 이메일에서는 이들 세 가지 비판을 수용해 VAR모형을 꾸미고 다시 분석해보겠습니다. VAR모형 R 사용설명서는 여기에 있습니다.
주택논쟁 사이트 맨 뒤에 (식1)-(식3)을 유도하는 R 명령어를 첨부했습니다.
이혁주 드림
김원중·이혁주. 2022. 서울 아파트가격 급등 원인에 대한 통계적 검토: 정부 대 시장. 국토계획, 57(7): 69-90.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
<첨부 1> (식1)용 R codes
> PJB=read.csv(file.choose(),header=T) #박진백 외(2021) 자료 읽어들이기. PJB_data_Seoul.csv 를
# 적당한 곳에 저장한 후 여기 명령어를 이용해 읽어 들임
> View(PJB) # 자료 모양 보기
> Break=array(0,c(125)) # 더미변수 Break 만들기
> for(n in 106:125){Break[n]=1} #2019.8까지는 0, 이후는 1인 더미변수 값 부여.
# 2019.9는 박진백 외가 추정한 구조전환 시기 시점
> CD_Break=PJB$CD.d*Break # interaction term between CD.d and Break dummy
> result=lm(Price.r~CD.d+CD_Break+MPI.r+H_supply.r+HH.r+Park+Moon,data=PJB) #회귀식 구하기
> summary(result) #추정결과 화면에 출력하기
<첨부 2> (식2), (식3)용 R codes
> Rhee=read.csv(file.choose(),header=T) # 자료 1st_differenced_data.csv 를 적당한 곳에 저장한 후
# 여기 명령어를 이용해 저장한 자료를 읽어 들임
> View(Rhee)
> Break1=array(0,c(161)) # 더미변수 Break1 만들기
> for(n in 106:161){Break1[n]=1} #2019.8까지는 0, 이후는 1인 더미변수
> CD_Break1=Rhee$CD*Break1 # interaction term between CD and Break dummy
> r1=lm(Price~CD+CD_Break1+Jeonse+Pandemic,data=Rhee) #(식2)
> summary(r1) # (식2) 결과 확인하기
> r=lm(Price~CD+CD_Break1+Jeonse+Park+Moon+Pandemic,data=Rhee) #(식3)
> summary(r) # (식3) 결과 확인하기
안녕하십니까, 이혁주 교수입니다.
지난번 이메일에서 문재인 정부 시기 금리에 구조전환이 발생해 집값이 급등했는지 그 여부를 ‘단일 방정식’을 이용해 살펴보았습니다. 추정결과가 유의하지 않거나 이론상 해석이 어려운 결과가 도출되었습니다. 이자율을 핵심변수로 포함하되 제대로 된 모형을 만든 후 처음부터 다시 분석하는게 좋다는 시사를 얻었습니다.
구체적으로 아래와 같은 모형을 이용해봅시다.
(1) 이자율을 핵심 관심변수로 포함하고 정부요인은 간단하게 정권더미 Moon(문 정부 기간=1, 나머지 기간=0), Park(박근혜 정부 기간=1, 나머지 기간=0)으로 대표하고 VAR모형을 구축해 분석한다. 자료가 2009.1부터이므로 ‘기준’ 정권은 이명박 정부가 된다.
(2) 분석기간을 문재인 정부 일부로 한정해야 했던 김원중·이혁주(2022), 박진백 외(2021)와 달리 문재인 정부 전체 기간으로 분석대상 기간을 확장한다.
(3) 박진백 외가 사용한 월간 변화율 대신 김원중·이혁주가 사용한
월간 1차 차분자료 = 인접한 두 달 변수간 변동치, 1st_differenced_data.csv
을 이용한다.
월간 1차 차분 자료를 이용하면 이준구(2023) ‘프롤로그’에서 거론한 “정책시차” 덕에 요즘 보듯이 윤석열 정부 집값이 하락했는지 그 여부를 검정할 수 있습니다. 마찬가지로 문재인 정부 초기 집값이 박근혜 정부 때문에 높았는지도 검정할 수 있습니다.
추정할 회귀식 체계를 행렬과 변수 벡터를 이용해 표현하면 아래와 같이 간단하게 쓸 수 있습니다.
모형: y(t)=ν+A1y(t-1)+…+Apy(t-p)+Bx(t)+e(t) (식1)
ν, A1,…,Ap, B는 계수행렬, p는 차수, e는 오차항, t는 월, y(t)는 t월 내생변수, x(t)는 외생변수.
내생변수: 아파트값 지수 Price, CD 금리 CD, 전세가격지수 Jeonse
외생변수: 박근혜 정부 정권더미 Park, 문재인 정부 정권더미 Moon, 구조전환 상호작용항 CD_Break
즉 식(1)은 내생변수에 포함된 서울 아파트가격 방정식, 금리 방정식, 서울 아파트전세가격 방정식 등 3개의 방정식으로 구성됩니다. 내생변수를 다르게 구성해도 큰 차이가 있는 것으로 아직 확인한 바 없어서 위와 같이 구성한 모형으로 진행하겠습니다.
금리 관련변수 2종을 모형에 어떻게 반영하느냐에 따라 서로 다른 모형을 여러 가지 만들 수 있습니다. 여기서는 아래 4가지만 검정해보겠습니다. 위에 나열한 변수 모두를 이용해 구성한 모형은 unrestricted model로서 UR model이라고 부르고, 일부 변수가 누락된 모형은 restricted model로서 R model이라고 부르겠습니다. parsimony 원칙을 적용해 설명요인의 수를 줄이기 위해 도입한 개념입니다.
검정 1: UR model은 모든 변수를 포함한 모형. R model은 Price equation에서 CD_Break 회귀계수를 0으로 놓고 나머지는 UR model과 동일 -> 금리의 구조전환 여부 검정
검정 2: UR model은 모든 변수 포함한 모형. R model은 Price equation에서 CD 및 CD_Break 회귀계수 2개가 0이고, 나머지는 UR model과 동일 -> 구조전환 여부 포함 금리를 집값에 영향을 미치는 변수로 취급할 수 있는지 검정
검정 3: 검정 2에서 VAR(1) 대신 VAR(2)를 이용해 다시 검정 -> robustness 확인
검정 4: UR model은 외생변수 가운데 Pandemic만 포함. R model은 Price equation에서 CD 및 CD_Break 회귀계수가 0이고 나머지는 UR model과 동일 -> robustness 확인
CD_Break변수는 내생변수이지만 추정목적상 외생변수로 간주하고 추정할 수 있습니다. 자세한 내용은 Lutkepohl(2005) 3장, 4장 6절 및 10장을 참고하면 됩니다. R, STATA에는 해당 추정메뉴가 없더군요. 해당 추정메뉴가 없다는 것은 해당 검정 또한 없다는 말입니다. EViews도 마찬가지인 것 같았습니다. 일단 모형을 추정하고 나면 그다음부터는 기계적인 검정과정입니다.
아래는 검정 결과입니다.
표에서 UR model의 로그 우도가 R model의 로그 우도보다 예외 없이 높게 나왔습니다. 설명변수의 개수가 더 많은 UR model의 설명력이 설명변수의 개수가 적은 R model보다 높아서 나온 당연한 결과입니다. 그런데 어떤 방식으로 검정하든 R model의 로그 우도가 UR model과 별로 차이가 나지 않고, 그 결과 금리 관련변수는 예외 없이 유의한 설명변수로 보기 어렵다는 검정결과(즉 높은 p-value)가 나왔습니다. 특히 구조전환 여부를 검정한 검정 1에서 p value는 지나치게 큽니다(빨강 숫자).
실망적인 결과입니다. 사실은 대단히 실망적입니다. 왜냐하면 박진백 외 경로그림에서 저자들은 정부요인을 설명요인에서 제외함으로써 문 정부를 면책하고 집값 상승의 책임을 통상의 경제변수(즉 금리)로 돌리려 했지만, 선택된 경제변수 자체의 설명력에 문제가 있는 것으로 검정결과가 나왔기 때문입니다. 구조전환 여부는 차치하고...
이제 애초에 이혁주 교수가 제기했던 문제, 즉 정부요인을 생략하면 회귀계수 추정에 편향이 발생하는지 알아보겠습니다. 지금 VAR모형을 가지고 논의를 하므로 VAR모형에서 알아봅니다. 아래는 <표 1> 결과물에서 추출한 Price equation입니다(괄호 안 숫자는 표준오차)
정권더미 포함시: Price(t)=-.096+.533*Price(t-1)-.024*CD(t-1)-.013*CD_Break(t)+.137*Jeonse(t-1) (식2)
(.07)*** (.016) (.04) (.08)
+.098*Park(t)+.293*Moon(t)+.113*Pandemic(t), R2=.64
(.06) (.08)*** (.09)
(검정 1, 검정 2 UR model의 Price 방정식)
정권더미 제외시: Price(t)=.035+.682*Price(t-1)-.007*CD(t-1)-.02*CD_Break+.008*Jeonse(t-1) (식3)
(.06)*** (.01) (.04) (.07)
+.24*Pandemic(t), R2=.62 (검정 4 UR model의 Price 방정식)
(.08)***
*** p-value < .01
(식2), (식3)에 따르면, 정권더미 Park, Moon의 포함 여부에 따라 VAR모형에서도 CD, CD_Break의 회귀계수에 작지 않은 변화가 발생합니다(빨간 숫자). 즉 저자들이 VAR모형을 이용했다고 하더라도 정부요인을 고려하지 않았을 때 VAR모형에서 편향 가능성이 마찬가지로 확인됩니다.
요약하면, 모형 회귀계수의 편향 가능성, 구조전환 존재여부에 대한 의문, 그리고 금리 CD의 설명력에 대한 회의적 분석결과 등 박진백 외는 다양한 문제를 가지고 있습니다. 처음 박진백 외를 검토했을 때 예상하지 못했던 일들입니다.
이 논문의 기초가 되었던 국토연구원 해당 정책레포트도 같은 문제를 가지고 있을 것으로 보이고, 저자들이 참여해 작성한 국토연구원 부동산시장연구센터 다른 문서들도 비슷한 문제점이 있는 것은 아닌지 의문이 듭니다. 이러한 문제가 논문의 저자와 연구원 수준에서 그쳐야 하는데 어떨지 모르겠군요. 지금까지 드러난 문제 말고 또 다른 문제는 없는지 더 알아봐야 할 것 같습니다.
이제 R model의 설명력이 UR model과 비슷하다면, 굳이 금리 관련변수를 서울 아파트값 영향요인으로서 주목할 이유가 없게 됩니다. 모형 설정문제는 간단하지 않아서 추가 논의가 필요합니다만, 지금까지 분석한 결과를 토대로 생각해볼 때 제로 베이스에서 모형을 다시 구성해야 한다는 결론에 이릅니다.
다음엔 금리는 잊고 새로 구축한 모형에 대해 말씀드리겠습니다.
감사합니다. 이혁주 드림
김원중·이혁주. 2022. 서울 아파트가격 급등 원인에 대한 통계적 검토: 정부 대 시장. 국토계획, 57(7): 69-90.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
Lutkepohl, Helmut. 2005. New Introduction to Multiple Time Series Analysis. Berlin: Springer. (인터넷에 있음)
<첨부 1> 검정 1용 R codes
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어 들이기
> View(Rhee) #자료 보기
> endo=cbind(Rhee$Price,Rhee$CD,Rhee$Jeonse) #Price, CD, Jeonse로 내생변수 데이터셋 endo 만들기
> colnames(endo)=c('Price','CD','Jeonse') #endo 각 열에 변수명 부여하기
> Break=array(0,c(161)) # 더미변수 Break 만들기
> for(n in 106:161){Break[n]=1} #2019.8까지는 0, 이후는 1인 더미변수
> CD_Break=Rhee$CD*Break # interaction term between CD and Break dummy
> exo=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic,CD_Break)
#외생변수 Park, Moon, Pandemic 및 내생변수 CD_Break로 구성된 외생변수 데이터셋 exo 만들기
> colnames(exo)=c('Park','Moon','Pandemic','CD_Break') #exo 각 열에 변수명 부여하기
> library(vars) # VAR모형을 돌릴 수 있는 package program 불러오기
> VARselect(endo,exogen=exo) #최적 차수 p=1 선택
> UR_model=VAR(endo,p=1,exogen=exo)
# 변수 endo를 내생변수, 변수 exo를 외생변수로 해서 VAR(1) 추정하고
# 그 결과물을 UR_model 이름으로 저장하라.
> summary(UR_model) #UR model 추정 결과 출력하기
> logLik(UR_model) #UR_model의 로그 우도=-219.78
> Bcoef(UR_model) #UR_model의 회귀계수 행렬 출력.
#모양 확인하고 다음 줄 명령어 작성
> constraint1=matrix(c(1,1,1, 1, 1,1,1, 0, #Price equation, CD_Break의 계수=0
1,1,1, 1, 1,1,1, 1, #1은 해당 위치 계수는 살려서 추정하라는 말
1,1,1, 1, 1,1,1, 1),nrow=3,byrow=TRUE)
# 이 행렬의 배열은 Bcoef(UR_model)에서 출력한 계수들의 위치와 1대1일 대응
> R_model1=restrict(UR_model, method="man", resmat=constraint1)
#이미 추정한 UR_model에 constraint1에 있는 대로 일부 계수는 0으로 놓고 모형을
#다시 추정하고 그 결과물을 R_model1에 저장하라는 명령어. 명령어 restrict는
#제약모형을 추정하라는 명령어. 사용법은 여기 매뉴얼 p.29 참고.
> logLik(R_model1) # 로그 우도 = -219.83
<첨부 2> 검정 2용 R codes. 검정 1을 이미 수행했다면 아래 빨간색 스텝은 불필요
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
> View(Rhee) #자료 보기
> endo=cbind(Rhee$Price,Rhee$CD,Rhee$Jeonse) #Price, CD, Jeonse로 내생변수 데이터셋 endo 만들기
> colnames(endo)=c('Price','CD','Jeonse') #endo 각 열에 변수명 부여하기
> Break=array(0,c(161)) # 더미변수 Break 만들기
> for(n in 106:161){Break[n]=1} #2019.8까지는 0, 이후는 1인 더미변수
> CD_Break=Rhee$CD*Break # interaction term between CD and Break dummy
> exo=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic,CD_Break)
#외생변수 Park, Moon, Pandemic 및 내생변수 CD_Break로 구성된
#외생변수 데이터셋 exo 만들기. 이 step 이미 밟았다면 이 스텝 생략가능
> colnames(exo)=c('Park','Moon','Pandemic','CD_Break') #exo 각 열에 변수명 부여하기
> library(vars) # VAR모형을 돌릴 수 있는 package program 불러오기
> VARselect(endo,exogen=exo) #최적 차수 p=1 선택
> UR_model=VAR(endo,p=1,exogen=exo) # UR model 추정하기
> summary(UR_model) #UR model 추정 결과 출력하기
> logLik(UR_model) #로그 우도=-219.78
> Bcoef(UR_model) # 회귀계수 행렬의 모양 확인하고 다음 줄 명령어 작성
> constraint2=matrix(c(1,0,1, 1, 1,1,1, 0, #Price eq.에서 CD, CD_Break의 계수=0
1,1,1, 1, 1,1,1, 1, # 하늘 색 entry가 그것.
1,1,1, 1, 1,1,1, 1),nrow=3,byrow=TRUE)
> R_model2=restrict(UR_model, method="man", resmat=constraint2)
> logLik(R_model2) # 로그 우도 = -221.27
<첨부 3> 검정 3용 R codes. 검정 1, 2를 이미 수행했다면 아래 빨간색 스텝은 불필요
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
> View(Rhee) #자료 보기
> endo=cbind(Rhee$Price,Rhee$CD,Rhee$Jeonse) #Price, CD, Jeonse로 내생변수 데이터셋 endo 만들기
> colnames(endo)=c('Price','CD','Jeonse') #endo 각 열에 변수명 부여하기
> Break=array(0,c(161)) # 더미변수 Break 만들기
> for(n in 106:161){Break[n]=1} #2019.8까지는 0, 이후는 1인 더미변수
> CD_Break=Rhee$CD*Break # interaction term between CD.d and Break dummy
> exo=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic,CD_Break)
#외생변수 Park, Moon, Pandemic 및 내생변수 CD_Break로 구성된
#외생변수 데이터셋 exo 만들기. 이 step 이미 밟았다면 이 스텝 생략가능
> colnames(exo)=c('Park','Moon','Pandemic','CD_Break') #exo 각 열에 변수명 부여하기
> library(vars) # VAR모형을 돌릴 수 있는 package program 불러오기
> VARselect(endo,exogen=exo) #최적 차수 p=1 선택
> UR_model2=VAR(endo,p=2,exogen=exo) # VAR(2) UR model 추정하기
> summary(UR_model2) #UR model 추정 결과 출력하기
> logLik(UR_model2) #로그 우도=-129.959
> Bcoef(UR_model2) # 회귀계수 행렬의 모양 확인하고 다음 줄 명령어 작성
> constraint3=matrix(c(1,0,1, 1,0,1, 1, 1,1,1,0,
1,1,1, 1,1,1, 1, 1,1,1,1,
1,1,1, 1,1,1, 1, 1,1,1,1),nrow=3,byrow=TRUE)
#여기 0으로 놓은 회귀계수의 개수가 아래에서 chi square 검정시 자유도(df)가 됨. 여기서 df=3.
> R_model3=restrict(UR_model2, method="man", resmat=constraint3)
#full model인 UR_model2에 선형제약 constraint3를 부여한 후 다시 추정하기
> logLik(R_model3) # R_model3의 로그 우도 = -132.13. df=3
<첨부 4> 검정 4용 R codes. 검정 1,2,3 가운데 어느 하나라도 수행했다면 아래 빨간색 스텝은 불필요
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
> View(Rhee) #자료 보기
> Break=array(0,c(161)) # 더미변수 Break 만들기
> for(n in 106:161){Break[n]=1} #2019.8까지는 0, 이후는 1인 더미변수
> CD_Break=Rhee$CD*Break # interaction term between CD.d and Break dummy
> endo=cbind(Rhee$Price,Rhee$CD,Rhee$Jeonse) #Price, CD, Jeonse로 내생변수 데이터셋 endo 만들기
> colnames(endo)=c('Price','CD','Jeonse') #endo 각 열에 변수명 부여하기
> exo1=cbind(Rhee$Pandemic,CD_Break) #외생변수 Park, Moon 제외
> colnames(exo1)=c('Pandemic','CD_Break') #exo1 각 열에 변수명 부여하기
> library(vars) # VAR모형을 돌릴 수 있는 package program 불러오기
> VARselect(endo,exogen=exo1) #최적 차수 p=1 선택
> UR_model4=VAR(endo,p=1,exogen=exo1) # VAR(1) UR model4 추정하기
> logLik(UR_model4) # 로그 우도= -230.93
> Bcoef(UR_model4) # 회귀계수 행렬의 모양 확인하고 다음 줄 명령어 작성
> constraint4=matrix(c(1,0,1, 1, 1,0, # 0이 2개. 아래 chi square 검정에서 자유도 df=2인 이유.
1,1,1, 1, 1,1,
1,1,1, 1, 1,1),nrow=3,byrow=TRUE)
> R_model4=restrict(UR_model4, method="man", resmat=constraint4)
> logLik(R_model4) # 로그 우도 = -231.236
> chi2=2*(logLik(UR_model)-logLik(R_model4)) # Wooldridge(2010: 481)
> p_value=1-pchisq(chi2,2) # p-value 계산. constraint4 matrix에서 0이 2개-->자유도=2. Lutkepohl(2005)
# linear constaint 관련 논의에 나오는 수식 참고.
> p_value #p-value 출력
안녕하십니까, 이혁주 교수입니다.
지금까지 분석에 따르면 금리를 제외한 다른 변수를 찾아 서울 집값 설명용 통계모형을 처음부터 다시 구축해야 합니다. 경제변수와 주택가격간 분석모형으로서 광범위하게 쓰이는 다변량 시계열모형(VAR모형)을 이용하고, 정부요인은 정권 더미를 이용해 구축해보겠습니다.
최종모형은 아래와 같고 주택논쟁 사이트 <첨부 1> 절차(procedures)에 따라 추정합니다.
<변수>
아파트가격 지수 Price: KB부동산. 2022.1=100.0. 내생변수.
가계대출 Debt: KOSIS. 10조원/10000. 내생변수.
더미변수: 박근혜 정부 Park, 문재인 정부 Moon, 팬데믹 Pandemic. 0 혹은 1. 외생변수.
<모형>
y(t)=[Price(t),Debt(t)]’ 내생변수 벡터, ‘는 transpose 기호 (식1)
x(t)=[Park(t),Moon(t),Pandemic(t)]’ 외생변수 벡터
y(t)=ν+A1y(t-1)+A2y(t-2)+Bx(t)+e(t)
ν, A1, A2, B는 계수행렬, e는 오차항, t는 월
정권더미를 정부요인의 대리변수로 사용하고, 정권더미를 내생변수화하는 일은 이준구(2023)의 주요 내용을 검토할 때 시도합니다. 이때는 불가피합니다.
Price변수와 Debt변수가 서로 얼마나 잘 설명하는지 주택논쟁 사이트 <첨부 2>에 검정절차가 있습니다. 검정결과에 따르면 서로 잘 설명하는 변수입니다.
이어서 정권변수들도 설명변수로서 도움이 되는지 알아보겠습니다. 박진백 외(2021)에 등장하지 않는 변수들인데 실제로 설명력이 있는지 먼저 확인하는 절차가 있어야 합니다.
검정 1: 모든 변수를 포함한 모형을 UR model. R model은 Price equation에서 Park변수의 회귀계수=0, 나머지는 UR model과 동일 -> 진보의 박근혜 정부 귀책론 검정
검정 2: 모든 변수를 포함한 모형을 UR model. R model은 Price equation에서 Moon변수의 회귀계수=0, 나머지는 UR model과 동일 -> 보수의 문 정부 귀책론 검정
검정 3: 모든 변수를 포함한 모형을 UR model. R model은 Price equation에서 Park, Moon 변수의 회귀계수=0, 나머지는 UR model과 동일 -> 정권더미의 설명력 검정(박진백 외에서 departure가 전반적으로 타당한 지 검정)
검정 4: 모든 변수를 포함한 모형을 UR model. R model은 Price 및 Debt 등 모든 방정식에서 Park, Moon 변수 회귀계수=0, 나머지는 UR model과 동일 -> 정권더미의 확장적 설명력 검정(박진백 외에서 departure가 전반적으로 타당한지 검정하되 정권더미가 가격을 물론이고 가계부채까지 설명하는 변수로서 유효한지 검정)
아래는 검정 결과입니다.
실망스럽게도 박근혜 정권변수 Park는 집값의 설명변수로서 유의도가 상당히 낮군요. 반면 Moon 정권변수는 유의도가 높습니다. Moon 정권 더미가 통계적으로 유의한 변수라면 이 변수의 유무에 따라 서울 집값의 등락을 의미 있게 논할 수 있습니다.
요약하면, (식1)과 같이 구성한 모형이 나쁜 것 같지는 않다라는 검토결과를 얻었습니다. 내생변수의 수를 2개로 한정하고 더 늘리지 않았습니다. 이유는 두 가지입니다.
(1)여타 변수를 내생변수로 포함할 수도 있지만 혼자 노는 경향이 커서, 인과성에서도 문제가 많았고 Price equation의 결정계수도 거의 증가시키지 못합니다. (식1)에서 Price 방정식의 결정계수는 0.65 정도 되어서 나쁘지 않습니다.
(2)문재인 정부 시기 집값 변동은 이전 시기와 많이 달라서 육안으로 보아도 그 패턴이 특이합니다. 이 변칙패턴을 파악하자면 별도의 변수를 추가해야 하고, 그 방식에 따라 모형의 자유도(degree of freedom)가 급격히 감소할 수 있습니다.
이 변칙패턴을 현재의 분석틀에서 명시적으로 고려해 모형을 (식1)과 달리 구성할 수도 있습니다. 주택논쟁 사이트 <첨부 7> 대안 모형의 추정을 참고하세요.
다음번엔 (식1)을 이용해 문 정부 시기 오른 집값 38.4포인트 가운데(61.9 --> 100.3포인트), 문재인 정부 책임이 얼마나 되는지 측정해보겠습니다. 박진백 외의 저자들도 유사한 작업을 논문 뒤쪽에서 합니다. 여기 계신 선생님들이라면 어떻게 측정하시겠습니까?주1)
박진백 외의 저자, 김수현, 변창흠 교수님은 신경 써서 살펴보시기 바랍니다. 이 과정에 대한 대체적인 이해가 없으면 분석결과 또한 불신 대상이 됩니다. 특히, 뒤 두 분은 잘 모르면 주변에 물어보고, 이게 힘들면 진보 쪽 학자 아무라도 자문역으로 세우세요. appreciation 없이 과학커뮤니티도 없고 진보(progress)도 없습니다.
그리고 이메일 보내주신 이준구 교수님, 감사합니다. 첨부에 붙였습니다.
감사합니다. 이혁주 드림
김원중·이혁주. 2022. 서울 아파트가격 급등 원인에 대한 통계적 검토: 정부 대 시장. 국토계획, 57(7): 69-90.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
Lutkepohl, Helmut. 2005. New Introduction to Multiple Time Series Analysis. Berlin: Springer. (인터넷에 pdf 있음)
Wooldridge, Jeffrey M. 2010. Econometric Analysis of Cross Section and Panel Data. 2nd edition. Cambidge, Massachusetts: MIT Press.
주1...시중 소프트웨어에는 내생변수의 외생적 변동이 자신 포함 다른 내생변수에 미친 영향을 측정하는 메뉴로서 impulse-response analysis(충격반응 분석)라는 분석메뉴가 있다. 그러나 관심변수인 Moon정권변수는 외생변수라서 제공 메뉴를 이용해 분석할 수 없다. 그러나 Lutkepohl(2005) pp.51-52에 나온 내생변수에 대한 분석과정을 응용하면 된다. 기본원리는 똑같다.
<첨부 1> > 다음 명령어를 복사해 붙여서 사용. 기호 >는 제외하고 복사해 사용할 것.
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
# 이전에 R 작업을 하고 마칠 때 work space를 save했다면 불필요한 step
> View(Rhee) #자료 보기
> endo=cbind(Rhee$Price,Rhee$Debt) #Price, Debt로 내생변수 데이터셋 endo 만들기
> colnames(endo)=c('Price','Debt') #endo 각 열에 변수명 부여하기
> exo=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic)
#데이터셋 Rhee에 있는 Park, Moon, Pandemic으로 구성된 외생변수 데이터셋 만들기
> colnames(exo)=c('Park','Moon','Pandemic') #exo에 변수명 부여하기
> library(vars) # VAR모형을 돌릴 수 있는 package program 불러오기
# VAR 사용설명서는 여기서.
> VARselect(endo,exogen=exo) #최적 차수 p=1.
# 그러나 p=2 선택. 김원중·이혁주(2022) 및 Lutkepohl(2014: 4장) 참고
> UR_model=VAR(endo,p=2,exogen=exo) # VAR(2) UR model 추정하기
<첨부 2> Price, Debt 변수의 상대방 설명력 검증. <첨부 1>에 이어서 아래 실행. 기호 >는 제외하고 한 줄씩 복사해 사용. 한줄 한줄 순차적으로 확인해 가면서 천천히 실행할 것.
> constraint=matrix(c(1,1, 1,1, 1, 1,1,1, #Debt식에서 Price계수=0
0,1, 0,1, 1, 1,1,1),nrow=2,byrow=TRUE)
#0인 회귀계수 2개 -> 검정에서 df=2
> R_model=restrict(UR_model, method="man", resmat=constraint)
> chi2=2*(logLik(UR_model)-logLik(R_model)) # Wooldridge(2010: 481)
> p_value=1-pchisq(chi2,2) # p-value = 0.0270. 즉 Price->Debt 유의
# causality(UR_model,cause='Price') 로도 가능
> constraint=matrix(c(1,0, 1,0, 1, 1,1,1, #Price식에서 Debt계수=0
1,1, 1,1, 1, 1,1,1),nrow=2,byrow=TRUE)
#0인 회귀계수 2개 -> 검정에서 df=2
> R_model=restrict(UR_model, method="man", resmat=constraint)
> chi2=2*(logLik(UR_model)-logLik(R_model))
> p_value=1-pchisq(chi2,2) # p-value = 0.0393. 즉 Debt->Price 유의
# causality(UR_model,cause='Debt') 로도 동일 검정가능
<첨부 3> 검정 1용 R codes. <첨부 1>을 먼저 실행한 후 실행할 것.
> Bcoef(UR_model) # UR_model의 회귀계수 출력하고 각 계수의 위치 확인후 다음 줄 명령서 작성
> constraint1=matrix(c(1,1, 1,1, 1, 0,1,1, #Price식에서 Park 회귀계수=0. 나머지 계수는
1,1, 1,1, 1, 1,1,1),nrow=2,byrow=TRUE) # 살려서 추정.
#0인 회귀계수 1개 -> 검정에서 df=1
> R_model1=restrict(UR_model, method="man", resmat=constraint1)
# UR_model에 constraint1이라는 제약조건을 부여한 후에 모형을 다시 추정하고
# 그 결과를 R_model이라는 이름으로 저장하라는 명령어.
> logLik(UR_model) # 로그 우도=-103.917
> logLik(R_model1) # 로그 우도=-107.15
> chi2=2*(logLik(UR_model)-logLik(R_model1))
#로그 우도를 이용해 chi2 계산하는 공식. Lutkepohl(2005: section 4.2.2) 참고.
> p_value=1-pchisq(chi2,1)
# p-value=0.01. chi2분포에서 검정통계량 chi2(윗줄) 값 오른쪽 면적 계산
<첨부 4> 검정 2용 R codes. 앞선 코드 먼저 실행한 후 실행할 것.
> Bcoef(UR_model) # UR_model의 회귀계수 출력하고
# 각 계수의 위치 확인후 다음 줄 명령서 작성
> constraint2=matrix(c(1,1, 1,1, 1, 1,0,1, #Price식에서 Moon 회귀계수=0. 다른 계수는
1,1, 1,1, 1, 1,1,1),nrow=2,byrow=TRUE) #모두 살려서 추정.
> R_model2=restrict(UR_model, method="man", resmat=constraint2)
> logLik(UR_model) # 로그 우도=-103.917
> logLik(R_model2) # 로그 우도=-110.05
> chi2=2*(logLik(UR_model)-logLik(R_model2)) #Lutkepohl(2005: section 4.2.2) 논의 참고할 것.
> p_value=1-pchisq(chi2,1) # p-value = 0.0004. 자유도=1(회귀계수 1개 0으로 놓음)
<첨부 5> 검정 3용 R codes. 위 코드를 먼저 실행한 후 실행할 것.
> Bcoef(UR_model) # UR_model의 회귀계수 출력하고
# 각 계수의 위치 확인후 다음 줄 명령어 작성
> constraint3=matrix(c(1,1, 1,1, 1, 0,0,1, # Park, Moon 회귀계수=0
1,1, 1,1, 1, 1,1,1),nrow=2,byrow=TRUE)
> R_model3=restrict(UR_model, method="man", resmat=constraint3)
> logLik(UR_model) # 로그 우도=-103.917
> logLik(R_model3) # 로그 우도=-110.211
<첨부 6> 검정 4용 R codes. <첨부 1>을 먼저 실행한 후 실행할 것.
> Bcoef(UR_model) # UR_model의 회귀계수 출력하고
# 각 계수의 위치 확인후 다음 줄 명령어 작성
> constraint4=matrix(c(1,1, 1,1, 1, 0,0,1, #두 방정식에 있는 정권더미 Park, Moon
1,1, 1,1, 1, 0,0,1),nrow=2,byrow=TRUE) #2개의 계수=모두 0
> R_model4=restrict(UR_model, method="man", resmat=constraint4)
> logLik(UR_model) # 로그 우도=-103.917
> logLik(R_model4) # 로그 우도=-114.52
<첨부 7> 대안 모형 2 추정용 R codes. 이 그림에서 보듯이 문재인 정부에서 주택가격의 월간 변동이 보수정부와 달리 양음을 바꾸면서 변동하지 않고 (+)의 변동한다. fitted line의 기울기도 통계적으로 유의한 차이를 보인다(코드 제공 생략). Price변수와 Moon 더미간 상호작용을 고려해 꾸민 것이 아래 모형이다.
<대안모형>
y(t)=[Price(t),Debt(t)]’ 내생변수 벡터, ‘는 transpose 기호 (식2)
x(t)=[Pandemic(t),Moon(t)*Price(t)]’ 외생변수 벡터
y(t)=ν+A1y(t-1)+A2y(t-2)+Bx(t)+u(t)
ν, A1, A2, B는 계수행렬, u는 오차항, t는 월
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
# 이전에 R 작업을 하고 마칠 때 work space를 save했다면 불필요한 step
> View(Rhee) #자료 보기
> attach(Rhee)
> endo=cbind(Price,Debt) #Price, Debt로 내생변수 데이터셋 endo 만들기
> colnames(endo)=c('Price','Debt')
> exo=cbind(Pandemic,Moon*Price) # 외생변수 데이터셋 새로 만들기
#Moon*Price은 Moon과 Price변수를 곱해서 만든 상호작용항. 즉 Price equation에서
# Moon*Price의 부호에 따라 Price-->Price의 효과가 증폭, 감소되기도 함.
#Price의 월간 변동 패턴은 Moon*Price의 부호가 (+)이라는 것을 시사.
> colnames(exo)=c('Pandemic','Moon*Price')
> library(vars)
> UR_model=VAR(endo,p=2,exogen=exo)
> Bcoef(UR_model) #상호작용항의 설명력 검증을 위한 linear constraint matrix 만들기
> constraint=matrix(c(1,1, 1,1, 1, 1,0, #상호작용항의 회귀계수 2개 모두 0으로 놓기
1,1, 1,1, 1, 1,0),nrow=2, byrow=TRUE)
> R_model=restrict(UR_model, method="man", resmat=constraint)
> chi2=2*(logLik(UR_model)-logLik(R_model)) # Wooldridge(2010: 481)
> p_value=1-pchisq(chi2,2)
> p_value # p-value=0.00. 상호작용항 Price*Moon 매우 유의
다음으로 Price와 Debt변수간 인과변수 관계에 있는지 검증.
> constraint=matrix(c(1,0, 1,0, 1, 1,1, #Price eq.에서 Debt 회귀계수=0
1,1, 1,1, 1, 1,1),nrow=2, byrow=TRUE)
> R_model=restrict(UR_model, method="man", resmat=constraint)
> chi2=2*(logLik(UR_model)-logLik(R_model))
> p_value=1-pchisq(chi2,2)
> p_value # p-value=0.12. Debt-->Price, insignificant
> constraint=matrix(c(1,1, 1,1, 1, 1,1, #Price eq.에서 Debt 회귀계수=0
0,1, 0,1, 1, 1,1),nrow=2, byrow=TRUE)
> R_model=restrict(UR_model, method="man", resmat=constraint)
> chi2=2*(logLik(UR_model)-logLik(R_model)) # Wooldridge(2010: 481)
> p_value=1-pchisq(chi2,2)
> p_value # p-value=0.60. Price-->Debt, insignificant
[Price,Debt]을 내생변수로 한 매우 단촐한 모형조차 redundant한 설명변수를 포함한 것은 아닌지 의심하게 만드는 분석결과. 그만큼 정권요인을 고려해 분석하는게 얼마나 중요한지를 보여주는 모형. 즉 Debt<-->Price변수간 유의한 관계조차 부정될 정도임. 부가적으로 문재인 정부 시기 특이한 집값 변동 패턴을 고려하면 모형을 더욱 정교하게 다듬을 수 있다는 시사를 얻음. 정권요인을 정부대책 변수로 바꾸어서 분석할 때 이 교훈 활용.
<첨부 8> 이준구 교수와 오간 이메일.
이준구 교수 --> 이혁주 교수, 2023.3.28.
이 교수께,
진실을 밝히기 위해 정진하는 모습이 참 보기 좋습니다.
좋은 연구성과를 기대해 봅니다.
이준구
이혁주 교수->이준구 교수, 2023.3.29.
교수님께,
네 명심하고 진실에 조금 더 가까이 가는데 도움이 되도록 노력하겠습니다.
교수님의 진지함을 보고 배워야 하는데, 이 부분 저희 후배들이 본받지 못하는 모습을 보여드려 부끄럽습니다. 앞으로도 이 부분이 가장 아쉽게 드러날 것 같습니다.
그리고 다른 분들께 최대한 예의를 갖추면서 논의를 진행하도록 각별히 주의하겠습니다.
감사합니다. 이혁주 드림
안녕하세요, 이혁주 교수입니다.
논쟁의 중요성을 고려해 서강대 김경환 교수님을 초대했습니다. 인사드립니다. 서울과기대 행정학과 이혁주 교수입니다. 김 교수님도 별도로 소개가 필요 없는 분입니다. 이 논쟁은 이혁주 교수가 계획가 및 진보계열 학자들을 상대로 벌이는 주택/부동산 논쟁입니다. 그간의 경과는
에 있습니다. 주제어는 집값, 부동산, 과학, 측정, 스칼라십 등입니다.
현재 문재인 정부 시기 높은 집값이 금리의 구조전환 때문이라고 주장하는 박진백 외(2021)를 논의하고 있습니다. 이 논의가 끝나면 김수현, 이창무, 박은철(서울연구원) 박사와 함께 주택공급 과부족과 주택가격 적정성 판단기준, 그리고 이혁주 교수의 밀도규제 원인론에 대해 논의할 예정입니다. 설령 문재인 정부 시기 오른 집값 모두가 진보적 부동산정책 탓이라고 하더라도 그것이 곧 시장주의적 접근이 대체로 올바르다는 것을 시사하는 것은 아니기 때문입니다. 이론적으로 가능하지만 상식 밖의 주장입니다. 차차 분명해 지겠지만 이것이 논쟁이 필요한 이유이고, 주택/부동산 문제를 계획가와 함께 논의해야 하는 이유입니다.
이 논의가 마무리되면 그 결과를 토대로 이준구(2023)를 논의할 예정입니다. 박진백 외(2021)가 진보 부동산정책의 과학화 시도라면(설명 이론+일치하는 관찰), 이준구(2023)는 진보 부동산정책을 현 혼돈에서 탈출시킬 수 있는 candidate path를 제시한 구제시도입니다. 두 저작에 대한 평가결과는 학술적, 정책적, 정치적으로 작지 않은 시사를 지닐 것으로 보입니다.
계획계도 마찬가지입니다. 이혁주 교수는 주택/부동산 문제의 근인(根因)으로 다른 어떤 수요-공급측 요인에 앞서 기성시가지 밀도규제 관행(practice)을 꼽습니다. 계획계는 문제의 발원처이지만 대체로 독야청청하고 있다는 게 이혁주 교수의 인식입니다. 혼돈의 원인에 대해 계획계가 책임져야할 부분을 명확하게 인식하지 않는 한, 부동산/주택시장에서 본질적 여건변화가 없을 것으로 보입니다. 이때 제2의 김수현, 아마도 ‘전강수’형 인사의 등장은 민주당의 집권과 더불어 불가피할 것 같습니다. 이전 진보정부와 다른 토지의 탈상품화 시도가 있을 것이고 그 충격이 부동산부문에 국한되지 않게 됩니다.
제 본래 생각은 진보가 지지하는 핵심 명제를 진보측 인사가 그 deductive consequence로서 refutable hypothesis로 기술하고 논쟁을 빨리 streamlining하는 것이었는데 잘 안 되고 있습니다. 이준구(2023)와 같은 저작, 언론에 보도된 대로 김수현, 김상조 교수 등 정책포럼의 구성 등 구여권과 진보 측 인사들이 비판적 시각에서 볼 때 여러 차례 disconfirmation에도 불구하고 부단한 reaffirmation과 정당성 복원 시도, 그에 맞서는 보수의 저항 등 악순환을 줄이는 방법이 학술적으로는 그 방법이 가장 효과적이라는 판단에서였습니다. 그게 잘 안되다 보니 진보측 인사들과 하는 얘기가 길어지고 있습니다.
다시 본론으로 와서, 문재인 정부 때문에 집값이 얼마나 올랐는지 측정결과를 보고하기 전에 분명히 해야 할 것이 하나 있습니다. 아래 식은 금리의 구조전환 여부를 검토하면서 이혁주 교수가 사용했던 식입니다.
모형: y(t)=ν+A1y(t-1)+⋯+Apy(t-p)+Bx(t)+e(t) (식1)
ν, A1,…,Ap, B는 계수행렬, p는 차수, e는 오차항, t는 월, y(t)는 t월 내생변수, x(t)는 외생변수.
내생변수: 아파트값 지수 Price, CD 금리 CD, 전세가격지수 Jeonse
외생변수: 박근혜 정부 정권더미 Park, 문재인 정부 정권더미 Moon, 구조전환 상호작용항 CD_Break
여기서 구조전환 상호작용항 CD_Break 변수는 엄밀히 말해 내생변수입니다. 따라서 위와 같이 외생변수로 분류하고 추정하는 것은 문제가 있어 보입니다. 동일한 문제가 지난번 이메일 <첨부 7>에서도 있었습니다.
(식1)처럼 내생변수이면서 연립방정식 좌변에 출현하지 않는 모형의 추정에 관해서는 Lutkepohl(2005) 10장에서 다루지만, 그 표제어가 외생변수라서 표준 교과서에서 직접 언급하는 것은 아닙니다. 그래서 시중 소프트웨어에도 추정메뉴가 없습니다(R, STATA, EViews 등). 이 때문에 위와 같은 추정방법에 기술적 문제가 없다는 점이 확인되어야 이혁주 교수의 논설은 타당하게 됩니다. 이혁주 교수가 통계 초심자라는 점도 고려해야 하고, 전강수 교수가 지적했던 것처럼 이혁주 교수가 가짐직한 불건전한 의도, 그리고 분석을 왜곡하고 조작할 위험성에도 대비해야 합니다. 이혁주 교수의 논설이 포장이야 어떠하든 factional argument의 성격이 짙고, 지금은 생경한 상황입니다. 결론부터 말하면 이혁주 교수가 사용한 추정방법에 기술적 문제는 없는 것 같습니다.
VAR 표준모형은 Lutkepohl 식(3.2.2)으로서
Y=BZ+U (식2)
Y: 내생변수, B: 회귀계수 행렬, Z: 절편 및 내생변수 lag시킨 변수로 구성된 자료 행렬, U: 오차항
이고 이 식을 토대로 회귀계수 행렬 B를 추정한다.
한편 Lutkepohl은 10장에서 외생변수를 포함한 VAR모형 즉 VARX를 식(10.3.3)에서
Y=[A,D]Z+U (식3)
으로 쓰고 추정한다. Z는 내생변수 Y의 lagged variable과 외생변수로 구성되고, 회귀계수 행렬의 D는 이 외생변수의 회귀계수이다. 그런데 (식3)에서 [A,D]를 (식2)처럼 B라고 고쳐 쓰면 비록 (식3)의 Z가 외생변수를 포함했지만 (식2)와 (식3)은 형식상 동일하다. 따라서 (식3)도 (식2)를 추정하는 방식을 원용해 추정할 수 있다.
좀 더 구체적으로 회귀계수를 어떻게 추정하는지 알아본다. (식2)의 양변을 vectorize하면 Lutkepohl 식(3.2.3) y=(Z'⊗IK)β+u가 되어 이공학도들이 쓰는 matrix의 differentiation rule을 적용할 수 있게 된다. 이 식을 이용해 오차제곱합 u'u을 구성하고 이 scalar함수를 β에 대해 최소화한다. β의 estimator를 b라고 할 때, Lutkepohl 식(3.2.7)에서 보는 것처럼
b=((ZZ')-1)Z⊗IK)y (식4)
라고 b를 추정하는 수식을 유도할 수 있다. 부연하면, 연립방정식 (식1) 우변에 있는 회귀계수는 그것이 어떤 것이든 (식4) 공식을 이용해 계산할 수 있다.
일단 회귀계수의 LS estimator b가 도출되면, 이후 (식4)를 변형해 Lutkepohl 식(3.2.9) b=β+((ZZ)−1Z⊗IK)를 유도한다. 이 식은 b-β=((ZZ)−1Z⊗IK)를 의미하므로 var(β)=E(b-β)(b-β)'에 대입해 회귀계수의 공분산 행렬을 추정하는 수식을 완성할 수 있다(Lutkepohl 74쪽 Proposition 3.1). 즉 변수의 이름표와 관계없이 회귀계수를 LS 추정(least squares estimation)하면 그 결과물을 이용해 회귀계수의 분산-공분산 행렬도 구할 수 있어서 대표본을 전제로 여러 가지 통계적 추론을 할 수 있게 된다.
박진백, 이태리 박사님, 검토 부탁드립니다. 그리고 김수현, 변창흠 교수님도 혹시 명확하지 않은게 있으면 질문하세요. 성실하게 응답하겠습니다. 이 추정방식을 이용해 도출한 결과물은 이후 논의에서 문재인 정부를 비판하고 두 분께 질문할 때 인용됩니다.
별도의 코멘트가 없으면 다음 주에 외생변수 VAR모형을 이용해 평가한 결과물로서 문재인 정부요인이 작용해 오른 서울 아파트값 상승분 측정치를 올리겠습니다.
감사합니다. 이혁주 드림
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
Lutkepohl, Helmut. 2005. New Introduction to Multiple Time Series Analysis. Berlin: Springer.
안녕하세요, 이혁주 교수입니다.
지난번에 서울 집값의 시계열적 변동을 설명하는 수리모형을 완성했고, 외생변수의 변동이 내생변수에 미치는 영향을 어떻게 측정하는지 알아보았습니다. 별다른 코멘트가 없어 기존 논의기조를 유지하면서 계속하겠습니다.
이제 구축한 모형을 이용해 문재인 정부의 정부요인 때문에 얼마나 집값이 올랐는지 측정합니다. 새롭게 구성해 추정한 모형은 아래와 같습니다(괄호 안 숫자는 표준오차).
t월 apt값 1달전 apt값 1달전 가계부채 2달전 apt값 2달전 가계부채
Price(t) = -.11 +.60*Price(t-1) +.03*Debt(t-1) -.12*Price(t-2) +.12*Debt(t-2) (식1)
(.08)*** (.05) (.08) (.05)**
박 정권더미 문 정권더미 팬데믹
+.06*Park(t) +.26*Moon(t) +.19*Pandemic(t), R2=.65
(.06) (.07)*** (.08)**
t월 가계부채 1달전 apt값 1달전 가계부채 2달전 apt값 2달전 가계부채
Debt(t) = .29 + .22*Price(t-1) + .26*Debt(t-1) + .04*Price(t-2) + .11*Debt(t-2) (식2)
(.11)*** (.08)*** (.11) (.08)
+.15*Park(t)-.08*Moon(t)+.03*Pandemic(t), R2=.25
(.08)* (.10) (.11)
* p-value < 0.10, ** p-value<0.05, *** p-value<0.01
Price equation에 따르면 문재인 정부의 정권요인은 직접효과로서 서울 아파트값을 매달 0.26포인트 상승(유의)시켰으나(집권 5년간 0.26*60개월=15.6포인트), 박근혜 정부의 경우 상승효과가 유의하지 않습니다(파란색 숫자).
이제 문재인 정부의 정권요인 때문에 얼마나 서울 아파트값이 올랐는지 알아보겠습니다. 위 15.6포인트는 직접효과입니다. Moon-->Debt-->Price 경로를 통한 간접효과까지 고려해야 합니다. 문재인 정권요인 더미 Moon은 외생변수로서, 시중 통계 소프트웨어에서 어떤 외생변수가 변했을 때 그 결과 내생변수가 얼마나 변했는지 측정해 보여주는 메뉴가 없습니다.
그러나 VAR모형을 보면 대수적으로(algebraically) 내생변수는 외생변수의 함수로 주어집니다. linear algebra 교과서에서 Ax=b를 x에 대해 풀면 x=A-1b가 되어 변수 x가 parameter b의 함수로 주어집니다. 같은 원리를 적용해 문 정권더미라는 외생변수의 변화에 대응해 내생변수인 Price가 얼마나 변하는지 측정할 수 있습니다. 이를테면 외생변수 b를 b0에서 b1으로 변화시킬 때 x는 변화량 Δx=A-1Δb로 주어집니다. 당연한 수식인 것 같지만, Lutkepohl은 이 부분에 대해 대략 "평균을 중심으로 변동하는 것만 평가"한다고 설명하기 때문에 이 수식의 의미를 정확히 이해하고 이용하는 것이 대단히 중요합니다. 정권더미를 내생변수 처리해 충격반응분석할 때도 동일한 원리가 적용되고, 교과서에 나오는 수식은 대수적으로 위 수식을 적용하면 정확하게 유도할 수 있는 특수 사례가 됩니다.
따라서 (식1), (식2)에서 문재인 정권더미 Moon을 외생변수 b로 놓고 Δb에 대응해 서울 아파트값 Price의 ΔPrice를 구하면 됩니다. Pandemic변수도 외생변수이므로 같은 원리를 따라 그 영향을 측정할 수 있습니다. 주택논쟁 사이트 <첨부 1>에 좀 더 자세한 설명이 있습니다. 아래는 그 절차입니다.
Step 1...문 정부 시기에 Moon(t)=1로 놓고 (식1),(식2)를 이용해 '정상적인 집값 스케줄' 계산
Step 2...문 정부 시기에 Moon(t)=0으로 놓고 (식1),(식2)를 이용해 '가상 집값 스케줄' 계산
Step 3...실제 주택가격 스케줄에서
정상적인 집값 스케줄 – 가상 집값 스케줄
을 빼준다. 그 결과물이 아래 그림에서 초록색 곡선.
Moon변수의 영향을 2017.5부터 실제 가격 스케줄에서 빼주면 아래 <그림 1> 초록색 곡선을 얻습니다. R code와 그림 그리는 방법은 주택논쟁 사이트 <첨부 2>에 있습니다.
(종축은 아파트값 지수, 2022.1=100)
그림에서 주황색 선은 실제 아파트값 지수, 초록색 곡선은 문재인 정부 정권요인의 영향을 제거했을 때 예상되는 아파트값 지수, 점선은 팬데믹의 영향까지 제거했을 때 추세선입니다(2022.1=100포인트). 오른쪽 끝점들은 임기말(2022.4) 지수(실제 혹은 예상)입니다.
위 그림을 아래와 같이 요약할 수 있습니다.
(1) 문 정부 시기 오른 집값 가운데 팬데믹과 같은 불가항력적 요인을 제외하고 오른 집값보다 더 많이 정권요인 때문에 집값이 올랐다.
5년간 상승폭 = 38.4포인트 = AD간 수직거리
- 팬데믹 때문에 = 11.2포인트 = BC간 수직거리
-----------------------------------------------------------------------
차이 = 27.2포인트 < 30.8포인트 = AB(문 정권요인 때문에 오른 집값)
팬데믹 때문에 오른 집값을 제외하고 5년간 27.2포인트 올랐지만 문 정권요인 때문에 오른 집값은 이보다 큰 30.8포인트(AB)나 된다.
(2) 문재인 정권요인과 팬데믹 요인을 모두 제거하는 것만으로 박근혜 정부 말 집값으로 복귀할 수 있다. 위 그림에서 C가 D보다 낮다는 것이 그 근거이다.
(3) 경험적 질문의 경우 사전 기대와 측정결과가 일치할 지 장담할 수 없다. 여기 분석은 박진백 외(2021)의 기대와 다르다. 김원중·이혁주(2022)도 마찬가지이다. 김원중·이혁주의 저자들도 분석하기 전에 예상하길 2017.5~2019.12에 오른 집값 가운데 문 정부 책임이 30~40% 정도 될 것으로 예상했다. 분석결과는 대부분이었다.
조금 다른 방식으로 평가해도 마찬가지입니다. <첨부 3>과 거기에 딸린 그림을 참고하세요.
여기서 ‘정권요인’을 문 정부 부동산정책의 총화와 동일시할 수 있는지는 좀 더 따져 보아야 하는데, 이 작업은 나중에 합니다. (3)번 포인트는 공자님 말씀이지만, 대표적 학자들이 공자님 말씀에 귀 기울이지 않아서 문제가 생깁니다. 무슨 말씀인지, 전강수 교수의 컬럼과 관련해 나중에 알아보겠습니다. 전 교수만의 문제로 국한되지 않아서 그렇습니다.
다시 박진백 외(2021)로 돌아와서, 저자들은 변수의 영향력을 판단하고자 논문의 <표 6>~<표 8>에서 VAR모형을 이용했습니다. 구조전환 판단에는 아쉽게도 single equation을 이용했지만, 변수들의 영향력 판단에는 다행히 VAR 모형을 이용했습니다.
위 <그림 1>에서 differenced data를 이용했는데, 이 자료를 추출했던 원자료와 그 가공방법을 보여주는 파일을 첨부합니다.
감사합니다. 이혁주 드림
김원중·이혁주. 2022. 서울 아파트가격 급등 원인에 대한 통계적 검토: 정부 대 시장. 국토계획, 57(7): 69-90.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
<첨부 1> 사용한 충격반응 분석 방식
지금까지 사용한 VAR모형은 y(t)=c+A1y(t-1)+A2y(t-2)+Hx(t)+e(t)로서 y(t)는 내생변수 벡터, x(t)는 외생변수 벡터, c, A1, A2, H는 회귀계수 벡터와 행렬, e(t)는 오차항 벡터이다. 각 변수의 기대치(expected value)를 expectation operator E를 이용해 표현하고, 기호 E를 이 식의 양변에 적용하면 Ey(t)=c+A1Ey(t-1)+A2Ey(t-2)+Hx(t)가 유도된다. 계수 벡터와 행렬을 추정하고 추정한 결과물을 이용해 이 식을 다시 쓰면 다음 수식을 얻는다.
ŷ(t)=ĉ+Â1ŷ(t-1)+Â2ŷ(t-2)+Ĥx(t) (식A1)
이 식에서 ŷ(t)는 Ey(t)의 estimator이다.
(식A1)을 이용해 내생변수 벡터 ŷ(t)를 다음과 같이 구할 수 있다.
초기화 ŷ(0)≡0, ŷ(1)≡x(1) (식A2)
ŷ(2)=ĉ+Â1ŷ(1)+Â2ŷ(0)+Ĥx(2) (식A3)
=ĉ+Â1x(1)+Ĥx(2)
ŷ(t)=ĉ+Â1ŷ(t-1)+Â2ŷ(t-2)+Ĥx(t), t≥3 (식A4)
위 식에서 ≡는 definition 기호, (식A2)를 이용해 t=2부터 ŷ(t)를 순차적으로 구하면 위와 같이 모두 x(t)의 함수로 unique하게 주어진다. 따라서 서로 다른 x(t) 시나리오에 대응해 서로 다른 ŷ(t) 시계열을 unique하게 구할 수 있고, 두 시계열 ŷ(t)간 차이를 계산하면, 이 차이는 전적으로 x(t)의 시나리오간 차이가 유발한 변화이며 그 변화량도 unique하게 주어진다. 여기서 x(t)를 다양한 방식으로 변화시킬 수 있다. 시점 한 곳에서만 혹은 여러 곳에서 순차적으로 변화시킬 수도 있다. 변수 하나를 혹은 여러 개를 동시에 변화시킬 수도 있다. 이를테면 2017.5~2022.4에 해당하는 모든 t에서 Moon(t)=0이라고 놓으면, Moon 정권요인이 문재인 정부 60달 동안 집값에 미친 총영향이 얼마나 되었는지 측정할 수 있다. 한편 x(t)는 외생변수이기 때문에 오차항 e(t)도 측정목적상 x(t)의 한 종류로 간주할 수 있다. Lutkepohl(2005)에서 설명한 내생변수의 충격반응 분석 방식이 바로 이런 방식이었다. 여기에 기술된 원리는 정권요인을 정부대책이라는 내생변수로 대체한 모형에서 충격-반응분석할 때, 즉 이준구(2023)를 검토할 때 그대로 적용된다.
예컨대, 문재인 정부에 속하는 t에 x(t)=(Park,Moon,Pandemic)'=(0,1,a)'에서 x(t)=(0,0,a)'로 변화시켰을 때 내생변수 y(t)가 어떻게 변하는지 알아보자. 이 말은 문재인 정부를 문재인 정부가 아닌 것으로 돌릴 때 내생변수 y(t)에 어떤 변화가 오는지 검토하겠다는 것이다. (0,1,a)'와 (0,0,a)'를 각각 위 식에 대입하고 그 차이를 계산하면
Δŷ(1)=(0,0,a)’-(0,1,a)’=(0,-1,0)’≡Δx0 (식A5)
Δŷ(2)=Â1Δx(1)+ĤΔx(2)=Â1Δx0+ĤΔx0 (식A6)
Δŷ(t)=Â1Δŷ(t-1)+Â2Δŷ(t-2)+ĤΔx(t) (식A7)
=Â1Δŷ(t-1)+Â2Δŷ(t-2)+ĤΔx0, t≥3
이 수식에서 절편 벡터 ĉ가 존재하지 않는다. Lutkepohl(2005: 52) 충격반응 분석에서 절편항을 제외한 이유이다. 한편 (식A5)~(식A7)에는 Lutkepohl과 달리 Δx0항이 각 t에 등장한다. Lutkepohl은 위 식에서 t≥2에 Δx0=0인 특수한 경우이다. 또한 Lutkepohl은 Δŷ(t)라는 기호 대신 y(t)라는 기호를 사용한다. 문맥상 Δŷ(t)라고 하는 것이 번거롭더라도 정확한 표현이다.
<첨부 2> 문재인 정부 정권요인이 없을 때의 아파트값 추세곡선 그리기
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
> View(Rhee) #자료 보기
> endo=cbind(Rhee$Price,Rhee$Debt) #Price, Debt로 내생변수 데이터셋 endo 만들기
> colnames(endo)=c('Price','Debt') #endo 각 열에 변수명 부여하기
> exo=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic) #Park, Moon, Pandemic으로 구성된 외생변수 데이터셋 만들기
> colnames(exo)=c('Park','Moon','Pandemic') #exo 변수명 부여
> install.packages("vars") # VAR 모형 돌리는데 필요한 package 설치하기. 과거에 설치했다면 이 스텝 불필요.
> library(vars) # VAR모형을 돌릴 수 있는 package program 불러오기. VAR 사용설명서는 여기서.
> VARselect(endo,exogen=exo) #최적 차수 p=1. 그러나 p=2 선택. 김원중·이혁주(2022) 및 Lutkepohl(2014: 4장) 참고
> UR_model=VAR(endo,p=2,exogen=exo) # VAR(2) UR model 추정하기
> Bcoef(UR_model)
> A1=Bcoef(UR_model)[,1:2] # 계수 행렬 A1 만들기
> A2=Bcoef(UR_model)[,3:4] # 계수 행렬 A2 만들기
> nu=Bcoef(UR_model)[,5] # 절편 벡터 ν 만들기
> B=Bcoef(UR_model)[,6:8] # 계수 행렬 B 만들기
> x=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic) # 외생변수 벡터 x 만들기
> colnames(x)=c('Park','Moon','Pandemic')
> x=t(x) # 161*3 행렬을 3*161 전치행렬로 바꾸기
> y=array(0,c(2,161)) # 추정할 모형의 y(t)=[Price(t),Debt(t)]’, t=2009.1~2022.4 초기화
> y[1,102]=Rhee$Price[102] # 2017.5의 실제 Price(t), 1st differenced
> y[2,102]=Rhee$Debt[102] # 2017.5의 실제 Debt(t), 1st differenced
> level.fitted=array(0,c(2,161)) # fitted Price level
> level.fitted[,102]=matrix(c(61.944,123.263),c(2,1)) #2017.5에 61.9포인트, 1232조원
> for(n in 103:161){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+B%*%x[,n]
level.fitted[,n]=level.fitted[,n-1]+y[,n]} # fitted y(t) 완성
> level.fitted=t(level.fitted)
> colnames(level.fitted)=c('Price','Debt') #본문의 Step 1 완성
#이어서 Moon(t)=0일 때 집값 추정. 본문의 Step 2 시작
> x=cbind(Rhee$Park,array(0,c(161,1)),Rhee$Pandemic) # Moon(t)=0으로 놓은 x(t)
> colnames(x)=c('Park','Moon','Pandemic')
> x=t(x)
> y=array(0,c(2,161)) # 추정할 모형의 y(t)=[Price(t),Debt(t)]’, t=2009.1~2022.4
> y[1,102]=Rhee$Price[102] # 2017.5의 실제 Price(t), 1st differenced
> y[2,102]=Rhee$Debt[102] # 2017.5의 실제 Debt(t), 1st differenced
> No_Moon=array(0,c(2,161)) # Moon(t)=0일 때 Price level
> No_Moon[,102]=matrix(c(61.944,123.263),c(2,1)) #2017.5에 61.9포인트, 1232조원
> for(n in 103:161){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+B%*%x[,n]
No_Moon[,n]=No_Moon[,n-1]+y[,n]} # 본문의 Step 2 완성
> Effect=level.fitted-t(No_Moon) # Moon변수가 집값에 미친 영향(포인트)
> level_data=read.csv(file.choose(),header=T) # 실제 주택가격 지수와 가계부채 자료 읽어들이기. 자료
> Level=level_data[,2:3] # Reading Price and Debt.
> colnames(Level)=c('Price','Debt')
> No_Moon=Level-Effect # Moon 효과가 제거된 집값 예측치. 본문 Step 3
#이어서 Moon과 Pandemic영향을 제거한 시계열 구하기. Moon(t)=Pandemic(t)=0.
> x=cbind(Rhee$Park,array(0,c(161,1)),array(0,c(161,1))) #Moon=Pandemic=0
> x=t(x)
> y=array(0,c(2,161)) # 추정할 모형의 y(t)=[Price(t),Debt(t)]’, t=2009.1~2022.4
> y[1,102]=Rhee$Price[102] # 2017.5의 실제 Price(t), 1st differenced
> y[2,102]=Rhee$Debt[102] # 2017.5의 실제 Debt(t), 1st differenced
> Neither=array(0,c(2,161)) # 추정한 주택가격, level 자료
> Neither[,102]=matrix(c(61.944,123.263),c(2,1)) #2017.5에 61.9포인트, 1232조원(10으로 나눈 값 사용)
> for(n in 103:161){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+B%*%x[,n]
Neither[,n]=Neither[,n-1]+y[,n]}
> Effect=level.fitted-t(Neither)
> Neither=Level-Effect # Moon=Pandemic=0일 때 집값 예측치.
> output=cbind(Level,No_Moon,Neither)
> colnames(output)=c('Actual Price','Actual Debt','Price_No Moon','Debt_No Moon','Price_Neither','Debt_Neither')
> write.csv(output,'C:\\Temp\\output.csv') #윗 줄 빨간색 변수들을 그림으로 그린 것이 본문에 있는 그림.
#C:\\Temp 디렉토리에 output.csv 파일로 저장하라는 명령어. 이 파일을 엑셀에서 불러 그림 그리면 됨.
<첨부 3> 내생변수를 다르게 해서 Moon 정권요인의 영향 측정하기
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
> endo=cbind(Rhee$Price,Rhee$Debt,Rhee$Jeonse) #전세가격 추가
> colnames(endo)=c('Price','Debt','Jeonse')
> exo=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic)
> colnames(exo)=c('Park','Moon','Pandemic')
> library(vars)
> VARselect(endo,exogen=exo) #최적 차수로 p=2 선택. 검정결과는 p=1 or 7 제시.
> model=VAR(endo,p=2,exogen=exo) # 모형 추정하기
> A1=Bcoef(model)[,1:3] # 계수 행렬 A1 만들기
> A2=Bcoef(model)[,4:6] # 계수 행렬 A2 만들기
> nu=Bcoef(model)[,7] # 절편 벡터 nu 만들기
> B=Bcoef(model)[,8:10] # 계수 행렬 B 만들기
> x=cbind(Rhee$Park,Rhee$Moon,Rhee$Pandemic) # 외생변수 벡터 x 만들기
> colnames(x)=c('Park','Moon','Pandemic')
> x=t(x) # 161*3 행렬을 3*161 전치행렬로 바꾸기
> y=array(0,c(3,161)) # 추정할 모형의 y(t)=[Price(t),Debt(t),Jeonse(t)]’, t=2009.1~2022.4
> y[1,102]=Rhee$Price[102] # 2017.5의 실제 Price(t), 1st differenced
> y[2,102]=Rhee$Debt[102] # 2017.5의 실제 Debt(t), 1st differenced
> y[3,102]=Rhee$Jeonse[102] # 2017.5의 실제 Jeonse(t), 1st differenced
> level.fitted=array(0,c(3,161)) # fitted Price level
> level.fitted[,102]=matrix(c(61.944,123.263,76.754),c(3,1))
#2017.5에 순서대로 61.9포인트, 1232조원, 76.754포인트
> for(n in 103:161){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+B%*%x[,n]
level.fitted[,n]=level.fitted[,n-1]+y[,n]} # fitted y(t) 완성
> level.fitted=t(level.fitted)
> colnames(level.fitted)=c('Price','Debt','Jeonse')
#이어서 Moon(t)=0일 때 집값 추정
> x=cbind(Rhee$Park,array(0,c(161,1)),Rhee$Pandemic) # Moon(t)=0으로 놓은 x(t)
> colnames(x)=c('Park','Moon','Pandemic')
> x=t(x)
> y=array(0,c(3,161)) # 추정할 모형의 y(t)=[Price(t),Debt(t),Jeonse(t)]’, t=2009.1~2022.4
> y[1,102]=Rhee$Price[102] # 2017.5의 실제 Price(t), 1st differenced
> y[2,102]=Rhee$Debt[102] # 2017.5의 실제 Debt(t), 1st differenced
> y[3,102]=Rhee$Jeonse[102] # 2017.5의 실제 Jeonse(t), 1st differenced
> No_Moon=array(0,c(3,161)) # Moon(t)=0일 때 Price level
> No_Moon[,102]=matrix(c(61.944,123.263,76.754),c(3,1)) #2017.5에 순서대로 61.9포인트, 1232조원, 76.754포인트
> for(n in 103:161){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+B%*%x[,n]
No_Moon[,n]=No_Moon[,n-1]+y[,n]}
> Effect=level.fitted-t(No_Moon) # Moon변수가 집값에 미친 영향(포인트)
> level_data=read.csv(file.choose(),header=T) # 실제 주택가격 지수, 가계부채, 전세가격 지수 읽어들이기. 자료 내려받기
> View(level_data) # 자료 확인하기
> Level=level_data[,2:4] # Reading Price, Debt, and Jeonse.
> colnames(Level)=c('Price','Debt','Jeonse')
> No_Moon=Level-Effect # Moon 효과가 제거된 집값 예측치
#이어서 Moon(t)=0, Pandemic(t)=0일 때 주택가격 추정
> x=cbind(Rhee$Park,array(0,c(161,1)),array(0,c(161,1))) #Moon=Pandemic=0
> x=t(x)
> y=array(0,c(3,161)) # 추정할 모형의 y(t)=[Price(t),Debt(t),Jeonse(t)]’, t=2009.1~2022.4
> y[1,102]=Rhee$Price[102] # 2017.5의 실제 Price(t), 1st differenced
> y[2,102]=Rhee$Debt[102] # 2017.5의 실제 Debt(t), 1st differenced
> y[3,102]=Rhee$Jeonse[102] # 2017.5의 실제 Jeonse(t), 1st differenced
> Neither=array(0,c(3,161)) # 추정한 주택가격, level 자료
> Neither[,102]=matrix(c(61.944,123.263,76.754),c(3,1))
#2017.5에 순서대로 61.9포인트, 1232조원, 76.754포인트
> for(n in 103:161){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+B%*%x[,n]
Neither[,n]=Neither[,n-1]+y[,n]}
> Effect=level.fitted-t(Neither)
> Neither=Level-Effect # Moon=Pandemic=0일 때 집값 예측치
> output=cbind(Level,No_Moon,Neither)
> colnames(output)=c('Actual Price','Actual Debt','Actual Jeonse','Price_No Moon','Debt_No Moon','Jeonse_No Moon','Price_Neither','Debt_Neither', 'Jeonse_Neither')
> write.csv(output,'C:\\Temp\\output.csv') # 디렉토리 C:\\Temp에 output.csv라는 이름으로 결과물 저장. 아래 그림은
# 이 결과물을 엑셀에서 불러들인 후 변수 3개(빨간 색 변수)에 대해서만 그린 것.
Actual Price = 그림에서 "실제 가격지수"
Price_No Moon = 그림에서 "Moon 정권요인 제거시"
Price_Neither = 그림에서 "문 정부, 팬데믹 모두 제거시"
(종축은 아파트값 지수, 2022.1=100)
수신: 전강수 교수
안녕하세요. 이혁주 교수입니다.
지난 이메일에서 문재인 정부에서 오른 집값 가운데 불가피한 부분을 제외하고 나머지 모두 정권요인 때문에 올랐다는 측정결과를 보았습니다. 이어서 금리가 서울 아파트값에 미친 영향을 분석한 결과도 올립니다. 변수는 아파트값 지수, 금리, 전세가격 지수입니다. 아래 그림은 문재인 정부기간 CD금리입니다.
전세가격 지수는 허전해 보여서 모형에 추가한 변수인데 그만큼 모형의 품질에 문제가 있습니다. 금리를 중시한 박진백 외(2021)의 주장을 담아 측정하면서 발생한 문제입니다. 그래도 어떤지 봅시다.
<첨부 1>에 따르면 금리가 문재인 정부 5년간 집값에 미친 영향은 집값 0.58포인트 하락에 불과하고 통계적으로 유의하지 않습니다.
임기 말 금리 1.77%
- 임기 초 금리 1.40%
------------------------------------
임기 중 상승폭 0.37%p --> 집값 0.58p 하락
<그림 1>에서 문재인 정부 때 금리가 max 1.91%에서 min 0.63%로 하락했고, 이후 금리가 min 수준에 고정된 상태로 임기 말까지 유지되었더라도 집값은 2.0포인트 상승에 그칩니다.
(최고 1.91-최저 0.63)/0.37*0.58=2.0포인트
물론 최저 금리는 이후 상승해 임기 말까지 max 1.91% 턱 밑까지 복귀했습니다. 박진백 외가 주장하듯이 금리영향의 구조전환 때문에 주택가격이 급등했더라도, 동일한 조정기제가 작동해서 앞서 오른 집값이 임기말까지 대부분 빠졌을 것입니다. 즉 박진백 외의 주장은 이래저래 설득력이 없습니다.
금융요인으로서 Debt은 금리와 더불어 전문가들이 중시하는 집값 영향요인입니다. 이제 CD변수 대신 가계부채 Debt을 포함해 모형을 구성해 봅시다. 그게 지난 번 이메일에서 봤던 모형 즉 이혁주 교수가 최종모형으로 선택한 모형인데, 이 모형을 이용하면 <그림 2>를 얻습니다. 여기서 정권요인 Moon이 집값 Price에 미치는 경로는 두세 가지로 나타납니다.
(1) Moon --> Price up: 1차 효과, 직접경로. (+) 부호. 임기내 15.6포인트 집값 상승(2023.4.25. 이메일 앞 부분 참고)
(2) Moon-->Debt-->Price: 우회경로. (-), but insignificant.
(3) Moon-->Price up -->Debt up-->Price up: higer order 경로로서 자기 증폭과정. (+)부호. 임기내 정권요인으로 오른 집값 30.8포인트 가운데 15.6포인트 제한 나머지=30.8-15.6=15.3포인트 가운데 일부(근거: 2023.4.25. 이메일. 가정: 위 우회경로의 영향=0)
<그림 2> 집값 영향요인간 인과관계
(Moon변수는 외생변수라서 화살표가 일방향)
그림에서 Moon변수를 시발점으로 해서 별표 *가 붙은 화살표를 따라가면 악순환의 고리가 완성됩니다(별표는 유의함을 의미. 2개는 p값 5% 미만, 3개는 p값 1% 미만).주1
결국 김수현 비서관 지휘하에 문재인 정부 5년 동안 한쪽에선 둑 무너지라고 열심히 구멍을 뚫었고(Moon-->Price up-->Debt up-->Price up --> Moon-->...), 다른 한쪽에선 그 구멍 때우느라 애썼지만 무위에 그쳐서(Moon-->Debt, (-)계수이지만 insignificant, 또한 <첨부 3> 참고할 것) 결국 둑이 무너지고 말았습니다. 여기서도 김수현 주연, 김상조, 변창흠 조연인지 어떤지는 elaboration이 필요합니다(나중에 잊지 않는다면 합시다).
이상 논의를 이전 이메일에서 다루었던 금리 분석과 결합하여 다음과 같이 정리할 수 있습니다.
(1) 금리의 집값에 대한 영향력은 확인되지 않았고, 정권요인이 Debt의 크기에 전혀 영향을 미치지 못했지만,
<그림 3> Moon-->Debt 직간접 영향=0 (겹쳐 있어 구분되지 않음, 근거: <첨부 3>)
Debt은 Debt up --> Price up --> Debt up --> Price up ... 이라는 higher order 과정을 통해 집값 상승에 기여했다. 따라서 금융요인은 여전히 예의 주시해야 하는 것은 맞다. 그러나 정책적 맥락과 분리하면 모형설정 오류를 범하고, 인과론적 추론상의 오류를 범하며, 잘못된 처방을 하게 된다. 문재인 정부 5년은 그 기록이었다.
(2) Moon-->Price 직접경로는 주택공급 사이드에 대한 충격을 포함한다. 이 경로는 장래 주택공급 전망에 대한 Moon 정권요인의 부정적 영향을 내포한 경로이다. 따라서 문재인 정부 5년간 지속적인 집값 상승과정은
수요/공급 양측면에 대한 충격,
수요측면의 충격은 Price-->Debt-->Price라는 자기 증폭과정의 결과가 되며,
이들 전체 과정의 시발점은 <그림 2> 좌하단 Moon 정권요인이었다.
(3) 재봐야 안다. <그림 2> Moon 정권요인-->Price up이라는 시계열적 집값 상승 연쇄과정은 김수현 비서관, 문재인 대통령 등 정책결정자의 예상과 희망에 반하는 것이었다.
이제 전강수 교수님, 주목하세요. 여기서 Moon 정권요인-->Price up 과정은 3중의 통계적 자기검열 단계를 거쳐 얻은 관측결과라는 점을 상기해야 합니다.
(1) level자료(가공 전 원자료)를 1차 차분해서 만든 자료를 이용해 통계분석했다. 그래서 시계열자료간 존재하는 spurious association으로 인한 추론상의 오류와 측정 bias의 발생 가능성을 줄였다.
(2) 집값에 영향을 주는 다양한 요인의 영향을 제어(statistical control)한 상태에서 구한 부호와 회귀계수를 근거로 통계검증했고 그 결과를 토대로 수립되었다. (쉽게 말해 여러 개 관련 변수를 모형에 포함하고 동시성 편향이 없도록 lagged variable을 썼다는 말)
(3) 그 검정도 'Moon-->Price 영향은 존재하지 않는다'를 영가설로 놓고 했다. 즉 입증의 부담을 이혁주 교수가 지고 합리적 의심의 범위가 넘는 수준의 증거가 없는 한 문재인 정권을 면책하고자 했다(즉 문재인 정부에 책임이 없다고 전제하고 검증하고 유의도 alpha를 작게 잡았다는 말). 그럼에도 영가설이 부정되었고, 이들 전과정을 거쳐 수립하게 된 명제가 문재인 정권요인 원인론이다(문재인 정권요인 원인론 --> 문재인 정부정책 원인론으로 바꿔 쓰는 일은 나중에).
여기서 잠시 digress해서 전강수 교수님께 질문합니다. 전강수(2021.5.27)에 이런 글이 있습니다.
참여정부 때 2004년 내내 잠잠했던 부동산 투기에 다시 불을 붙인 것은 재건축규제 완화 방침 발표와 판교 신도시 개발이었다. 2005년의 8.31대책 이후 안정세를 보였던 강남 집값이 2006년 초에 다시 상승하기 시작한 것도 당시 서울시 의회가 재건축규제를 완화하려는 움직임을 보이면서부터였다. 2006년 후반 돌발적인 집값 폭등에 기름을 부은 것도 검단 신도시 건설 발표였다.
공급확대 정책의 효과가 나타날 무렵에 부동산 경기가 역전되어 있다면, 수년 전에 실시한 정책은 가격 하락을 가속하는 결과를 초래할 것이다. 부동산 경기 침체기에는 가격 폭락을 방지하는 것이 급선무인데 과거에 시행한 정책이 그에 역행하는 효과를 낳을 테니 난감한 상황이 아닐 수 없다.
이 진단에 공감하는 사람이 많을 것 같습니다. 이제 전 교수님의 추론 과정과 이혁주 교수의 (통계적) 추론 과정이 어떻게 다른지 의견을 여쭈어보아도 될까요? 교수님 주장의 진위, 이용한 통계분석 기법의 advancedness 여부 등에 대해 질문드리는 것은 아닙니다.
전 교수님의 답을 듣고 나면 바로 박진백, 이태리 박사님께도 질문 하나 드리겠습니다.
감사합니다. 이혁주 드림
주1...회귀계수의 variance-covariance matrix를 출력한 후 공식 var(x+y)=var(x)+var(y)+2cov(x,y)를 이용하면 그림의 유의도 산출 가능. 그림에서는 2023.4.25. 이메일 (식1), (식2)를 이용해 대충 보고 그린 것. 크게 틀릴 것 같지는 않음.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
전강수, 2021.5.27. “아파트공급 확대론의 치명적 결함”, 오마이 뉴스.
<첨부 1> 금리가 문재인 정부 시기 집값에 미친 영향 측정
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
> attach(Rhee)
> CD=CD/10 #위 자료는 원자료를 차분한 후 10을 곱해서 CD변수를 구성했음. 해석이 쉽도록 재가공.
> endo=cbind(Price,CD,Jeonse)
> colnames(endo)=c('Price','CD','Jeonse')
> exo=cbind(Park,Moon,Pandemic)
> colnames(exo)=c('Park','Moon','Pandemic')
> model=VAR(endo,p=2,exogen=exo)
> Bcoef(model)
> A1=Bcoef(model)[,1:3]
> A2=Bcoef(model)[,4:6]
> Dy=array(0,c(3,36)) # Dy(t)=Δy(t)
> Diff=0.37 #2022.5 금리-2017.5 금리=1.77%-1.40%=0.37%
> Dy[,2]=matrix(c(0,Diff,0),c(3,1))
> for(n in 3:36){Dy[,n]=A1%*%Dy[,n-1]+A2%*%Dy[,n-2]}
> effect=sum(Dy[1,]) # 금리가 서울 아파트값 지수에 미친 측정해 저장.
# ∑Δŷ(t)의 첫 번째 원소 값 계산(아래 설명 참고).
> effect #금리가 서울 아파트값 지수에 미친 영향=-0.58 포인트
위 파란색 절차에서 절편과 외생변수가 나타나지 않는 이유는 아래와 같다. 지난번 이메일 <첨부 1>에서 모형 ŷ(t)=ĉ+Â1ŷ(t-1)+Â2ŷ(t-2)+Ĥx(t)으로부터 내생변수 벡터 ŷ(t)를 다음과 같이 재귀적으로 구할 수 있다.
초기화 ŷ(0)≡0, ŷ(1)≡u(1) (식A1)
ŷ(2)=ĉ+Â1ŷ(1)+Â2ŷ(0)+Ĥx(2) (식A2)
=ĉ+Â1u(1)+Ĥx(2)
ŷ(t)=ĉ+Â1ŷ(t-1)+Â2ŷ(t-2)+Ĥx(t), t≥3 (식A3)
충격 시나리오 1은 u(1)=(0,0.37,0), 충격 시나리오 2는 u(1)=(0,0,0)이고, 두 시나리오에 대응해 주어지는 내생변수 Price의 차이가 금리의 영향을 받아 변한 서울 집값이다. <첨부 2>는 이렇게 두 시나리오를 각각 계산한 후 두 시나리오의 시계열 y(t)간 차이로부터 영향을 평가한다.
Lutkepohl에 나와 있는 방식은 <첨부 2>와 달리 간편식을 이용한다. 위 식에서 x(t), t≥3는 일정한 값을 취한다. 따라서 두 시나리오간 내생변수의 차이 Δŷ(t)를 구하면
Δŷ(t)=Â1Δŷ(t-1)+Â2Δŷ(t-2)+ĤΔx(t)=Â1Δŷ(t-1)+Â2Δŷ(t-2) (식A4)
로서 절편과 외생변수 벡터가 사라진다. 금리의 영향은 ∑Δŷ(t)의 제1원소가 된다. R code 파란색 procedure는 ∑Δŷ(t)에서 불필요한 항(절편 및 외생변수 벡터)를 제외하고 나머지 항들을 컴퓨터 코드로 옮긴 것이다.
<첨부 2> 두 시나리오하에서 Price(t)를 문 정부 60개월에 대해 모두 계산하고 이자율의 영향을 두 시계열에서 추출해 계산하는 방법. <첨부 1>과 동일한 결과물 얻음.
> Rhee=read.csv(file.choose(),header=T) # 1st_differenced_data.csv 읽어들이기
> attach(Rhee)
> CD=CD/10 #위 자료는 원자료를 차분한 후 10을 곱해서 CD변수를 구성했음.
#해석이 쉽도록 여기서는 원자료의 차분자료로 변환해 분석에 이용함.
> endo=cbind(Price,CD,Jeonse)
> colnames(endo)=c('Price','CD','Jeonse')
> exo=cbind(Park,Moon,Pandemic)
> colnames(exo)=c('Park','Moon','Pandemic')
> model=VAR(endo,p=2,exogen=exo)
> Bcoef(model)
> nu=Bcoef(model)[,7]
> A1=Bcoef(model)[,1:3]
> A2=Bcoef(model)[,4:6]
> B=Bcoef(model)[,8:10]
> y_s1=array(0,c(3,59)) #시나리오 1하에서 y(t)
> y_s2=array(0,c(3,59)) #시나리오 2하에서 y(t)
> Delta=array(0,c(3,59))
> x=t(exo[102:161,])
> u1=array(0,c(3,1))
> u2=matrix(c(0,0.37,0),c(3,1)) #2022.5 금리-2017.5 금리=1.77%-1.40%=0.37%
> y_s1[,1]=u1
> y_s1[,2]=nu+A1%*%y_s1[,1]
> y_s2[,1]=u2
> y_s2[,2]=nu+A1%*%y_s2[,1]
> Delta[,1]=u2-u1
> Delta[,2]=y_s2[,2]-y_s1[,2]
> for(n in 3:59){y_s1[,n]=nu+A1%*%y_s1[,n-1]+A2%*%y_s1[,n-2]+B%*%x[,n]
y_s2[,n]=nu+A1%*%y_s2[,n-1]+A2%*%y_s2[,n-2]+B%*%x[,n]
Delta[,n]=y_s2[,n]-y_s1[,n]}
> sum(Delta[1,]) # 이 값=∑Δŷ(t)의 제1원소. 금리가 서울 아파트값 지수에 미친 영향=-0.58 포인트
<첨부 3> Moon이 Debt에 미친 직간접 영향=0
2023.4.25. 이메일에 있는 <첨부 2> 마지막에 있는 아래 명령어
> colnames(output)=c('Actual Price','Actual Debt','Price_No Moon','Debt_No
Moon','Price_Neither','Debt_Neither')
> write.csv(output,'C:\\Temp\\output.csv')
를 이용하면 결과물 output.csv을 얻을 수 있다. 이 파일을 엑셀에서 열고 빨간 색 column 두 개를 그림으로 그리면 본문의 <그림 3>을 그릴 수 있다.
그림에서 Moon변수가 있을 때의 "실제 집값" 곡선과 Moon 요인이 제거되었을 때의 "가상 집값 스케줄"이 완전히 겹쳐서 하나로 보인다. 즉 Moon --> Debt down의 효과와 Moon --> Price up --> Debt up의 효과가 정확히 상쇄되었다. 이 관측결과에 따르면 Moon변수는 전체적으로 수요측보다 공급측 요인을 자극해 서울 아파트값을 올렸다는 얘기가 된다. 다만 여기서 주의할 것이 있다. Moon --> Price up --> Debt up --> Price up라는 증폭과정에서 Debt의 집값 상승기여는 문 정부 5년간 오른 집값의 약 절반일 만큼 컸다. 그러나 (1)이걸 가능하게 한 것은 Moon이 올린 집값이었고, (2)Debt에 의한 자기 증폭과정은 secondary effect였다(Moon-->Debt으로 연결된 1st round effect가 아님). 아무튼 문재인 정부 때 투기꾼 때문에 집값이 올랐다고 하더라도 그 판을 깔고 집값 상승을 유지시킨 것은 문 정부가 된다는 말이다(나중에 이 점 상술).
수신: 전강수 교수
안녕하세요. 이혁주 교수입니다.
질문이 어렵군요. 그럼 이렇게 phrasing해 보지요. 여기 인용한 글에는 causal statement가 여러 개 있습니다.
"참여정부 때 2004년 내내 잠잠했던 부동산 투기에 다시 불을 붙인 것은 재건축규제 완화 방침 발표와 판교 신도시 개발이었다." 즉, 규제완화+신도기 개발(cause) --> 투기로 인한 집값 상승(effect)
"2005년의 8.31대책 이후 안정세를 보였던 강남 집값이 2006년 초에 다시 상승하기 시작한 것도 당시 서울시 의회가 재건축규제를 완화하려는 움직임을 보이면서부터였다." 즉, 규제완화(cause) --> 집값 상승(effect)
"2006년 후반 돌발적인 집값 폭등에 기름을 부은 것도 검단 신도시 건설 발표였다." 즉 검단 신도시 발표(cause) --> 집값 폭등(effect).
그런데 causal statement는 관찰 --> 인과론적 측정 --> validation/invalidation이라는 과정을 거친 후에야 할 수 있는 말입니다. 오마이뉴스 컬럼에는 rudimentary하지만 관찰이 있습니다. 즉 statistical association을 확보했습니다. 그 다음 단계는 이 association이 허위관계가 아니고 동시에 의미 있는 크기임을 확인하는 과정 즉 측정과정입니다. 이 측정과정을 공개해 주시지요.
까다로운 요구입니다. 불가피합니다.
(1) 지난번 이메일에서 "재봐야 안다"는 교훈을 얻은 바 있습니다.
(2) 논문 심사기준을 적용했습니다. 교수님은 유튜버가 아닙니다. 파장이 큰 명제일수록 엄격한 기준을 적용하는 것이 경험과학의 지식 검증과정입니다. ex. 통계학에서 type 1 error
(3) 교수님의 글에서 causal measure라고 볼 만한 것이 오마이뉴스 연재 다른 컬럼에서도 확인하기가 어려워서 그렇습니다. 글을 잘못 읽었는지 확인하고 싶습니다.
(4) 교수님의 인식은 주택문제가 기본적으로 공급부족 문제가 아니라고 믿는 진보측 여러 인사들과 공통점이 많습니다. 교수님의 답변은 진보를 이해하는 창이고 시금석입니다.
(5) 한 세대 이상 한 분야를 연구한 진보의 대표적 학자 전강수 교수의 경륜과 학식의 총체가 담긴 글입니다. 교수님은 그저 그런 학자가 아니라 한국 헨리 조지학파 양대 이론가 가운데 한 분입니다. 독자들의 눈높이는 여기에 맞추어져 있습니다.
감사합니다. 이혁주 드림
전강수 교수님께
empirical support 없는 경험과학은 성립하지 않습니다(by definition). 실천을 전제로 한 것이라면, 그 논설이 무엇이든 이 요건은 똑같습니다.
측정과정을 공개해 주시지요. 민주당이 재집권하면 교수님의 추종자들이 '김수현'을 대신할 것 같습니다.
감사합니다. 이혁주 드림
전강수 교수님께
측정 없이 경험과학 없고, 그 측정도 해봐야 압니다. 강원도 정선 예미산 지하 검출(detection) 시설, 포항 방사광가속기 모두 그런 얘기입니다. 상상과 이론이 실재(實在)가 되고, 미지(未知)가 감각으로 처음 인지되는 현장. 한국의 물리학자들이 '전강수'였다면, 이런 거대과학(big science) 시설은 불필요합니다.
그런데 우리가 측정에 진심이어야 하는 이유는 이것이 연구자를 연구자답게 만들어 주기 때문입니다.
경험명제의 수립과정에서 일차적으로 측정 문제에 부닥치면 오만가지 생각을 하게 됩니다. 자료가 있기는 한 건가. 어떤 자(尺)로 어떻게 재야 하나. 경합적 관계에 있는 효과/시각은 또 어떻게 담아내야 하나. 나 빼고 모두 심사석에 앉아 없는 흠도 찾아내려는데, 이들을 어떻게 설득할 것인가...
어떻게 측정하느냐에 따라 답도 다르고 설득력도 다릅니다. 분석과정에서 부닥치는 여러 가지 contingency를 잘 이겨내고 자신이 기대했던 결과를 얻었다고 해도, 그렇게 측정해 낸 가격이 높다, 낮다라는 판단을 어떻게 해야 할지 결국 답해야 합니다. 또한 이렇게 불완전한 measure를 가지고 해당 정책질문에 대해 '판단'하는 일이 정말 적절한 것인지 자신에게 되묻게도 됩니다.
교수님은 이런 자기성찰을 우회하고 검토(external review)가 불가능하게 논설했고, 그래서 연구자가 직면하는 여러 가지 인식론적 고민도 교수님에게서 보이지 않습니다. 이들 문제와 씨름해 본 사람이라면 지적으로 겸손하게 되고 다른 연구자가 생산한 과학문서를 존중하는 품성을 함양하게 되지만, 잘 보이지 않습니다. 얘기가 자꾸 겉도는 근본 이유가 이거라고 생각합니다.
academic community에서 중립적 용어로 나누는 대화가 사라진다면, 학계내 discourse가 정치적 과정으로 대체되고 대결, 동원, 투쟁이 공생, deliberation을 대신하면서 지식생태계가 무너지게 됩니다. 오마이뉴스, 조중동, 유튜브, 저서(著書)는 그 순기능이 사라지고 peer review 없는 방종의 매체가 됩니다. 교수님은 연구자/학자가 담당할 전(前) 과정을 뛰어 넘어 academic issue를 정치화하고 이전투구장으로 직행하자고 하십니다. 이게 우리가 꿈꾸는 사회일까요?
여기 이 자리는 어렵게 마련된 자리입니다. 일반인에 앞서 여기 전문가부터 설득하는 것이 어려워도 순서입니다. 이준구 교수 사례에서 보는 것처럼 진보뿐 아니라 그 대척점 보수 인사 가운데도 용기 있고 열린 연구자가 없지는 않을 겁니다. 교수님의 측정과정을 수용하는 분이 분명히 있습니다.
교수님이 공저자로 참여한 남기업 외(2017)는 회계논문(accounting)이지 인과론적 측정논문은 아닙니다. 피케티의 책도 마찬가지입니다. 성장론적 accounting documentation입니다.
그러니 측정과정을 공개하시지요.
감사합니다. 이혁주 드림
추신...재미 삼아 ChatGPT한테 "What would happen, when we do empirical science without causal measurement?"라고 물어보았습니다. 범생들에게서나 보는 재미 없는 답을 주는군요. 여기 주택논쟁 사이트 맨 뒤에 첨부했습니다.
남기업·전강수·강남훈·이진수. 2017. 부동산과 불평등 그리고 국토보유세. 사회경제평론, 30(3): 107-140.
<첨부> ChatGPT의 대답(2023.5.29.)
전강수 교수님께
측정은 연구자 전강수를 연구자답게 만들지만, 이런 전강수를 지켜보는 후배들도 진지한 학도로 만듭니다.
교수님께서는 오마이뉴스 경세제민 컬럼에서 문재인 정부의 실패를 혹독하게 비판합니다. 그 비판은 정책을 설계하고 실행한 주요인사를 향합니다. 그런데 만약 교수님과 교수님 연배의 leading scholar들이 실천학문의 연구자로서 측정에 진심이었다면, 문재인 정부에서 과잉신념자가 그렇게 많이 출현하지는 않았을겁니다.
측정을 통해 얻는 인과론적 증거를 경시하게 되면서 연륜에 비례해 익숙하고 좋아하는 것에 더 의존하고, 젊은이는 점점 더 다른 생각과 사고를 배척하고 self-righteous한 '사계(斯界) 전문가'로 성장합니다. 이렇게 체득한 설명방식과 그렇게 형성된 정책관은 단순명쾌해서 매혹적이지만, 측정과 관련된 subtlety를 이해하지 못해 생긴 단순화의 위험을 무릅씁니다.
여기에 교수님과 같은 열정이 후배 연구자들에게 더해지면 후배들은 '꽂히게' 되고, 기회가 주어지면 이들 '사계(斯界) 전문가'는 앞뒤 안 가리는 투사가 됩니다.주1 이들에게 경험은 세계관의 심화일 수는 있어도 유연함의 증가, 확장과는 거리가 있습니다. 이들에게 학습과 연구는 심화된 세계관을 정당화하는 도구일 뿐입니다. 이 세상에는 이들의 신념과 일치하는 간접 증거가 차고 넘치기 때문에 가능한 일입니다. 물론 그 반대 증거도 차고 넘칩니다.
교수님께서 비판한 괴물은 이렇게 출현합니다. 그런 괴물을 교수님은 또 이렇게 빚습니다. 이렇게 교수님 자신도 괴물이 되어 가고, 후배들도 하나둘씩 교수님의 변한 모습을 닮아갑니다. 학계는 지식공동체 대신 적대적인 academic den들로 분리됩니다. 제1 덴쵸=홍길동, 제2 덴쵸=철수..., 제3덴쵸=영희, ...
이런 상황이라면 '전강수'를 닮은 진보 '김수현'도 나오고 보수 '김수현'도 나옵니다.
제 얘기를 해보겠습니다. 학위 취득후 20년간 대중매체 전문가 의견을 보면서 일종의 열등감 같은 것을 계속 느꼈습니다. 전문가들은 저렇게 자신 있게 진단과 처방을 하는데, 나는 왜 아무리 보아도 보이지 않지 뭐 그런거였습니다. 나 박사 맞아???
눈치가 꼬딱지 만큼도 없고 미련하고 순진해 터지지 않고는 벌어지기 힘든 일입니다. 그런데 한 10년 전부터 의심이 들기 시작했습니다. 전문가들도 잘 모르는 얘기를 추측해서 할 수도 있고, 모른다고 하는게 맞는데 알고 있다고 간주하고 말하는 것일 수도 있겠다 그런 것이었습니다.
코로나 사태 초 의학자(medical scientist)들이 백신의 효과에 대해 인터뷰한 영상들을 찾아보세요. 우리하고 얼마나 다르게 말하는지. 이들이 말할 때는 의학의 특성상 통계학 교과서에 나오는 검증절차를 미련탱이처럼 따라하고, 검증결과를 더하지도 빼지도 않고 그대로 말하는 것 같았습니다. 그런데 그렇게 한걸음 한걸음 오바하지 않고 나아가는데 그 성취는 놀랍습니다.
만약 부동산정책 커뮤니티 전문가들이 의학자들처럼 자신의 말을 qualify하는 진중함만 발휘했어도 3,40대 청년 이혁주 박사의 20년 지적 혼돈은 덜 했을테고 그 시간 좀 더 생산적인 질문을 했을 겁니다. 이게 이혁주 박사 하나뿐이었을까요? 보통 사람들은 또 어땠을까요?
김수현, 변창흠, 김현미 같은 신념과잉 후배의 출현을 계속 방조하고, 바보 천치 이혁주 같은 사람 만드는 풍토를 계속 보고 계실건가요?
규제완화와 공급이 집값 상승의 원인이었다는 세 가지 사례의 측정과정을 공개하시지요. 우린 지금 도덕철학, 형이상학, 신학, 연역명제(deductive proposition)를 논하는게 아닙니다.
감사합니다. 이혁주 드림
주1...이 설명방식은 문재인 정부 초기 부동산 정책참모들의 선택을 잘 설명한다. 그러나 이후 수십 차례 반복된 반대효과 사례에도 불구하고 어떻게 계속 "투사"로 남아서 동일한 패턴의 선택을 했는지는 잘 설명하지 못한다. 다른 합리적 설명방식이 필요하다.
전강수 교수님께
측정이 없고, 그래서 claim의 empirical validity도 invalidity도 논할 수 없습니다. 측정이 없고, 그래서 경험명제도 존재하지 않습니다.
교수님은 ghost proposition을 디디고 서서 얘기하고 있습니다.
cherry-picked case에서조차 인과론을 제시하지 못합니다. 이제 대가(大家)의 말씀을 수용하려면 반복적 자기최면밖에 없습니다. JMS의 신부(bride)들이 갈등했던 것처럼(Netflix 다큐멘터리). 관계 단절을 선택지에서 제외했을 때, 이들이 할 수 있는 건 자신의 신앙심을 탓하고 자기세뇌하는 것뿐이었습니다.
측정에 무관심하니 testable hypothesis를 제시하지도 못하고 안 합니다. 반증 불가능한 명제는 과학에서 다루지 않습니다. 교수님은 과학을 하는 사람도, 실천학문을 하는 사람도 아닙니다.
교수님은 과학커뮤니티를 묶는 가치(transparency)도 존중하지 않습니다.
어찌 하오리까?
.
.
.
얼마나 더 보고 배우라고...
교수님이 어렵다면 진보측 다른 인사들도 어렵습니다. 선배로서, leading scholar로서 져야 할 짐, 지시지요. 그 짐 후배들한테 넘어갑니다.
이혁주 드림
추신...ChatGPT의 한 줄 충고입니다.
Prioritize transparency and openness for scientific integrity and trust.
좀 더 자세한 내용을 여기에 첨부합니다.
전강수 교수님께
별 말씀이 없으시니 지금까지 한 얘기를 정리해보겠습니다. <그림 1>은 교수님 논설의 구조를 경험명제 수립절차에 대입해 다시 꾸민 것입니다.
<그림 1> 경험명제의 수립절차: 전강수 교수 사례
"공급무익론"이라는 말은 규제완화와 공급이 집값상승과 투기를 조장하고, 더 나아가 투기 때문에 집값이 높다는 주장을 옮긴 말입니다. 적합한 표현인지는 계속 고민해 보겠습니다.
코멘트가 없으면 이 그림을 좀 더 확장해 보지요.
이혁주 드림
이혁주·유상균, 2021. 밀도규제의 구속성과 규제의 타당성 검토: 서울 아파트단지를 중심으로. 국토계획 56(5): 44-59.
전강수 교수님께
지난 주에 보았던 그림을 아래와 같이 오른쪽으로 확장해 다시 그렸습니다.
<그림 1> 경험명제의 수립절차와 적용: 전강수 교수 사례
한 마디로 말해 ghost proposition에 기반을 두고 한 말 모두 재검토 대상이 된다는 말입니다. 이를테면 오마이뉴스
전강수 교수의 경세제민
에서 어떤 주장이 공급무익론에 근거했다면, 그 의존도에 비례해 명제의 외적 타당성(external validity)에 문제가 발생하고, 예측과 처방의 신뢰도(reliability)가 떨어집니다.
공급무익론: 규제완화와 공급이 집값상승과 투기를 조장하고, 더 나아가 투기 등 수요측 요인 때문에 집값이 높다는 논설
지금까지 보인 교수님의 반응을 종합해 다음과 같이 정리합니다.
[평가, 잠정] 전강수 교수의 공급무익론은 측정과 empirical support를 결한 유령(ghost)의 경험명제에 기초하고 있다.주1
'잠정'이라는 한정어(qualifier)의 제거가능 여부는 천천히 알아봅니다. 공개 자료를 이용해 추가 검사합니다.
교수님과 진보 일반이 지닌 입장의 공통성을 고려할 때, '전강수식 논법'에 대해 진보 일반의 암묵적, 명시적 지지(endorse)가 있었을 것으로 추정됩니다. 이렇게 이해하면 '전강수식 논법'이 어떻게 등장해서 지난 수십년간 존속했는지 일부 설명할 수 있습니다.
전강수식 논법 : 인과론적 측정 없이 공급무익론을 주장하거나 그 주요 특징을 공유하는 논법
만약 진보 일반의 지지가 있었다면, 전강수식 논법이 진보 커뮤니티 주요 논객의 논설에서 흔하게 관찰되어야 합니다. 다음 주부터 위 [평가]를 진보 일반으로 확장할 수 있는지 알아봅니다.
다만 여기서 주의할 것이 있습니다. (1)어떤 명제의 형식적 요건 충족여부와 (2)명제의 진위 및 그 처방의 타당성은 서로 다른 문제입니다. 지금 하는 것은 논설의 형식검사(formality check)입니다.
감사합니다. 이혁주 드림
주1...전강수 교수는 scientific documentation이 없음에도 오마이뉴스 컬럼에서 수요-공급이론과 같은 경험과학을 논설의 정당화 도구로 이용했다. 즉 전 교수는 경험과학의 기성(旣成) 이론을 비과학에 이용했다. 전 교수의 논설은 과학과 비슷하지만(似而) 과학이 아닌(非), 즉 사이비 과학의 특징도 가지고 있다.
변창흠 교수님 보시지요.
지난 주까지 전강수 교수의 유령명제에 대해 알아보았습니다. 유령명제의 내용은 공급무익론으로서, 공급무익론은 무(無)측정이라는 방식으로 수립되었습니다. 명제의 내용(공급무익론)과 수립방식(無 측정)의 특이성을 고려해 이를 전강수식 논법이라고 통칭(統稱)했습니다. 그리고 공급경시적 입장의 공통성을 고려할 때, 전강수식 논법의 두 가지 특징(명제의 내용, 수립방식)이 진보 일반에서 관찰될 것 같다고 했습니다.
이 가설의 중요성을 고려해 꼼꼼하게 따지면서 진행하고자 합니다. 이것이 변 교수님 같은 분의 생각을 들여다 보아야 하는 이유입니다. 같이 수고 좀 합시다.
2018.4.28 중앙대학교(서울캠퍼스)에서 대한국토∙도시계획학회 춘계학술대회 라운드테이블 "토지공개념은 헌법에 도입되어야 하는가"가 있었습니다. 여기서 이혁주 교수가 "토지공개념, 규제 - 그 인과구조의 이해"라는 내용을 발제했습니다. 당시 이혁주 교수가 집값 대책으로 서울 아파트단지 고밀화에 관해 발표했고, 교수님께서 토론했습니다. 아래는 교수님의 토론 내용입니다(더 자세한 내용은 주택논쟁 사이트 <첨부> 참고).
[34' 24"] 공급을 확대하면 가격이 떨어질 거고 다른 거 하지 말고 이것만 하면 훨씬 효과가 있는데 왜 이걸 안 하냐 이런 말씀이신 것 같아요. 근데 사실 이 부분에 관해서 저는 우리가 해본 거거든요. 언제 해봤냐 1994년에 국토이용관리법 개정을 해서 풀어줘서 준농림지를 주거지로 했더니 속된 말로 그 난리를 친 거잖아요. 그래서 우리 계획 학회가 갖고 있는 핵심적인 근거가 이 계획적 관리이고 국토의 계획 및 이용에 관한 법률 그 다음에 도정법이 만들어진 핵심적인 근거가 그렇게 속된 말로 대책 없이 풀면 안 된다. 공급 확대 논리고 그래서 그 어려움을 겪어왔고...
[35' 05"] 그 다음에 개발제한구역을 MB정부 때 또 왕창 풀었지 않습니까? 8년에 걸쳐 가지고 개발 제한 어떻게 다 뭐 했는데 그냥 6개월만에 한 방에 풀어버렸습니다. 화끈하게 풀었는데 결국은 그 어마어마한 혼란을 겪었기 때문에 지금 핵심은 고밀로 하든 옆으로 늘리든 공급 확대하는 논리로 가격을 안정시킬 수가 없고 각종 부작용을 낼 수밖에 없다는 겁니다. 근데 지금 와서 이게 다시 가능한가 저는 의심이 들고요.
내용은 전체적으로 전강수 교수의 공급무익론을 닮았습니다. 이제 전강수식 논법의 나머지 절반인 경험명제의 수립방식 즉 측정의 존재 유무에 대해 알아보겠습니다.
위 코멘트에는 causal statement도 있고, theorizing이 필요한 사회과학적 명제라서 말 몇 마디로 판가름하기는 좀 그런 것도 섞여 있습니다. 여기서는 쉬운 것만 보지요. 통계모형만으로 답할 수 있는 내용으로서 아무거라도 좋으니 causal measurement 과정을 공개하실 수 있을까요? statement의 참(true), 거짓(false)에 대해 질문드리는게 아닙니다.
감사합니다. 이혁주 드림
<첨부> 변창흠 교수의 논평(확장본)
SH, LH 사장, 장관은 서로 하려고 합니다. 쉬운 일입니다. 그러나 지금 이 일은 서로 꺼리지만 당사자만이 아는 얘기입니다.
이 시대 우리가 어떻게 생각했는지 기록으로 남깁시다. 가능하면 자세하게.
말씀 없으시면 차선으로 교수님 논문을 보고 판단하겠습니다.
감사합니다. 이혁주 드림
변창흠 교수님께
교수님께서 발표한 peer review 논문에 교수님 논설의 경험적 근거가 되는 인과론적 측정이 존재하는지 알아보겠습니다.
아래 논문 목록은 한국연구자정보시스템(kri.go.kr)에 등재된 교수님의 논문실적입니다(임의 발췌).
저층주거지 정비사업 실행모델의 유형과 변화과정
토지공개념 논의와 정책설계: 개발이익공유화 관점에서
욕망의 정치'와 이명박 정부의 부동산 정책
토지개발사업의 공공성 평가와 공공부문의 역할
정상거처기준을 활용한 서울시 주택보급률의 재평가와 효과에 관한 연구
수도권 제2신도시 건설계획의 평가와 발전방향: 판교신도시 건설계획을 중심으로
위 목록에는 부동산시장과 관련된 변수간 인과론적 관계를 측정한 논문이 없습니다. 나머지 논문도 마찬가지입니다. 바꾸어 말해서 부동산시장에 대한 변창흠 교수의 인과론적 논설(공급무익론 포함)은 내용, 논설방식과 관계 없이 그 경험과학적 논거가 peer review 논문에 존재하지 않습니다.
따라서 토론회에서 했던 주장의 경험적 근거를 교수님의 논문으로 한정할 때, 명제의 내용과 수립방식 등 전강수식 논법의 주요 특징이 교수님에게서도 발견됩니다.
아무 말씀 없으시면 다음 주에 김수현 교수의 논설을 살펴보겠습니다.
김수현 교수님께
지난 주 변창흠 교수의 토론에서 전강수식 논법의 두 가지 특징(공급무익론, 무(無) 측정)을 확인했습니다. 무측정이라는 판단은 변 교수 자신이 쓴 논문만을 대상으로 해서 내렸습니다. 전강수 교수도 마찬가지입니다. 전 교수의 논문목록(kri.go.kr)입니다.
이제 전강수, 변창흠 교수가 특이사례에 속하는지 김 교수님을 대상으로 알아보겠습니다. 아래는 2017.8.3. 문재인 정부 초 한겨레 신문 인터뷰 기사입니다.
그는 “재작년 말부터 전세계적으로 수도와 주요도시를 중심으로 부동산 가격이 다시 오르는 현상이 발생하고 있다”며 “수요-공급의 문제를 떠나 다른 차원에서 과도한 양적완화에 따른 머니게임이 벌어지고 있다고 봐야 한다”고 진단했다. 지난 2008년 이후 과잉유동성 문제가 누적되며 부동산에 투기 자본이 몰려 가격 급등이 이뤄졌다는 분석이다.
이 기사에 나타난 인과론적 진단은 당시 시장에 작지 않은 충격을 준 8.2대책의 배경이 됩니다.
8.2대책 국토부 문서에서 당시 "공급여건은 안정적인 편"이나 "투기수요가 늘어나 주택시장 불안이 발생"하고 있다고 진단하고, 투기수요 관리중심의 처방을 내놓습니다(국토교통부, 2017.8.2). 그 이전 발표되었던 6.17대책에서도 "투자목적의 주택수요가 급격히 증가"하고 있다고 시장을 평가합니다(국토교통부, 2017.6.19: 5).주1
전체적으로 전강수, 변창흠 교수에게서 보았듯이 집값이 투기 때문에 높다는 인식을 공유합니다. 즉 내용 측면에서 공급무익론과 기본인식이 유사합니다.
다음으로는 전강수식 논법의 측정 문제에 대해 알아보겠습니다. 김 교수님께 질문합니다. 한겨레 신문 기사에 나타난 인과론의 타당성을 보여주는 측정 혹은 인용에 대해 말씀해 주시지요.
감사합니다. 이혁주 드림
주1...문재인 정부 시기 발표된 25차례 이상 부동산대책과 관련된 정부의 공식 발표문 일체는 여기에서 얻을 수 있음.
국토교통부, 2017.6.19. 주택시장의 안정적 관리를 위한 선별적 맞춤형 대응방안.
http://www.molit.go.kr/USR/NEWS/m_71/dtl.jsp?lcmspage=73&id=95079312
국토교통부, 2017.8.2. 실수요 보호와 단기 투기수요 억제를 통한 주택시장 안정화 방안.
http://www.molit.go.kr/USR/NEWS/m_71/dtl.jsp?lcmspage=70&id=95079498
김수현 교수님께
김수현은 경세가(經世家)이전에 연구자입니다. 한국 사회가 김수현에게 그런 영예를 안겼던 것은 연구자 이력이 있어서였습니다. 서울대학교 박사, 서울시정개발연구원(현 서울연구원) 연구자, 세종대학교 교수.
한국 사회의 침몰을 재촉한 정책으로 의심 받는 사회실험이었습니다. 이대로라면 민주당의 집권과 더불어 경험과학적 지위(地位)가 불분명한 정책론이 외부검토 없이 또 등장합니다. 계획계도 장담할 수 없고요.
지금 괜한 짓 아닌지 생각하는 보통의 계획가분들도 ChatGPT한테 아래와 같이 물어 보세요. 조금이나마 공감하는데 도움이 되길 희망합니다.
As of now, we know that X will solve or help solve a problem. However, we do not know the exact theory of why and/or how X works. Why should we bother to understand the theory?
어떤 식으로든 sense-making해야 하고 지금처럼은 안 됩니다.
대답하시지요.
이혁주 드림
김수현 교수님께
과학적 진실과 정치적 이해(利害)가 충돌하나요?
얼마 전 올라온 넷플릭스 다큐, "킹 오브 클론, 황우석 박사의 몰락"에서, 내부고발자와 탐사프로그램 제작자가 부닥친 딜레마는 연구 진실 대(對) 국익(國益)이었다고 합니다.
하반신 마비자, 벌떡 일으켜 걷게 하는 기적의 기술. 전세계 불치병 환자의 희망
한국경제 100년을 먹여 살릴 업적...
이들의 최종 판단은 "진실이 국익[이다]"였습니다(남은 시간 37' 00"). "Science is based on trust."라는 해외 철학자의 말도 거기 나옵니다. 물리학자 김상욱 교수(경희대)도 생각이 비슷합니다.
연구자가 뱉는 말은 무게가 다릅니다. 이들이 뱉은 말은 '실험실' 밖으로 내놓은 지식원(源)으로 취급됩니다. 요즘 전세계 과학계가 상온 초전도체 후보 물질 LK-99 때문에 난리가 난 것도 그 파장 때문이고, 그래서 지식의 원석(原石)을 검증한다고 벌이는 소동입니다.
LK-99만큼 중요한 주제입니다. 그런데 전문가 집단이 그 타당성을 의문시하고 있습니다. 둘 다 시험과 validation을 거쳐 truth value가 결정되는 과학명제(scientific proposition)입니다.
LK-99: A new material A has a property B.
김수현 교수: A factor A is a cause of B.
어느 편에 서시겠습니까? 진보의 가치인가요, 진실(Popperian truth)인가요?
이혁주 드림
김수현 교수님께
한국연구자정보시스템(kri.go.kr)에 있는 교수님 논문 가운데 일부입니다.
우리에게는 생소한 '주택의 금융화' 논의, 어떻게 이해하고 활용할까?
홍콩은 집값이 왜 비싼가: 홍콩 주택시장의 구조와 특성
The developmental state, speculative urbanisation and the politics of displacement in gentrifying Seoul
한국계 중국인 밀집주거지의 분화에 관한 연구-서울시 가리봉동과 자양동을 중심으로
무허가 정착지 정책과 국가 역할: 서울, 홍콩, 싱가포르의 경험을 중심으로
Issues of squatters and eviction in Seoul: From the perspectives of the dual roles of the state
서울시철거민 운동사 연구
홈리스 문제의 구조와 대책
NGOs의 쟁점과 신뢰성 논의
구소련과 동구주택정책 변화의 성격
논문 목록에 부동산시장 변수간 관계를 측정한 논문이 없습니다. 잘못 판단한 것이라면 말씀 주세요.
지금까지 알아본 바 그리고 전강수 교수의 논문목록(kri.go.kr) 등을 종합해 아래와 같이 정리합니다.
[형식검사] 전강수, 변창흠, 김수현 교수의 경우, 부동산시장 경제변수간 관계(공급무익론 포함)에 대한 인과론적 논거는 그 내용, 논설방식과 관계 없이 이들 3인이 참여해 쓴 peer review 논문에 있지 않다. 따라서 전강수, 변창흠, 김수현 교수가 한 주장의 경험적 근거를 이들이 작성한 논문으로 한정할 때, 명제의 내용과 수립방식 등 전강수식 논법의 주요 특징이 3인의 논설에 존재한다.
위 평가에 따르면 김-변-전 3인의 부동산시장에 대한 언급 일체는 직접 수행한 연구에 기초해 한 것이 아니라
[출처 1: 타인연구] 다른 사람의 연구결과를 참고했거나
[출처 2: 추측] A speculative reasoning, Wishful thinking
이 됩니다.
부정적 평가입니다. 다음 주에는 다른 사람들의 논문으로 reference를 확장합니다. 앞서 본 파란색 표현 두 가지 즉 인과론과 출처에 대한 평가가 달라지는지 알아보겠습니다.
감사합니다. 이혁주 드림
전강수, 변창흠, 김수현 교수님께
이번 주에는 공급무용론의 경험적 근거가 다른 사람이 쓴 논문에 있는지 확인합니다. 우선 김용창, 정세은, 서순탁 교수 논문으로 한정해서 살펴 봅시다. 확인할 내용은 대략 아래 두 가지입니다.
(1) 과잉유동성론(김수현) 및 일반론으로서 공급무익론(전강수, 변창흠) 명제의 타당성 논증 여부
(2) 전강수, 변창흠 교수가 든 개별 사례에서 주장한 효과가 실제 존재했다는 측정결과의 존재여부
거론 사례: 검단 신도시 등 3사례, 그린벨트 해제, 준농림지 용도 전환 공급 등 사례
효과: 집값 상승, 투기 등 각종 부작용
김용창, 서순탁 교수는 2019년 국토계획 편집위원회에서 정책-실무논문집을 꾸밀 때 당시 편집위원회에서 변창흠 교수한테 진보 성향 연구자 추천을 의뢰한 바 있습니다. 두 사람은 변 교수가 추천한 연구자들입니다. 한편 정세은 교수는 과거부터 경향신문에 활발하게 글을 올리는 분입니다.
한국연구자정보시스템에서 김용창, 서순탁, 정세은 교수의 논문목록에서 일정한 일련번호로 끝나는 논문을 추렸습니다. 아래는 결과물입니다.
자산기반 불평등 시대의 약탈적 축적 체제와 주거불안의 일상화
불확실성시대, 실존으로서의 거주(Wohnen)와 토지주택은행정책
경제 하부구조 관련 공기업의 해외투자에 대한 연구(2)-해외 하부구조투자의 유형과 성격, 국적성의 문제-
개발이익 환수제도 운영과정의 법적쟁점과 사법적 판단
한국 부동산평가 산업구조 특성 및 개편방안 연구
일본의 부동산증권화제도 및 REIT제도
부동산서비스 및 중개제도의 문제점과 정책방향
사이버스페이스와 사람의 생활
한국에서 새로운 사회운동의 올바른 논의를 위하여
가계의 부동산 분배 상태와 보유세 개편의 계층별 세부담 효과
영국 식민지배가 18세기-19세기 아일랜드 경제발전에 미친 영향
한국의 경제적 개방의 불평등 효과
박근혜 정부의 조세재정정책 평가와 대안의 모색
복지국가 실현을 위한 세제 개혁 방안
한중일 제조업의 전문화 및 집중화 추이
How did natioanl real capital markets in Europe react to EMU?
재난 리질리언스 제고를 위한 일본의 사전부흥계획에 관한 연구: 사이타마현 부흥마을만들기 이미지 트레이닝을 중심으로
신제도주의 관점에서 본 택지개발제도 변화 분석: 공영택지개발 도입시기를 중심으로
협력적 거버넌스 관점에서 본 광역행정 사례분석: 수도권 대중교통체계 개편을 중심으로
개발부담금 부과취소 청구의 원인과 해소방안 연구
재건축 임대주택공급의무제의 지역별 개발이익환수 효과 분석
개발이익환수의 제도화
토지규제완화이익 환수제도의 정비
참여정부의 토지정책과 과제
국토이용 계획체계의 개선방안 연구
전체적으로 부동산시장 변수간 인과론적 관계를 측정한 논문을 찾기가 어렵습니다. 김수현, 변창흠, 전강수 교수가 거론한 인과론의 진위판단에 쓸 수 있는 논문이 없습니다. 틀린 판정이면 말씀해 주세요.
[형식검사 결과] 전강수, 변창흠, 김수현 교수(김-변-전)가 언급한 공급무익론, 과잉유동성론에 대한 인과론적 측정논문이 전강수/변창흠/김수현 및 김용창/서순탁/정세은 교수가 쓴 peer review 논문에 존재하지 않는다.
[시사] 따라서 김-변-전이 한 주장의 경험적 근거를 이들 6인이 쓴 논문으로 한정할 때, 명제의 내용(=공급무익론)과 수립방식(=인과론적 측정 無) 등 전강수식 논법의 주요 특징이 김-변-전 3인에게서 발견된다.
다음 주에는 김-변-전 논설의 경험적 근거를 학계 일반으로 확장해서 지난번 이메일에서 언급한 두 가지 가능성 가운데 어느 경우에 해당하는지 알아봅니다.
[출처 1: 타인연구] 다른 사람의 연구결과를 참고
[출처 2: 추측] A speculative inference, wishful thinking
감사합니다. 이혁주 드림
전강수, 변창흠, 김수현 교수님께
지난 주에 본 것은 이렇습니다.
전강수, 변창흠, 김수현 교수(김-변-전)가 언급한 공급무익론, 과잉유동성론에 대한 인과론적 측정논문이 전강수/변창흠/김수현/김용창/서순탁/정세은 교수가 쓴 peer review 논문에 존재하지 않는다.
지금까지 진보 쪽 연구자를 대상으로 확인했습니다. 이제 진보 울타리 밖으로 확장해 검색해 보겠습니다.
논문 데이터베이스와 학술지에서 일부 확인한 내용은 분양가(신축 아파트 가격)와 재고가(구축 아파트 가격) 사이의 관계입니다. 분양가가 높으면 다른 집값을 올려 주택시장 전체를 불안정하게 만들고 각종 부작용을 일으킬 위험이 있습니다. 이렇게 중요한 주제인 만큼 분양가가 다른 주택가격에 미치는 영향에 관한 인과연구 논문이 여러 편 있습니다.
만약 높은 분양가가 주택시장 전체를 불안정하게 만든다면, "... 공급 확대하는 논리로 가격을 안정시[키는데]" 한계가 있고, 주택가격 안정화정책으로서 수요관리 대책이 중심이 되어야 한다는 논설은 그 타당성 충족에 필요한 조건 하나가 충족됩니다. 때문에 분양가와 재고가 사이의 인과관계(부호, 통계적 유의도, 크기)는 강력한 주택시장 규제의 불가피성과 공급무용론을 지지/부정하는 중요 증거로 간주됩니다. <표 1>은 문헌 요약입니다.
<표 1> 신축 아파트의 분양가와 기존 아파트의 재고가간 인과관계 연구결과
-----------------------------------------------------------------------------------------------------------------------------
논문 분석자료 분석결과
-----------------------------------------------------------------------------------------------------------------------------
윤숭봉 외 - 1999-2003년 가격지수 -강남: 재고가가 분양가에 영향을 미침
(2004) - 대상: 서울시 강남 및 강북 -강북: 분양가와 재고가 사이에 인과성 없음
- 출처: 국민은행
장성수 - 2000-2004년 월별 재고가 및 -분양가와 재고가 사이에 인과성 없음
(2004) 동시분양가
- 대상: 서울시 전역
- 출처: 부동산뱅크, 국민은행
권지혜 - 1998-2004년 월간 재고가 -서울 강남의 경우 분양가가 재고가에
(2005) 및 동시 분양가 영향을 미침
- 대상: 서울 전역, 강남 및 강북
- 출처: 저스트알, 국민은행
임덕호 - 2000-2008년 월별 재고가 및 -양방향 영향 가운데 절반 정도 유의
-박선구 동시분양가 - 유의한 경우 예시
(2010) - 대상: 전국, 서울, 경기 서울 분양가 --> 전국/경기 재고가
- 출처: 부동산114 전국 분양가 --> 전국 재고가
김경민 -2002-2006년 재고가 -강남의 재고가는 인접지역과 수도권 재고가에
(2007) -대상: 전국 주요 시군구 137곳 영향을 미치지만, 전국 주요 시군구 재고가는
-출처: 국민은행 과거 자기 가격에 주로 영향을 받음
지규현- -2000~2009 서울, 경기 -서울과 경기 각 지역에서 재고가와 분양가 사이의
최성호 분기 시계열 자료 인과관계 검토
(2011) -시차변수를 포함한 단일 -서울에서 재고가-->분양가(+)만 유의
방정식 모형
우철민- -2000~2006 서울 월간 -재고가-->분양가, (+) 유의
심교언 시계열 자료 -분양가-->재고가, 비유의(t=1.22)
(2011) -오차수정모형(ECM)
박은숙 -2000-2005 서울 자치구 패널 -분양가와 재고가가 상호 견인(유의)
-최막중 -재고가-->분양가 영향이 분양가-->재고가
(2015) 영향의 3배
-----------------------------------------------------------------------------------------------------------------------------
주...임덕호-박선구(2010)를 보완해 작성. 임덕호-박선구(2010)에 관한 좀 더 자세한 내용은 <첨부 1> 참고
표에 따르면 신축 아파트값과 재고 아파트값은 서로 영향을 주기도 하고 그렇지 않기도 하며, 지역에 따라 패턴도 다릅니다. 서울의 경우 권역에 따라 다르고, 강남도 두 가격간 관계가 일정하지 않습니다. 즉 어떤 집값이 다른 집값을 오르게도 하고 그렇지 않기도 합니다.
이렇게 주택가격간 관계는 일정하지 않습니다만, 두 분은 인과론에 관해 이렇게 말합니다.
[35' 05"] 그 다음에 개발제한구역을 MB정부 때 또 왕창 풀었지 않습니까? 8년에 걸쳐 가지고 개발 제한 어떻게 다 뭐 했는데 그냥 6개월만에 한 방에 풀어버렸습니다. 화끈하게 풀었는데 결국은 그 어마어마한 혼란을 겪었기 때문에 지금 핵심은 고밀로 하든 옆으로 늘리든 공급 확대하는 논리로 가격을 안정시킬 수가 없고 각종 부작용을 낼 수밖에 없다는 겁니다. 근데 지금 와서 이게 다시 가능한가 저는 의심이 들고요. (변창흠 교수)
작금의 집값 폭등은 공급부족 때문에 일어났을까? 아니다! ... 공급 측면에서 서울과 수도권의 집값 폭등을 유발할 만한 특이 요인은 없었다는 뜻이다. ... 진단을 엉터리로 했는데 처방이 제대로 나올 리가 없다. 결론부터 말하면, 공급확대 정책은 부동산 시장을 안정화하기는커녕 가격 변동을 증폭시킨다. ... 그러니 [투기적 가수요]에 맞춰서 공급을 확대한다는 것 자체가 애당초 어불성설이다. (전강수 교수)
참여정부 때 2004년 내내 잠잠했던 부동산 투기에 다시 불을 붙인 것은 재건축규제 완화 방침 발표와 판교 신도시 개발이었다. 2005년의 8.31대책 이후 안정세를 보였던 강남 집값이 2006년 초에 다시 상승하기 시작한 것도 당시 서울시 의회가 재건축규제를 완화하려는 움직임을 보이면서부터였다. 2006년 후반 돌발적인 집값 폭등에 기름을 부은 것도 검단 신도시 건설 발표였다. (전강수 교수)
어떻게 읽어야 하나요?
이혁주 드림
권지혜, 2005. 신규주택시장과 기존주택시장의 상호 연관성에 관한 연구, 건국대 석사학위논문.
김경민, 2007. 강남지역의 아파트가격 변화가 전국에 미치는 영향. 「국토계획」, 42(2): 137-161.
박은숙-최막중, 2015. 분양과 재고아파트 가격의 상호영향에 관한 실증연구. 「국토계획」, 50(5): 139-151.
우철민-심교언, A Study on the Role of New Apartment Price and Existing Apartment Price In Housing Market. 부동산연구, 21(3): 281-296.
윤숭봉-장봉규-정창무, 2004. 서울시 분양아파트 시장의 평형별 분화에 관한 연구. 「국토계획」, 39(1): 235-249.
임덕호-박선구, 2010. 신규아파트 분양가격과 중고아파트 매매가격 간의 그랜저 인과관계 분석. 「주택연구」 18(2): 53-71.
장성수, 2004. 주택분양원가 공개 논의에 대한 고찰, 한국주택학회 학술대회.
지규현-최성호, 수도권 분양-재고주택시장의 시장효율성 분석. 부동산연구 20(2): 51∼63.
전강수, 변창흠, 김수현 선생님께
지난 주 문헌검토 결과는 이랬습니다.
[정리] 신축 아파트값은 재고 아파트값에 영향을 주기도 하고 그렇지 않기도 하다. 그 역도 마찬가지이다. 그리고 두 가격간 인과관계의 패턴이 지역에 따라 다르다. 즉 두 가격간 관계가 일정하지 않다.
전-변 논설과 관련해 이를 다시 해석하면, 새로 공급되는 주택의 가격이 높아도 그것이 다른 집값에 어떤 영향을 미칠지 단정할 수 없습니다.
좀 더 구체적으로 봅시다. 아래 <그림 1>은 전강수 교수가
주택공급=집값 상승
이라는 주장을 하면서 그린 그림입니다. 그런데 [정리]에 따르면 높은 새집값이 투기를 자극해 수요곡선이 우측으로 이동할 수도 있고 그렇지 않을 수도 있습니다. 즉 <그림 1>에서 전 교수가 주장하듯 수요곡선이 우측으로 이동하면 가격상승, 이동하지 않으면 전 교수의 설명과 달리 단기에라도 가격하락입니다. 그림에서 E1은 최초 균형, E3는 투기수요가 있을 때 성립하는 균형. D1은 최초 수요곡선, D2는 투기수요가 반영된 주택공급후 형성된 새 수요곡선.
<그림 1> 오마이뉴스 컬럼 삽화(전강수 교수)
이런 indeterminacy는 잘 알려져 있는 내용인데, 요약하면 이렇습니다.
소비재와 투자자산 등 두 가지 속성을 가진 신규주택과 재고주택이 대채재로서 상호작용하면, 보강간섭, 상쇄간섭 등 두 가지 현상이 나타나고, 이런 다양한 이론적 가능성을 검측한 것이 <표 1>이다.
좀 더 구체적으로 봅시다. 소비재와 투자자산 등 두 가지 속성을 가진 대체재 X, Y가 있습니다. 소비재로서 두 재화에 대한 소비 수요 총량 X+Y가 고정되어 있다고 합시다. X재 시장에서 X재의 공급이 증가하면 X재의 가격이 하락하고, 대체재인 Y재의 상대가격이 올라 Y재 시장의 수요가 일부 X재 시장으로 이동하면, 두 시장 모두 가격이 하락합니다(1st order effect > higher order effect assumed). 이런 현상이 공간적으로 서로 다른 local market 사이에서도 일어납니다. 그러나 이를 상쇄할 만큼 큰 투자수요가 발생했다면(수요총량 고정 가정 해제), X재, Y재 가릴 것 없이 모두 가격이 상승할 것이고, 그럴 만큼 투자수요가 크지 않다면 수요증가 효과는 제한적이라서 다양한 가격변화 패턴이 X재 시장, Y재 시장, local market에서 관찰될 것입니다. 여기서 공급곡선을 좀 더 유연하게 확장적으로 해석해 더하고 모형이 이러한 요인들을 통제하는데 한계가 있을 때 그 패턴은 더 다양하게 나타납니다. 그리고 system perturbation의 종류를 더 허용하면 보강, 간섭 현상은 프랙탈 현상 사진에서 보는 것처럼 무궁무진한 패턴으로 나타날 것입니다.
전강수, 변창흠 교수님께 질문합니다. 두 분은 다양한 검측 결과 가운데 부분 사례를 전체 사례로 확대-적용하면서, 주택공급이 집값 안정에 도움이 되지 않고 오히려 부작용을 일으킨다는 공급무익론을 주장합니다.
[34:24] 공급을 확대하면 가격이 떨어질 거고 다른 거 하지 말고 이것만 하면 훨씬 효과가 있는데 왜 이걸 안 하냐 이런 말씀이신 것 같아요. 근데 사실 이 부분에 관해서 저는 우리가 해본 거거든요. 언제 해봤냐 1994년에 국토이용관리법 개정을 해서 풀어줘서 준농림지를 주거지로 했더니 속된 말로 그 난리를 친 거잖아요. (변창흠 교수)
[35' 05"] 그 다음에 개발제한구역을 MB정부 때 또 왕창 풀었지 않습니까? 8년에 걸쳐 가지고 개발 제한 어떻게 다 뭐 했는데 그냥 6개월만에 한 방에 풀어버렸습니다. 화끈하게 풀었는데 결국은 그 어마어마한 혼란을 겪었기 때문에 지금 핵심은 고밀로 하든 옆으로 늘리든 공급 확대하는 논리로 가격을 안정시킬 수가 없고 각종 부작용을 낼 수밖에 없다는 겁니다. 근데 지금 와서 이게 다시 가능한가 저는 의심이 들고요. (변창흠 교수)
변창흠 세종대 교수는 "지난 3년간 서울 지역 주택 인허가, 분양, 준공 건수를 보면 앞선 10년 평균과 비교해 각각 2만호, 8000호, 9000호씩 증가했다"면서 "앞선 서울의 집값 급등은 수요 공급 측면보다 심리적 요인과 일부 부동산 상승 세력이 결합한 측면이 크다"고 말했다. 출처
작금의 집값 폭등은 공급부족 때문에 일어났을까? 아니다! ... 공급 측면에서 서울과 수도권의 집값 폭등을 유발할 만한 특이 요인은 없었다는 뜻이다. ... 진단을 엉터리로 했는데 처방이 제대로 나올 리가 없다. 결론부터 말하면, 공급확대 정책은 부동산 시장을 안정화하기는커녕 가격 변동을 증폭시킨다. ... 그러니 [투기적 가수요]에 맞춰서 공급을 확대한다는 것 자체가 애당초 어불성설이다. (전강수 교수)
참여정부 때 2004년 내내 잠잠했던 부동산 투기에 다시 불을 붙인 것은 재건축규제 완화 방침 발표와 판교 신도시 개발이었다. 2005년의 8.31대책 이후 안정세를 보였던 강남 집값이 2006년 초에 다시 상승하기 시작한 것도 당시 서울시 의회가 재건축규제를 완화하려는 움직임을 보이면서부터였다. 2006년 후반 돌발적인 집값 폭등에 기름을 부은 것도 검단 신도시 건설 발표였다. (전강수 교수)
<표 1> 분양가와 매매가간 그랜저 인과관계 검정 결과
-----------------------------------------------------------------------------------------
인과관계 유의 비유의 계
-----------------------------------------------------------------------------------------
분양가 --> 매매가 16 14 30
매매가 --> 분양가 12 18 30
서울 분양가 4 16 20
-----------------------------------------------------------------------------------------
주...제1행: 전체 30사례 가운데 분양가가 매매가에 유의한 영향을 준 사례가 16사례. 제3행 각 칸 수치 = (1)서울 분양가 --> 전국 분양가 및 매매가 사례 + (2)서울 분양가 --> 경기도 분양가 및 매매가 사례 + (3)서울분양가 --> 서울 매매가 사례. 이를테면 서울 분양가가 서울 및 다른 지역 매매가 혹은 분양가에 유의한 영향을 준 사례가 전체 20사례 가운데 4사례. 임덕호-박선구(2010)의 <표 6>을 이용해 작성. 표에서 유의하다는 것이 곧 (+)의 인과관계를 의미하는지 논문에서 명확히 밝히고 있지 않음. significant (-)도 가능.
두 분이 내린 경험적 판단(empirical judgment)은 그 어조가 단호하고 결론은 포괄적입니다. 그러나 두 분의 판단은 방향, 유의도, 크기 등 여러 가지 사례 가운데 한 사례로서, 비슷한 비중이거나 빈도가 낮게 출현하는 사례에 근거합니다. 서울의 경우, <표 1>에서 보듯이 유의하지 않은 사례가 더 많습니다.
[기존문헌에서 바라본 공급무익론] 전강수, 변창흠 교수의 공급무익론이 채택한 인과론은 분양가-재고가에 관한 실증연구에 등장하는 다양한 사례 가운데 하나로서, 공급무익론과 같은 포괄적 논설은 성립하지 않는다.
어떻게 그 정도로 과감한 일반화가 가능한지 설명해 주시지요. 아직 직접 측정한 결과를 보여주지도 않았고 설명하지도 않았습니다. 진보 측 여러 연구자의 논문에도 거론한 부분 사례를 측정한 경우도, 부분을 전체로 일반화하는 과정을 정당화한 논변도 없습니다.
이혁주 드림
임덕호-박선구, 2010. 신규아파트 분양가격과 중고아파트 매매가격 간의 그랜저 인과관계 분석. 「주택연구」 18(2): 53-71.
전강수, 변창흠, 김수현 교수님께
지난 주에 본 것을 말과 그림으로 정리한 게 아래에 있습니다.
[기존문헌에서 바라본 공급무익론]
신축 아파트값은 재고 아파트값에 영향을 주기도 하고 그렇지 않기도 하며, 그 역도 마찬가지다. 지역시장에서 관찰된 두 가격간 인과관계도 마찬가지다. 즉 두 가격간 인과관계가 일정하지 않다.
전강수, 변창흠 교수의 공급무익론이 채택한 인과론은 분양가-재고가에 관한 실증연구에 등장하는 다양한 사례 가운데 하나로서, 전-변의 포괄적 논설은 성립하지 않는다.
Note: x축=원인변수, y축=결과변수. 그랜저 인과검증하면서 significant (-)/(+)를 구분하지 않고 보고한 논문이 다수 있음. 모두 significant (+)로 보고 Up곡선으로 분류해 그렸음. 우측 Insignificant negative는 이혁주 교수가 이용한 자료에서 관측한 결과(이후 논의 예정).
<그림 1> 분양가 대 재고가간 관계
위 그림을 그려낸 과정은 <첨부 1>을 참고하세요. 그림에서 양의 인과관계를 보이는 경우가 다수 존재합니다(Up 곡선). 즉 어떤 이유로 분양가가 높으면(낮으면) 재고가가 높은 사례(낮은 사례)가 자주 발견되고, 어떤 이유로 재고가가 높으면(낮으면) 분양가가 높은 사례(낮은 사례)가 자주 발견됩니다. 반대로 어떤 이유로 분양가, 재고가가 낮으면 순서대로 재고가, 분양가가 낮아지는 사례가 자주 발견됩니다. 그러나 두 가격 사이에 뚜렷한 관계가 없는 경우도 비슷한 빈도로 존재합니다. 다른 말로, 두 가격간 동적과정을 자극(initiate)하는 분양가가 어떤 이유로 애초 높게 설정되면 재고가/분양가를 자극해 올리고, 분양가가 어떤 이유로 애초 낮게 설정되면 분양가/재고가의 하락을 촉진하지만, 이런 방향성이 불분명한 경우도 자주 발견됩니다.
위 그림이 말하고 있지 않은 것. 분양가와 재고가가 애초 높게 책정되어 시장에 나오는지 낮게 책정되어 나오는지 검토논문들이 측정하거나 규명한 것은 아님. 마찬가지로 분양가(재고가)가 재고가(분양가)를 참고해서 비슷한 수준으로 나오는지 아니면 더 높은 수준으로 나오는지를 조사해 보고한 논문들은 아님.
그래서 <그림 1>은 다음과 같은 해석과 양립가능.
만약 집이 부족하거나 투기이득이 기대되면 분양가와 재고가가 높게 책정되어 시장에 나오고, 집이 충분하거나 투기이득 기대가 낮다면 분양가와 재고가가 낮게 책정되어 시장에 나온다. 그리고 이후 분양시장과 재고시장에서 그 영향이 양의 상관관계를 보이며 나타나기도 하지만, 그렇지 않은 경우도 전체 사례의 절반 정도 된다.
이런 얘기를 지난 주 보았던 전강수 교수의 수요-공급모형 그림에 적용해 보겠습니다. 전 교수의 수요-공급모형에서 투기요인은 system 밖 생성 요인으로서 수요곡선의 이동요인(shift factor)으로 활용됩니다. 외생변수의 도입은 시나리오 분석이라서 본질적으로 arbitrary합니다. 따라서 그 소멸도 arbitrary하게 발생할 수 있고(counter scenario, 수요곡선 無이동), 이 경우 전 교수 story 모두를 nullify하기도 합니다. arbitrary scenario가 의미 있으려면 적실(relevant)해야 하는데, counter scenario는 전 교수의 scenario만큼 개연성과 의의(significance) 양측면에서 적실합니다. 즉 전 교수의 시나리오 분석은 일부 가능성에만 주목하고 그래서 분석 그 자체 arbitrary하고 그 결론도 마찬가지로 arbitrary하게 되고 신뢰도가 떨어지게 됩니다. 전 교수는 이런 counter scenario의 존재 가능성에 대해 침묵하고, 또 다른 system shock을 도입해 자신이 원하는 무대 장면을 연출합니다.
비판적 검토는 타인이 작성한 과학문서를 존중하는 것에서 시작합니다. 자신의 입장과 일치하지 않으면 설명해야 하고, 설명하지 못하면 자신의 말을 qualify해야 합니다. 그리고 논변은 자신의 입장과 일치하는 실험결과에만 주목해 해서는 안되고, counter scenario의 가능성도 염두에 두면서 균형 있게 분석해야 합니다. 그리고 부분 사례를 전체로 일반화할 때는 주의해야 합니다.
Experiments are systematic observations or measurements, preferably made under controlled conditions--that is, under conditions in which a single variable changes. From the explanation of Figure 1.4 The Scientific Method, Bruce Averill and Patricia Eldredge, 2012. General Chemistry: Principles, Patterns, and Applications. Salyor Academy. Loaded at MIT OpenCourseWare.
변 교수는 서울 밖 준농림지와 그린벨트를 서울, 전국 여타 사례로, 전 교수는 거론한 3가지 사례를 서울과 지역 혹은 전국 일반으로 확장했습니다. 즉 sample ≒ population이라고 간주합니다. 이러자면 대표성이 확보되어야 합니다. 물론 이렇게 추론하려면 먼저 인과론적 측정이 있어야 합니다. 절차 하나하나 조사방법론의 ABC를 따라 하지 않습니다.
대표성이 물론 없습니다. 문헌검토에서 본 논문들은 지역 혹은 전국을 대표하는 random sample을 이용해 연구합니다. 따라서 sampling error 때문에 표본 특성치에서 차이가 있고 그래서 다양한 결과가 나올 수 있지만, 개별 표본이 혹은 집합적으로 지역 혹은 전국이라는 모집단의 특성과 경향을 보여줍니다. 반면 전-변의 sample은 cherry-picked case로 구성된 표본으로서 표집의 원칙을 공개하지도 않았습니다. 전-변의 sample은 대표성이 없는 부분 사례로서 모집단의 주요특성을 replicate하지 않습니다. 분양가와 재고가간 관계가 불분명한 경우도 두 분이 거론한 표본에서 관찰되어야 합니다. 유감스럽게도 이에 대한 언급이 없습니다. 현재로서는 인과론적 측정이 애초에 있었는지조차 불분명합니다.
다시 말해 두 분의 표본은 모집단의 특성치 추정에 사용할 수 없는 biased sample입니다. 부분 사례는 부분 사례로서 한정적으로 활용되어야 합니다. 사례수가 지나치게 작으니 오히려 질적분석을 해서 유용한 정보를 얻었으면 좋을 뻔 했습니다. 입맛에 맞는다고 마구 가져다 쓰면 안 됩니다.
결과적으로, 전-변은 연구방법론에 있어 학계의 규범과 다른 입장을 보이고 있습니다. 이런 입장이 기초가 되어 다른 견해에 대해서는 공격성을 보이는 일까지 발생했습니다.
공급확대론은 노무현 정부 때 대거 등장한 부동산 시장만능주의자들이 개발하여 줄기차게 주장하던 이론이다. 그들이 이 이론을 주장한 데는 노무현 정부의 부동산 불로소득 환수 정책을 흠집 내려는 의도가 깔려 있었다.
이런 공급부족은 정확히 말하면 초과수요이며, ... 이를 굳이 공급부족이라 부르는 데는 진정한 원인을 감추고 진실을 호도하려는 의도가 깔려 있다고 볼 수밖에 없다. 출처 여기
이런 성향을 지닌 정치세력이 집권하면 사람들이 두려움에 입을 닫습니다. 연구방법론상의 이견 때문에 학문의 자유문제가 정치적 자유문제로까지 비화하고, 민주화 이후 잊고 살던 자유를 다시 생각해야 하는 역사적 퇴보까지 경험하게 됩니다.
우리한테 자유는 현재진행형 명사인 것 같습니다. 그 기저에는
경험명제에서 측정의 역할, 상관성과 인과성의 관계, 선행연구 결과의 해석, 표본과 모집단간 관계와 명제의 일반화 등 주요 이슈에 관하여 입장차이
가 있습니다. 이혁주 교수한테 "노무현 정부의 ... 정책을 흠집 내려는 의도가 깔려" 있었는지, "진실을 호도하려는 의도가 깔려 있[었는지]"는 나중 문제입니다.
두 분은 대답하시지요.
이혁주 드림
<첨부 1> VAR모형을 이용해 분석한 논문을 이용해 <그림 1> 그리는 방법
직선의 방정식은 수식 그대로 그리면 된다. VAR모형에서는 분양가를 외생적으로 변화시키고(충격반응분석) 그 결과 재고가가 증가했다면 <그림 1> 왼쪽 Up 곡선이 되고, 변화가 없었다면 수평선이 된다. 물론 이론상 우하향 곡선도 가능하다(나중에 이론적 분석 결과 봄). 오른쪽 그림도 비슷한 과정을 밟아서 유도한다. 따라서 가격을 규율하는 어떤 기저요인(underlying factor)이 변하면 그 결과 수요/공급곡선이 반응하고 그 market outcome이 그림과 같이 내생변수인 분양가와 재고가의 (+)상관성/(-)상관성/무상관성으로 나타나다. 여기서 기저요인은 외생요인으로서 전강수 교수 논설에 등장하는 투기요인 같은 것이 된다.
최근 문헌검토 결과를 정리하면 이렇습니다.
[기존문헌에서 바라본 공급무익론]
신축 아파트값과 재고 아파트값 사이의 인과관계는 일정하지 않고, 전-변의 공급=가격상승/부작용 시나리오는 feasible scenario 가운데 하나이다.
따라서 일반론으로서 전-변의 공급무익론은 성립하지 않는다.
그리고
분양가-재고가간 인과관계(양/음, 유의/비유의)와 수요곡선의 이동은 별개의 문제
입니다. 즉 분양가-재고가간 관계는 전-변의 가격상승 시나리오뿐 아니라 가격하락 시나리오, 상승-->하락, 하락-->상승, 하락-->상승-->하락-->... 등 어떤 시나리오와도 compatible합니다. 이 점은 뒤에서 다른 이슈를 논하면서 데모해 보입니다.
[기존문헌에서 바라본 공급무익론]을 전-변의 그간 논설에 나타난 연구방법론상의 주요 특징과 결합해 아래와 같이 정리할 수 있습니다.
[기준 1] 경험명제에서 측정의 역할: 측정 경시(無측정)
[기준 2] 상관성과 인과성의 관계: 상관성=인과성
[기준 3] 선행 연구의 해석: 학계의 기존 실증연구 결과 무시/선별적 해석
[기준 4] 표본과 모집단간 관계와 명제의 일반화: 모집단을 편향표본으로 대체하고 모수(=모집단 특성치) 추정하기
다른 말로
[출처 1: 타인연구]를 참고했다고 해도 선별적으로 참고하면서
[출처 2: 추측] Wishful speculation
을 했습니다.
새 기준의 연장선 위에서 이혁주 교수의 견해에 대해 아래와 같이 hostility가 표출되었고요.
이런 공급부족은 정확히 말하면 초과수요이며, ... 이를 굳이 공급부족이라 부르는 데는 진정한 원인을 감추고 진실을 호도하려는 의도가 깔려 있다고 볼 수밖에 없다. 출처 여기
새 기준 하나하나 논문심사 과정에서 저자가 해명해야 할 의문들입니다. 적절히 방어하지 못하면 주장은 근거 없는 것이 되고 개인의견이 됩니다. 그리고 어느 하나라도 적절하게 설명하지 못하면 논문은 게재불가입니다.
어떻게 이해해야 하나요?
이혁주 드림
주말 잘 보내셨습니까? 추석이 왔군요.
지난 주 요약은 예견되었지만 많이 실망스럽습니다. 그런 만큼 다시 찬찬히 살펴보겠습니다.
1. 전-변 논설에 대한 평가결과는 논문심사 기준을 적용한 결과. 토론 배틀, 유튜브 아님.
2. 지난 주 평가결과를 과대평가해서도 과소평가해서도 안됨
-과대평가하면 안 되는 이유...전-변 두 사람의 사례
-과소평가하면 안 되는 이유...수요관리 중심적 부동산대책은 진보의 기본 입장. 전-변사례는 특수사례 이상의 보편성을 지닌 사례.
3. 지난 주 평가결과가 말하지 않는 것...전-변 논설의 진위에 대해 판정한 것이 아님. 논설의 신뢰도가 떨어진다는 것. 논의가 더 필요한 이유.
4. 논설의 Validity vs. legitimacy. 의사결정자/사회운동가의 판단기준은 academic standard와 다름. 두 개념을 구분해야 할 만큼 지금 상황은 puzzling.
Setup
투기억제대책이 정답일 확률 p, 투기억제대책이 오답일 확률 1-p
투기억제대책이 정답일 때 발생하는 편익
=투기억제대책이 오답일 때 지불하는 비용
=x (동일하다고 가정)
결과
투기억제 중심 부동산대책의 기대 순편익(expected net benefit)
= 투기억제대책이 정답일 확률*투기억제대책이 정답일 때 얻는 편익
- 투기억제대책이 오답일 확률*투기억제대책이 오답일 때 지불하는 비용
=px-(1-p)x
=2px-x
=(2p-1)x > 0 if p>1/2
변창흠 교수 曰 [35' 05"] 그 다음에 개발제한구역을 MB정부 때 또 왕창 풀었지 않습니까? 8년에 걸쳐 가지고 개발 제한 어떻게 다 뭐 했는데 그냥 6개월만에 한 방에 풀어버렸습니다. 화끈하게 풀었는데 결국은 그 어마어마한 혼란을 겪었기 때문에 지금 핵심은 고밀로 하든 옆으로 늘리든 공급 확대하는 논리로 가격을 안정시킬 수가 없고 각종 부작용을 낼 수밖에 없다는 겁니다. 근데 지금 와서 이게 다시 가능한가 저는 의심이 들고요.
공급대책의 반복적 실패는 변 교수로 하여금 p>1/2라고 인식하게 만들었을 것. 전 교수도 마찬가지. 따라서 학술적으로는 엉성했어도, 양자간 하나를 선택해야 하는 상황이라면 진화론적 학습과정이 시사하듯 변창흠, 전강수 교수의 선택은 말이 됨. 이것이 후속 논의가 불가피한 이유.
5. 전-변 논설에서 제기된 방법론적 이슈는 모두 측정과 직간접적으로 연관된 것들. 경험과학의 성격에 대한 이해부족, 의욕이 앞선 결론 도출, 엉성한 스칼라십의 산물.
6. 공급=투기/부작용 --> 수요관리 중심 부동산대책의 타당성? Not necessarily. 공급=투기/부작용 --> 공급대책 불용론? Not necessarily. 만성적 공급부족 시장에서도 나타나는 현상. 붉게 달궈진 후라이판에 물 한 숟가락 부으면 난리 남. 공급부족 여부는 theorizing이 필요한 개념. 지금처럼은 아님. 후속 논의가 필요한 이유.
7. 스칼라십을 말해야 하는 희극적 상황도 rationalize해야 하는 현상. 바보들이 아님. 그런데 그랬음. 秀才愚化, 學者의 戰士化. 후속논의가 필요한 이유. 대중의 인지도/정치-사회적 지위-권위와 scientific credibility는 별개. 양자를 분리하려면 academic standard 적용이 불가피.
생각이 다르면 말씀해 주세요. 바로 잡고 진행합니다.
말씀 없으시면 다음 주엔 전-변이 보여준 지식생산과정의 여파에 대해 알아 봅니다.
감사합니다. 이혁주 드림
전강수, 변창흠, 김수현 교수님께
추석 잘 보내셨습니까. 계속합니다.
두 분의 제안은 지식생산과정을 과학계의 통념과 다르게 바꾸자는 주장입니다.
연구설계, 개념화, 자료수집과 분석, 응용, 후속연구 등 지식생산 전(全)주기 각 단계에서 충격이 불가피합니다. 그러면 지식의 소비과정도 변화가 불가피하고, 양자간 상호작용도 과학커뮤니티 일반이 지지하는 가치와 배치되는 방향으로 전개됩니다. 그 현실화 기제로서 정치과정 또한 본질적 변화가 불가피합니다. 두 분이 열 새 세상은 그 산물이 될 테고요. 그 세상이 무언지 이제 알아봅시다.
ChatGPT한테 아래 문항을 순서대로 하나씩 질문해 보세요.
Explain each step of the knowledge production process in the empirical sciences.
Similarly explain each step of the knowledge consumption process.
Explain the interactions between the knowledge production and consumption processes.
Suppose that Mr. J and K reason based on unfounded causality and statitical association rather than causal measurements (Rule JK), that Mr. B proposes a theory without theorizing (Rule B), and that Mr. J and B both equate a biased sample to the population (Rule JB). Do you follow me?
Now, apply the three Rules JK, B, and JB to the interaction processes of knowledge production and consumption. Predict how the interactions might evolve.
Suppose that Mr. J, K, and B teach, study and practice. What would happen?
Explain how the interaction processes of knowledge production and consumption would once again interact with the political process of agenda setting and the real-world policy formulation. Address this question when the political setting is under the strong influence of Rules JK, B, and JB or at least sympathetic to the central motivations of Mr. J, B and K.
Political stakes together with psychological and cognitive scientific factors, among others, could play decisive roles in charting the future course of the feedback between the knowledge and political processes. There is no guarantee of self-correction. Rationality does not necessarily rule; everyone has his/her own perception of rationality. It is not difficult to find rationales that enable one to justify his/her stance and interestes. The academic and political settings are under the strong influence of Rules JK, B, and JB or at least sympathetic to the central motivations of Mr. J, B and K. What should the academia do in this situation?
Your suggestions are a bit naive, because "evidence-based" is frequently replaced with "interest-based" even within academia. So, I am quite pessimistic. Am I too pessimistic?
Rule JK의 존재에 대한 보완 논의는 곧 합니다. Rule B도 Mr. B에게만 나타난게 아니었습니다. 이미 Mr. J에게서 나타난 걸 본 적이 있습니다. 이런 일이 계획계 일반에는 없었는지도 앞으로 확인이 필요한 사항이고요.
두 분은 새 기준에 관해 설명해야 합니다. ChatGPT가 내놓은 답을 어떻게 감당하나요?
이혁주 드림
최근 이혁주 교수가 문제시한 것은 지식생산과정에서 전강수, 변창흠 교수가 보여준 연구방법론상의 여러 가지 문제점이었고 그 기저엔 측정의 유무 문제가 있었습니다. 오늘은 이와 다른 문제 즉 분양가-재고가 문헌을 검토하면서 잠시 주목했던 집행문제에 대해 알아보겠습니다.
두 가격간 인과관계가 있다고 해서 그 관계가 진보의 부동산정책을 지지하는 것도 아니고 보수의 부동산정책을 지지하는 것도 아니라는 점을 실제 자료를 통해 확인하고자 합니다. 집행(implementation)문제는 행정학, 정책학에서 고전적인 주제로 분류됩니다(Pressman and Wildavsky, 1984). 이 주제는 전에 quantity instrument의 일종으로서 토지이용규제라는 정책수단의 선택 문제에서 잠깐 언급한 바 있습니다(Hirte et al., 2021). 진보와 계획가가 공통적으로 올바른 선택이 무엇인지 알고 있다고 믿었는데도 발생한 implementation 문제입니다.
주택가격 결정모형은 아래와 같이 저자마다 다릅니다.
<표 1> 주택가격 결정모형
---------------------------------------------------------------------------------------------------------------------
정권/정책요인 과잉유동성 변수 인과론적 측정에
고려했나? 포함했나? 기초했는가?
---------------------------------------------------------------------------------------------------------------------
김수현 모형 Yes, No Yes 천천히 알아봄
박진백 외(2021) 모형 No No Yes
이혁주 모형 Yes No Yes
---------------------------------------------------------------------------------------------------------------------
주... Yes 모형에 해당 변수 있음, No 모형에 해당 변수 없음. 김수현 모형은 김수현의 한겨레 인터뷰 및 김수현(2023)에서 밝힌 입장. Yes, No 정권초 가격상승에 대해서는 책임 불인정(과잉 유동성), 집권 후반기 가격상승에 대해서는 책임 인정
어떤 방식이건 omitted variable bias가 우려됩니다. 김수현(2023)이 인과론적 측정 없이 기술되었거나 신뢰도가 낮은 연구결과를 토대로 기술된 내용이라면 ghost proposition이고 wishful speculation이 됩니다. 이 부분은 차차 알아봅니다. 마찬가지로 과잉 유동성 변수에 대해 이혁주 모형이 robust하지 않은 것으로 판명된다면 이혁주 교수의 주장은 수정되어야 합니다. 이 부분 역시 천천히 알아봅니다. 정책변수와 과잉유동성 모두 고려하지 않은 박진백 외(2021)은 2가지 변수 생략에서 발생한 편향 때문에 앞으로 인용해서는 안 되는 연구가 됩니다. 정부 연구기관에 있으면서 정부활동의 정당성에 대해 누구보다 인식이 분명할 텐데, 분석모형에서 정책변수를 배제함으로써 정부활동의 정당성을 처음부터 부정한 모형을 이용해 연구했다는 것은 아이러니입니다. 그리고 이들의 논문을 인용해 자신의 입장을 변론한 논설이 있다면, 이런 연구자들의 기술 역시 모두 수정되어야 합니다. 여기서는 당분간 아래와 같이 가정하고 분석합니다.
[모형의 가정] 과잉유동성은 서울 집값에 유의미한 영향을 미치지 않는다.
분석대상 기간: 2009.1~2022.4
<그림 1> 시장변수의 통제가능성: 문재인 정부 사례
<그림 2> 집값 사이에 공존하는 상승과정과 하강과정
<그림 1>은 추정결과입니다. 문재인 정부 기간 집값 추동요인으로 정권변수 Moon을 사용했습니다.
그랜저 인과검정은 결과변수에 대한 원인변수의 설명력을 검정한 것인데, 실선 화살표는 유의, 점선 화살표는 비유의를 뜻합니다. 원인변수가 화살표 시작점에, 결과변수가 화살표 끝 점에 있습니다. (+)는 원인변수가 증가하면 결과변수가 증가한다는 말이고, (-)는 원인변수가 증가할 때 결과변수가 감소한다는 말입니다. 만약 결과변수의 변화가 통계적으로 0과 다르다고 판단되면 별표 **가 붙고(alpha=0.05), 0과 구분이 되지 않으면 별표가 붙지 않습니다. 외생변수의 경우 회귀계수의 t 검정 혹은 회귀계수의 합으로 이뤄진 새로운 확률변수들의 joint significance test를 해서 얻은 p value에 근거해 유의도를 판정했습니다. 빨강 (+) 기호는 문재인 정부 정권변수가 집권 5년간 매달 분양가와 재고가 모두 상승시키는 trigger역할을 했음을 보여줍니다. 이런 충격은 분양가 up --> 재고가 up 기제(빨간색 화살표)에 의해 재고가 상승을 더 부추겼습니다.
빨간색 화살표의 부호가 (+)라는 것은 분양가와 재고가 사이의 관계가 <그림 2>와 같다는 말입니다. 기존 실증연구에서 조사해 보고한 사례 가운데 절반 정도 차지했던 게 바로 이 (+) 사례였고, 여러 사람이 분양가 규제의 근거로 삼았던 그림입니다. 그런데 이 분양가 규제의 근거로 삼았던 바로 그 인과관계가 문재인 정부 시기 부동산대책 실패를 추동했던 기제로 작용했습니다. 즉 분양가-재고가간 (+)의 인과관계가 곧 정부의 시장개입을 정당화하는 것도 아니고, 진보, 보수 특정 지향의 입장을 지지하는 것도 아닙니다. 좀 더 자세히 봅시다.
<그림 1>에 따르면, 문재인 정부 시기 집값의 지속적 상승은 집권 60개월간 매월 아래와 같은 자극과 추동 때문에 발생했습니다.
분양가의 경우...Moon변수의 직접적 자극
재고가의 경우...Moon변수의 직접적 자극 + 분양가를 경유한 Moon변수의 추가적 재고가 추동
박근혜 정권변수를 제하고 나머지 변수들은 전체적으로 탄탄하게 인과관계로 엮여 있습니다. 문재인 정부 시기에 매월 문 정권변수 Moon=+1>0 값을 취하기 때문에 연쇄과정의 시발이 (+)로서 정권요인은 재고가와 분양가 모두를 매월 유의하게 올렸습니다. 물론 이러한 가격상승과정은 김수현 비서관이 기대했던 하강과정과 반대입니다.
그림에서 하늘색 화살표는 실선으로서 재고가가 분양가를 잘 설명한다는 말이고, (+)**/(-)는 처음 몇 달은 그 영향이 유의한 (+)이고 장기적으로는 (-)이지만 감소폭이 작아 0으로 보아도 좋다는 말입니다. cross-section모형과 달리 dynamic모형이라서 변수의 설명력이 두 가지 측면에서 조금 다른 의미를 가집니다. 주의가 필요합니다. 외생변수인 경우 모형에 대한 전반적 설명력은 내생변수에서 그랬던 것처럼 그랜저 인과검정을 해서 판정했고, 영향력의 부호는 회귀계수의 t 검정을 활용했습니다(좀더 자세한 과정은 Lutkepohl(2005: 109-116)을 참고할 것)
문재인 정부 당시 전반적으로 분양가의 상승과정만 존재하고 하강과정은 존재하지 않았습니다. <표 2>에서 1행 "실제 일어난 일"은 상승과정의 결과를 수치로 보여줍니다.
<표 2> 문재인 정부에서 정책변수 통제에 부분성공했을 때 정권변수 Moon의 효과
-----------------------------------------------------------------------------------------------
시나리오 재고가 분양가 가계부채
(포인트) (포인트) (조원)
-----------------------------------------------------------------------------------------------
실제 일어난 일 +28.7 +36.9 +112
-----------------------------------------------------------------------------------------------
가상 시나리오 1 -19.3 +41.2 +15
시나리오 2 -8.1 -76.4 -101
시나리오 3 -1.2 -1.7 -27
---------------------------------------------------------------------------------
계 -28.7 -36.9 -112
-----------------------------------------------------------------------------------------------
주..."실제 일어난 일"은 <첨부 1>에, "가상 시나리오"는 <첨부 2>에 R code 있음. 문재인 정부 5년간 발생한 효과. 최초 충격이 시나리오1, 2, 3에서 각각( -1,0,0), (0,-1,0), (0,0,-1)이고 이 값은 Moon의 회귀계수에 곱해저 방정식체계로 전달됨. <첨부 2> 빨간 글자가 이것. 문 정부 5년간 재고가는 38.4포인트 상승=28.7은 정권요인 + 나머지는 대략 팬데믹 요인.
분양가-재고가간 (+)의 인과관계는 통제하기에 따라 집값 상승의 추동기제가 되기도 하지만 집값 하락의 추동기제가 되기도 하기 때문에 나온 결과입니다. 집값 사이에 존재하는 (+)의 인과관계는 집값의 상승-하락 두 과정과 모두 양립(compatible)하고, 특정 방향의 과정에만 적용되는 배타적 인과성을 지닌 과정이 아닙니다. 따라서 분양가-재고가간 (+)의 인과관계가
(1) 투기억제 중심의 부동산대책을 그 자체 정당화하는 것도 아니고, 공급중심의 부동산대책을 그 자체 정당화하는 것도 아니며,
(2) 투기억제를 통해 분양가를 원하는 만큼, 원하는 방향으로 통제할 수 있다는 것을 그 자체 의미하는 것도 아니고, 주택공급을 통해 분양가를 원하는 만큼, 원하는 방향으로 통제할 수 있다는 것을 그 자체 말하는 것도 아닙니다.
최초 충격을 어떻게 initiate하느냐 그리고 과정을 어떻게 관리하느냐에 따라 결과는 얼마든지 다양하게, 상반되게 나올 수 있습니다.
이제 이 말이 무엇인지 문 정부의 기대대로 하강과정이 실현되었을 때 어떤 일이 벌어졌을지 실험을 통해 더 알아봅시다.
시나리오 1: Moon변수 재고가 통제 성공, Moon변수 분양가/가계부채에 역효과 無(=분양가/가계부채는 과거 추세 지속)
시나리오 2: Moon변수 분양가 통제 성공, Moon변수 재고가/가계부채에 역효과 無(=재고가/가계부채는 과거 추세 지속)
시나리오 3: Moon변수 가계부채 통제 성공, Moon변수 재고가/분양가에 역효과 無(=재고가/분양가는 과거 추세 지속)
<표 1>에 따르면 재고가, 분양가 가운데 어느 하나라도 확실하게 통제할 수 있었다면 적어도 해당 가격을 낮추는 일만은 가능했다는 분석입니다. 물론 재고가의 경우 분양가를 올리는 부작용이 있기는 합니다.주1
<그림 2>에서 본 분양가-재고가간 관계가 <표 2>에서 살펴본 시나리오 3개에서 동일하게 이용되었습니다. 즉 분양가-재고가간 인과관계는 어떤 시나리오와도 compatible합니다. 2주 전에 아래와 같이 말한 바 있습니다. 이번 주 실험결과가 그 증거입니다.
분양가-재고가간 관계는 전-변의 가격상승 시나리오뿐 아니라 가격하락 시나리오, 상승-->하락, 하락-->상승, 하락-->상승-->하락-->... 등 어떤 시나리오와도 compatible합니다. 이 점은 뒤에서 다른 이슈를 논하면서 데모해 보입니다.
지난 몇 주 동안 검토한 결과를 아래와 같이 정리합니다.
연구방법론 관련
(1) 경험명제 수립시 측정의 역할: 측정 경시
(2) 상관성과 인과성의 관계: 상관성=인과성
(3) 선행 실증분석 결과의 해석: 학계의 실증연구 결과 무시/오독
(4) 표본과 모집단간 관계와 명제의 일반화: 모집단을 편향표본으로 대체하고 모수(母數) 추정하기
Transparency: 연구-추론 과정 불투명, Ever replicable???
집행문제: 문재인 정부 시기 분양가와 재고가는 정부의 의도와 정반대 방향으로 변했고, 증가분 '대부분'이 정권요인 때문에 발생했다. (진짜 '대부분'이었는지 예전 R코드를 활용해 직접 확인해 보세요. 연습문제입니다.)
전강수 교수는 문재인 정부의 실패를 예견했던 것 같습니다. 아래는 그 근거입니다.
(이메일 2021.8.19.)
이혁주 교수: 그의 견해는 이 논문의 분석 대상으로서 문재인 정부 부동산정책의 이념적, 정책적 토대가 된다.
전강수 교수: 전혀 동의하지 않습니다. 저는 오래 전부터 문재인 정부 부동산 정책의 기본 방향이 잘못됐음을 지적해 왔습니다.
그렇다면 지금까지 검토한 바 정책집행적 시각에서 보았을 때 전 교수의 처방은 실제로 작동했을까요? 전 교수의 스칼라십을 고려할 때 그의 말을 신뢰하기가 어렵습니다. 이런 시각을 더 확장하여, 유사한 문제가 여러 연구자한테서 반복적으로 등장한다면, 스칼라십은 퍼즐 덩어리 한국의 부동산정책을 이해하는 유용한 주제어가 됩니다.
다음엔 과잉유동성 때문에 2017년에 집값이 높았다는 김수현 비서관의 진단을 검토합니다. 우석훈, 김경민 교수도 언급한 원인으로서 진보 부동산정책의 주요근거가 됩니다. 복잡한 주제인 만큼 신중에 신중을 기해 접근하고 robustness check도 철저히 하겠습니다. 기술적으로는 이혁주 교수의 재고가-가계대출-정권요인 모형이 과잉유동성을 고려한 확장환경에서 survive하느냐입니다. 이 test를 통과하지 못하면 이혁주 교수는 곤란해집니다. 그 반대라면 김수현 교수 포함 진보 쪽이 곤란해집니다.
이후 김수현(2023)에 과잉유동성 원인론을 뒷받침하는 측정이 있는지 확인하고, 이혁주 교수의 과잉유동성 검토결과와 대비해 논의합니다. 그 결과를 토대로 위 파란색 글자로 된 평가가 김 교수의 주장에도 적용되는지 판정합니다. 물론 여기 논의는 주택공급의 과부족 여부와 그 자체 별 관계가 없습니다. 별도 논의가 필요한 주제입니다. 주택공급 과부족 논의가 끝나면 이준구(2023)를 논하고 김수현(2023)도 진보 부동산정책 구제시도의 일종으로서 함께 마저 논의합니다.
지루한 과정이 될 것입니다. 그 정도로 이 바닥이 엉망입니다. 시작도 끝도 잘 보이지 않는... 그러나 한번은 거쳐서 뭐가 문제인지 알기는 해야 하는 그런 여정입니다.
감사합니다. 이혁주 드림
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
Hirte, Georg, Min, Hyuk-Ki, and Rhee, Hyok-Joo, 2022. Regulation versus Taxation: Efficiency of Zoning and Tax Instruments as Anti-Congestion Policies. Journal of Housing Economics 56: 101837.
Pressman, Jeffrey and Wildavsky, Aaron, 1984. Implemenation. 3rd edition. Berkeley, California: University of California Press.
주1...linear system이라 발생하는 현상. 따라서 경로의존성 없음. 1행과 마지막 행은 부호만 다르고 크기는 같다.
주2...Pandemic으로 인해 오른 집값은 재고가의 경우 +12.5포인트, 분양가의 경우 16.4포인트. 계산식은 아래 참고.
endo=cbind(P_old.d,P_new.d,Debt.d)
exo=cbind(Moon,Park,Pandemic)
model=VAR(endo,p=3,exogen=exo)
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
A3=Bcoef(model)[,7:9]
b=Bcoef(model)[,13] # Pandemic 회귀계수 벡터
y=array(0,c(3,50)) #50달이면 충분이 긴 기간. y의 각 element는 빠르게 0으로 수렴.
y[,3]=b # Pandemic=+1이라는 충격. 즉 팬데믹이 1달 지속되었을 때의 효과
for(n in 4:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]+A3%*%y[,n-3]}
#Recursive computation of the impact, Pandemic=+1
sum(y[1,])*26 #1st element of y = P_old.d
[1] 12.51937 #2020.3 이후 임기말까지 26달 동안 재고가 상승분(포인트). 28.7+12.5=41.2>문 정부 기간 오른 재고가 38.3포인트.
sum(y[2,])*26 #2nd element of y = P_new.d
[1] 16.40434 #2020.3 이후 임기말까지 26달 동안 분양가 상승분(포인트)
아래 절차에 따라 <그림 2>을 완성할 수 있다.
자료: 여기
library(vars)
data=read.csv(file.choose(),header=T)
attach(data)
endo=cbind(P_old.d,P_new.d,Debt.d) #P_old.d=재고가, P_new.d=분양가, Debt.d=가계대출, All 1st-differenced to make them stationary.
exo=cbind(Moon,Park,Pandemic) #정권변수 2가지, 팬데믹
model=VAR(endo,p=3,exogen=exo)
Bcoef(model) # 회귀계수 출력
P_old.d.l1 P_new.d.l1 Debt.d.l1 P_old.d.l2 P_new.d.l2
P_old.d 0.6491734 0.02055748 0.07276279 -0.078129856 0.006901362
P_new.d 1.4965667 -0.87426441 2.84245961 -1.368179268 -0.176442468
Debt.d 0.1128272 0.02520935 0.23075970 0.005621657 0.039450398
Debt.d.l2 P_old.d.l3 P_new.d.l3 Debt.d.l3 const
P_old.d 0.08442383 -0.11835978 -0.001084603 0.087401881 -0.1039144
P_new.d -0.16382288 -3.76981575 0.243611230 0.241676340 -0.8785450
Debt.d -0.02919534 0.01474976 0.025782526 0.003224293 0.2268454
Moon Park Pandemic
P_old.d 0.20025930 0.03581195 0.19875557
P_new.d 2.30940519 0.10375633 2.31898590
Debt.d 0.02996005 0.17045070 0.03530632
# Granger causality tests
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 0,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.0015 유의, Moon --> 재고가 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # Moon to P_new.d
1,1,1, 1,1,1, 1,1,1, 1, 0,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.0027 유의, Moon --> 분양가 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # Moon to Debt.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 0,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.70, Moon --> Debt.d (X)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,0,1, # Park to P_old.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.48 Park --> 재고가 (X)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # Park to P_new.d
1,1,1, 1,1,1, 1,1,1, 1, 1,0,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.87 Park --> 분양가 (X)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # Park to Debt.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,0,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.01 Park --> Debt.d (O)
constraint=matrix(c(1,0,1, 1,0,1, 1,0,1, 1, 1,1,1, # P_new.d to P_old.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,3)
p_value # 0.001, 분양가 --> 재고가 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # P_new.d to Debt.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,0,1, 1,0,1, 1,0,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,3)
p_value # 0.03, 분양가 --> 가계대출 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # P_old.d to P_new.d.
0,1,1, 0,1,1, 0,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,3)
p_value # 1.18e-6, 재고가 --> 분양가 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # P_old.d to Debt.d.
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
0,1,1, 0,1,1, 0,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,3)
p_value # 0.55, 재고가 --> 가계대출 (X)
constraint=matrix(c(1,1,0, 1,1,0, 1,1,0, 1, 1,1,1, # Debt.d to P_old.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,3)
p_value # 0.066, 가계대출 --> 재고가 (?)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # Debt.d to P_new.d
1,1,0, 1,1,0, 1,1,0, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,3)
p_value # 0.002, 가계대출 --> 분양가 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,0, # Pandemic to P_old.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.006, 팬데믹 --> 재고가 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # Pandemic to P_new.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,0,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.009, 팬데믹 --> 재고가 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # Pandemic to Debt.d
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,0),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,1)
p_value # 0.70, 팬데믹 --> 가계대출 (X)
constraint=matrix(c(1,1,0, 1,1,0, 1,1,0, 1, 1,1,1, # 가계대출 --> (분양가, 재고가)
1,1,0, 1,1,0, 1,1,0, 1, 1,1,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,6)
p_value # 0.006, 가계대출 --> (분양가, 재고가) (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,1,1, # (분양가, 재고가) --> 가계대출
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1,
0,0,1, 0,0,1, 0,0,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge (2010: 481)
p_value=1-pchisq(chi2,6)
p_value # 0.0002, (분양가, 재고가) --> 가계대출 (O)
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1, 1, 1,0,1, # Park -- > (분양가, 재고가)
1,1,1, 1,1,1, 1,1,1, 1, 1,0,1,
1,1,1, 1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint)
chi2=2*(logLik(model)-logLik(R_model)) # Wooldridge(2010: 481)
p_value=1-pchisq(chi2,2)
p_value # 0.80, Park -- > (분양가, 재고가) (X)
<그림 A1> 정권 더미변수와 집값, 가계부채간 인과관계
유의 유의
Moon -----> 집값 <----> 가계부채
| ↑
└-----------------------------┘
비유의
다음 단계에서는 한 내생변수가 다른 내생변수를 증가 혹은 감소시키는지 조사해서 그 결과를 위 그림에 반영한다. 아래는 위 그림 왼쪽에 대해 시행할 때 사용한 명령어.
irf(model,n.ahead=48,cumulative=TRUE)
이 출력물을 활용해 위 왼쪽 그림을 아래와 같이 수정.
다음 단계에서는 외생변수가 변했을 때 내생변수가 증가 혹은 감소했는지 검사. 아래 명령어 이용. 앞서 밟았던 절차 뒤에 아래 명령어 입력.
Bcoef(model)
P_old.d.l1 P_new.d.l1 Debt.d.l1 P_old.d.l2 P_new.d.l2 Debt.d.l2
P_old.d 0.6491734 0.02055748 0.07276279 -0.078129856 0.006901362 0.08442383
P_new.d 1.4965667 -0.87426441 2.84245961 -1.368179268 -0.176442468 -0.16382288
Debt.d 0.1128272 0.02520935 0.23075970 0.005621657 0.039450398 -0.02919534
P_old.d.l3 P_new.d.l3 Debt.d.l3 const Moon Park
P_old.d -0.11835978 -0.001084603 0.087401881 -0.1039144 0.20025930 0.03581195
P_new.d -3.76981575 0.243611230 0.241676340 -0.8785450 2.30940519 0.10375633
Debt.d 0.01474976 0.025782526 0.003224293 0.2268454 0.02996005 0.17045070
Pandemic
P_old.d 0.19875557
P_new.d 2.31898590
Debt.d 0.03530632
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
A3=Bcoef(model)[,7:9]
b=Bcoef(model)[,11]
y=array(0,c(3,50))
y[,3]=b #Moon=+1의 충격
for(n in 4:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]+A3%*%y[,n-3]}
sum(y[1,])
[1] 0.479563 #Moon=+1은 재고가격 +.47p 상승시킴. 60개월이면 60*.47=28.7p
sum(y[2,])
[1] 0.615299 #Moon=+1은 분양가격 .61p 상승시킴. 60개월이면 60*.61=36.9p.
sum(y[3,])
[1] 0.1879951 #Moon=+1은 가계대출 1.8조원 증가시킴. 60개월이면 60*1.8조=112.2조원 up.
y=array(0,c(3,50))
y[,3]=Bcoef(model)[,12] #Park=+1의 충격
for(n in 4:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]+A3%*%y[,n-3]}
sum(y[1,])
[1] 0.1849168 #Park=+1은 재고가격 +.18p 상승시킴. 60개월이면 60*.18=11.1p
sum(y[2,])
[1] 0.09956004 #Park=+1은 분양가격 .09p 상승시킴. 60개월이면 60*.09=5.9p.
sum(y[3,])
[1] 0.2566402 #Park=+1은 가계대출 2.5조원 증가시킴. 60개월이면 60*2.5조=153.6조원 up.
이 결과를 반영해 아래 본문 <그림 1> 완성.
<첨부 2> 정책수단의 부분적 통제 성공시 예상되는 효과
위 절차에 이어 아래 코드 실행하면 됨.
# 실제 벌어진 일
y=array(0,c(3,50))
y[,3]=b
for(n in 4:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]+A3%*%y[,n-3]}
sum(y[1,])*60 # +28.7포인트(up)
sum(y[2,])*60 # +36.9포인트(up)
sum(y[3,])*60 # +11.2 (112조원, up)
#시나리오 1: 재고가 통제 성공, 분양가/가계부채에 역효과 無
y=array(0,c(3,50))
y[1,3]=-b[1] # 재고가에 대한 1 round 충격을 -b[1]=-0.20으로 설정
for(n in 4:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]+A3%*%y[,n-3]}
sum(y[1,])*60 # -19.3포인트(down)
sum(y[2,])*60 # +41.2포인트(up)
sum(y[3,])*60 # +1.45 (14.5조원, up)
#시나리오 2: 분양가 통제 성공, 재고가/가계부채에 역효과 無
y=array(0,c(3,50))
y[2,3]=-b[2] # 분양가에 대한 1 round 충격을 -b[2]=-2.30으로 설정
for(n in 4:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]+A3%*%y[,n-3]}
sum(y[1,])*60 # -8.1포인트(down). 문재인 정부 5년은 60달.
sum(y[2,])*60 # -76.4포인트(down)
sum(y[3,])*60 # -10.06 (100.6조원, down)
#시나리오 3: 가계부채 통제 성공, 재고가/분양가에 역효과 無
y=array(0,c(3,50))
y[3,3]=-b[3] # 가계부채에 대한 1 round 충격을 -b[3]=-0.029로 설정
for(n in 4:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]+A3%*%y[,n-3]}
sum(y[1,])*60 # -1.2포인트(down)
sum(y[2,])*60 # -1.7포인트(down)
sum(y[3,])*60 # -2.67 (26.7조원, down)
<그림> 충격반응분석
안녕하세요. 이혁주 교수입니다.
김수현(2023)에서 언급한 과잉유동성 원인론을 중심으로 문헌검토와 통계분석을 실시하고 있습니다. 해외요인 포함 종래의 거시경제변수(conventional model)를 중심으로 설정한 통계모형과 김 교수가 제기한 과잉유동성을 중심으로 변수를 구성한 통계모형 등 두 가지를 검토 중입니다. 국내외 자료원을 활용하고 있는데 자료의 관측주기(월간 vs 분기)가 일치하지 않아 통계이론적 보완논의가 필요한 부분도 있어서 실제 검토작업은 순탄하지 않습니다. 정리가 되는 대로 여기 올리고 김수현(2023) 읽기에 활용하겠습니다. 저도 아직은 일별(一瞥)한 수준입니다.
김수현(2023) 읽기를 하기 전에 본래 계획에 있던 박진백 외(2021)를 마저 검토합니다. 이 논문은 김수현(2023)에서도 중요하게 인용되는 논문입니다. 이전에 검토한 바에 따르면 박진백 외(2021)는 정부요인을 생략하고 분석함에 따라 누락변수로 인한 편향 가능성이 있다고 했습니다. 또 다른 의문은 이자율 변수였는데, 이전 검토에 따르면 이혁주 교수가 마련한 자료에서는 이자율 변수의 유의도는 확인할 수 없었습니다.
오늘은 다른 문제에 대해 알아봅니다. 이자율이 집값에 미친 영향의 구조전환 여부를 판단할 때 이용한 모형과 변수들의 영향력을 판단할 때 이용한 모형이 다릅니다.
<표 1> 박진백 외(2021)에서 사용한 분석모형의 비일관성 문제
------------------------------------------------------------------------------------------------------------------
이자율 영향의 구조전환 판단 변수들의 영향력 판단
------------------------------------------------------------------------------------------------------------------
박진백 외(2021) Single equation model VAR model
최선 모형 VAR model VAR model
논문의 관련 내용 <그림 3>, <표 3> <표 6> ~ <표 8>
------------------------------------------------------------------------------------------------------------------
부연하면, 이자율의 영향력이 특정 시기 전후로 변화했는지 그 여부를 판단할 때는 panel 회귀식(single equation model)을 이용했지만, 이자율이 주택가격 변동성에 미친 영향을 측정할 때는 VAR모형(multiple equation model)을 이용했습니다. 논문에서는 관련해 설명을 찾을 수 없습니다.
single piece로서 논문내 presentation의 일관성은 논문의 질을 결정하는 중요요소입니다. 일관성 유지에 실패하게 되면서, 필요에 따라 모형을 선별적으로 적용하고 원하는 분석결과를 선택한 것은 아닌지 독자의 의심을 자초했습니다. 전에도 이런 장면이 있었습니다. 정부요인을 설명변수에서 배제하고 모형을 설정한 것이 바로 그것이었지요.
설명이 필요합니다.
감사합니다. 이혁주 드림
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
박진백, 이태리, 오민준, 2021. 금리의 주택가격 상승 기여도 추정. 주택연구, 29(4): 75∼100.
박진백, 이태리 박사님께
정부요인을 모형에서 배제하고 얻은 분석결과를 이용해 문재인 정부를 면책한 것은 자기모순입니다. 그러나 주택가격 분석 논문 중에는 정부요인을 배제하고 수행한 연구도 많아서, 두 분의 변수선정이 이해가 되기도 합니다.
또한 누락변수로 인한 편향 가능성이 존재한다고 해서 추정한 값들이 곧 편향되었다고 단정할 수는 없습니다. 이자율과 정부요인 간 상관계수가 낮다면, 이자율처럼 남아 있는 변수의 회귀계수에서 왜곡이 일어나도 실제로는 심각하지 않을 수 있습니다.
그러나 박진백 외(2021)에서 모형의 일관된 적용이 가능함에도 적절한 설명 없이 모형을 switch한 것은 성격이 다릅니다. 이런 건 용역보고서, 전강수식 논법, TV 토론, 개싸움, 아마추어의 연구조작에서나 보는 것들입니다. 공통점은 갖다 쓰지 못할 이유가 없다면 갖다 쓴다. 이쁘면 더 좋고. 두 모형을 섞어 썼던 곳은 민감도 분석 절이 아니고 논문의 main body쪽이었습니다.
왜 switch했나요?
이혁주 드림
박진백, 이태리, 오민준, 2021. 금리의 주택가격 상승 기여도 추정. 주택연구, 29(4): 75∼100.
박진백, 이태리 박사님께
박진백 외(2021)은 (1)이자율의 영향이 일정 시점 앞뒤로 변했고, (2)그 결과 집값의 변동 패턴이 어떻게 변했는지 측정해 보여줍니다. (1)은 (2)를 설명하고, (2)는 (1)에 내용을 채워줍니다. (1), (2)는 일체입니다.
이 일체성을 유지하려면 논문 시작부터 끝까지 (1), (2)에 사용한 모형을 일관되게 적용해야 합니다. 적용 모형을 바꾸는 경우는 민감도 분석, 강건성(robustness) 체크할 때뿐입니다.
적용 모형의 일관성을 유지하면서 저자들의 주장을 관철할 수 있는 방법은 (1), (2)를 검토할 때 사용한 모형 가운데 어느 하나만 이용하는 것입니다. 추가적으로 다른 모형을 이용해 강건성 체크까지 하면 금상첨화이고요. 이게 얼마나 간단한 일인지 논문에 없으니 알아봅시다.
방식 1
첫 번째 방식은 논문 전반부에서 사용했던 single equation을 이용해서 VAR모형을 이용해 생성했던 <표 6> ~ <표 8>을 대체하는 겁니다. 이렇게요.
모형: Price(t,r) = (a1+a2*tau(t))*r(t)+다른 변수
Price(t,r) 주택가격, r(t) 이자율, tau(t)=0 if t<2019.7, 1 otherwise, r 지역
결과물:
<표 1> Price(t,r) schedules with and without the structural break dummy (unit: point)
------------------------------------------------------------------------------------------------------------------------
월 2017.5 ...... 2018.1 .... 2019.1 ..... 2020.12
------------------------------------------------------------------------------------------------------------------------
실제 주택가격 지수 x x x x
이자율의 영향을 제거한 가격지수 x x x x
------------------------------------------------------------------------------------------------------------------------
이자율의 영향 x x x x x
------------------------------------------------------------------------------------------------------------------------
이렇게 할 때 효과는 (1) 프리젠테이션의 일관성 유지, (2) 이자율의 영향을 직접 측정해 제시, (2) esoteric한 FEVD와 달리 뛰어난 가독성 등 3가지입니다. 이미 실현된 자료를 이용해 영향력을 평가하기 때문에 forecast value를 대상으로 분산분해하는 데서 오는 어색함도 없습니다.
저자들은 <표 1>을 제시하는 대신 계수 a1, a2를 논문에 제시해도 좋을 뻔 했습니다. a1+a2*tau(t)는 초등학교 5, 6학년 학생도 아는 산수입니다.
[질문 1] 왜 어느 것도 하지 않았나요?
방식 2
또 다른 방식은 논문 후반부에서 사용한 VAR모형을 처음부터 이용하는 것입니다. 사람들이 single equation 대신 VAR모형을 쓰는 이유는 변수간 상호작용을 고려해서 경제변수 간 관계를 따져보아야 한다는 문제의식에서였습니다. 두 분이 VAR모형을 썼다는 것은 그런 취지에 동의했다는 말이고요.
따라서 모형을 중간에 switch했다면, 관심변수인 이자율의 통계적 유의성을 검정한 후에 FEVD가 있어야 했습니다. 그런데 이 과정이 논문에 없습니다.
[질문 2] VAR모형에서 이자율의 설명력 검정은 왜 하지 않았나요? <표 6> ~ <표 8>을 신뢰해도 좋은지 어떻게 아나요?
종합하면, 문재인 정부 기간을 분석대상으로 하면서
(1)정부요인이 누락된 모형을 이용해 얻은 분설결과에 근거해 문 정부를 면책하는 데 그치지 않고,
(2)그렇게 꾸민 누락변수 모형(omitted variable model)에서조차 자의적으로 적용모형을 논문 중간에 바꾸고,
(3)또 그렇게 바꾼 누락변수 모형에서는 통계적 검증이라는 표준절차를 따르지 않았습니다.
최선 모형은 논문 후반부에서 쓴 VAR모형입니다. 저자들도 이 사실을 잘 알고 있을 것입니다. 이 모형을 이용해 structural break도 검정할 수 있고 또 그렇게 검정한 후 이자율의 영향을 esoteric한 FEVD 대신 여기 주택논쟁에서 보듯 충격반응을 분석하면, 누락변수 문제를 제외하고 모든 문제가 깔끔하게 정리됩니다.
주... 위 아래 곡선은 90% 신뢰구간. x축은 경과한 달 수.
<그림 1> 외국자본의 유입(capital inflow)이 한국의 주택가격에 미친 영향
한편, VAR모형에서 인과검정을 사전에 하지 않을 때, 다른 논문의 저자들은 다른 방식으로 통계적 유의도를 파악할 수 있도록 조치합니다. <그림 1>은 Kim and Yang(2009)에 나오는 그림인데, Kim and Yang은 충격반응 분석 그림에 신뢰구간을 표시해서 독자들이 통계치의 유의도를 알 수 있도록 했습니다.
[질문 3] 이런 여러 가지 장점에도 불구하고 충격반응 분석 대신 FEVD를 한 이유가 무엇인가요?
이혁주 드림
박진백, 이태리, 오민준, 2021. 금리의 주택가격 상승 기여도 추정. 주택연구, 29(4): 75∼100.
Kim, Soyoung and Yang, Doo Yong, 2009. Do Capital Inflows Matter to Asset Prices? The Case of Korea. Asian Economic Journal, 23(3): 232-348.
박진백, 이태리 박사님께
새해가 밝았군요. 우리 모두 자신에게 더 엄격한 한 해가 되기를 바라면서 계속하겠습니다.
박진백 외(2021)에 대해 두 분이 설명하셔야 할 이유는 많습니다.
(1) FEV를 분해하기에 앞서 이자율 변수의 설명력 검증이 없었다면, 논문의 뒤쪽 절반이 근거 없는게 되어 날라갑니다. 마찬가지로 모형의 switch 의문에 대해 적절하게 답하지 못하면 논문의 앞과 뒤가 날라갑니다. 앞과 뒤는 논문 모두입니다. 정부요인이 누락된 모형을 사용했다는 비판에 더해 이들 새 비판은 두 분이 쓴 논문 전체를 junk로 만들만한 문제점들입니다. 그러면 박진백 외(2021)의 진보 부동산정책 구제시도는 실패한 것이 되고, 김수현(2023)의 해당 인용도 삭제되어야 합니다. 전강수, 김경민, 변창흠 교수 포함 진보 지향 학자들 논설의 문제점은 이미 살펴보았습니다. 이 가운데 방법론적 문제점은 심각해서, 사회과학적 명제로서 지위 상실을 확인했습니다. 박진백 외(2021)은 문재인 정부 부동산정책의 타당성을 보여줄 희소한 측정논문입니다.
(2) 두 분의 연구결과물은 정부가 정책을 수립-평가하고, 우리 사회가 부동산 현상을 이해하는 지남철이 됩니다. 김수현(2023)에서 인용한 것은 사례 하나에 불과합니다. 김수현(2023)은 문재인 전 대통령이 언급했고, 이는 implicit endorsement로 해석되어 또 다른 인용을 낳고 거대한 믿음의 체계를 만들어 내면서 과학명제의 교조화가 진행됩니다. 지난 정부의 부동산정책이 과거부터 진행되어 왔던 교조화의 산물인 것 같고, 전강수, 김경민, 박은철 박사의 반응에서도 그런 느낌을 받았습니다. 사회과학적 명제가 탈과학화 과정에 진입하는 것은 'by definition' 성립하지 않습니다. 그리고 위험합니다. 일부지만 종교 교리와 연결하는 사람도 있어서 더욱 그렇습니다.
(3) 행정에서 정치적 중립성은 중요한 가치입니다. 이 가치를 지키지 않을 때는 상당한 이유가 있어야 합니다. 오비이락(烏飛梨落), 기억하실 겁니다. 지난 대선(大選) 석 달 전 12월 하순 신문에 난 논문인용 기사. 두 분은 academic integrity를 너머 위험한 정치적 영향력 행사까지 의도했다는 의구심까지 낳았습니다. academics와 politics 경계선 좌우를 오가면서. 기자(記者)와 '주택연구' 편집위원회에 책임 일부를 전가하면서... 그런 기사의 근거논문이 이번엔 김수현(2023)에 인용이 되었고요. 연구자 양심에 따라 한 거라면, 정말 어려운 일을 한 것이 됩니다. 이미 누적관객 1200만을 넘은 영화 '서울의 봄'에서 보기 원했던... 그게 안돼서 무너졌다는게 영화의 스토리고, 두 분은 그 시사에 반하는 선택을 실천한 것이 됩니다.
두 분에게만 검증을 요구하지 않을 겁니다. 이혁주 모형에 대해서는 두 분한테 하는 것 이상으로 엄격하게 검증하고 공개합니다. 그렇다고 예상가능한 모든 질문에 대해 이미 유리한 답을 가지고 있어서 그렇게 하는게 아닙니다. 현재 쓰고 있는 논문은 진행형이고 아직 추가 검증되지 않은 것도 많습니다. 위험에 노출되기는 두 분이나 이혁주 교수나 차이가 없습니다.
지난 주 박진백 외(2021)의 문제점 3가지를 지적했는데, 이 가운데 3번째 포인트 즉 누락변수 모형에서 이자율의 설명력 검증이 '없었다'는 점은 이혁주 교수의 주장일 뿐입니다. 이 추측에 대해 답하셔야 합니다. 답하지 않으시면 이혁주 교수가 그 발언에 책임을 져야 하는 후속 설명을 어쩔 수 없이 해야 합니다. 그러면 얘기가 또 늘어집니다.
답하시지요.
이혁주 드림
박진백, 이태리 박사님께
두 분이 침묵하시니 제가 얘기를 풀어보겠습니다.
두 분이 좋은 분석을 할 수 없었던 것은 그런 통계모형을 추정할 만한 역량이 없어서였던 것 같습니다. 전강수, 김경민, 박은철 박사도 비슷한 경우입니다. 예전에 박은철 박사와 한 차례 통화할 때도 비슷한 느낌을 받았습니다. 절벽에 대고 말하는 기분이었습니다. 학력(學力)이라는 주제어로 우리 자신을 객관화하는 일을 지금부터 해보겠습니다. 한국의 부동산 문제와 진보 주요 proponent의 학력 문제를 결합해 살펴보면 puzzle 풀이에 도움이 좀 됩니다.
<그림 1> structural break 더미를 포함한 회귀식
위 그림은 박진백 외(2021)의 일부인데, 그림의 δ를 포함해 VAR모형을 세우고 추정한 후 δ가 유의한지 검증하면 될 일이었습니다. 그런데 이 과정이 순탄하지 않았던 것 같습니다. 우선 어떻게 VAR모형에서 δ의 유의도를 검정할 수 있는지 <그림 1> 수식과 비슷한 모양을 하면서 구조가 간단한 VAR모형을 이용해 알아보겠습니다.
1단계 Unrestricted model 추정...y(t)를 내생변수 벡터, x(t)를 외생변수 및 식(1) 상호작용항 δ*r(t)을 포함한 변수 벡터, 그 계수벡터를 b라고 할 때, VAR(1)의 경우 다음과 같은 수식을 꾸밀 수 있음.
y(t)=c+A*y(t-1)+b*x(t)+e(t). (식1)
e(t)는 오차항 벡터, c는 절편 벡터.
2단계 restricted 모형 추정...Price equation에서 δ를 포함한 회귀계수를 0으로 놓은 restricted model을 추정
3단계...unrestricted model과 restricted model의 로그 우도를 이용해 chi square통계치를 계산하고 자유도 1에서 검정.
저자들은 1단계 작업부터 막혔던 것 같습니다. 왜냐하면 전에 지나가는 말로 언급했듯이 (식1)에서 x(t)는 내생변수 y(t)로 분류되는 이자율 항을 포함하고 있어서 형식상 (식1)은 외생변수 VAR모형로 분류되지만, 그렇다고 외생변수 VAR도 아닙니다. 시중 판매중인 소프트웨어 가운데 이런 VAR모형을 ready menu로 제공하는 패키지 프로그램이 없는 것으로 알고 있습니다.
이 경우 통계학 비전공자로서 (식1)을 추정하고 검증하려면 평소 미련스러운 짓을 할수밖에 없는데 저자들에게 이런 시간이 부족했던 것 같습니다. 그 근거는 <그림 1>인데, 그림에서 (τ≤t)를 indicator함수로 썼습니다만 수학책, 공학도들이 자주 접하는 교재에는 등장하지 않는 어색한 표현입니다. 물론 어떤 기호도 정의하고 쓰는 것이 불가능하지는 않지만. 박진백 외(2021)가 수학적 논문은 아니지만 자기완결적인 표현을 쓰는 것이 관행이고 좋은 습관입니다.
1단계부터 막히면 이후 작업은 당연히 수행이 불가합니다. 이때 의욕 충만 저자들은 말하고 싶은 스토리에 맞춤형으로 모형을 따로따로 선정해 답할 수밖에 없었을 것입니다.
그런데 여기서 또 의문이 생기는군요. 저자들의 모형은 (식1)입니다. 그렇다면 fevd도 이 모형을 이용해야 합니다. 그런데 이자율이 형식상 외생변수 x(t)에 포함되어 있으면 이자율 변수에 가해진 충격을 미래로 연장하면서 계수행렬 A만 이용하고 b는 이용하지 않습니다. R에서 fevd명령어를 실행해보아도 금방 확인할 수 있습니다. <그림 2>는 R 출력인데 외생변수 Pandemic으로 attribute하는 column이 없습니다.
<그림 2> FEVD R 출력물
저자들은 컴퓨터 시켜서 그냥 fevd분석한 걸로 보입니다. 그러면 y(t)=c+A*y(t-1)+b*x(t)+e(t) 대신 y(t)=c+A*y(t-1)+e(t)를 이용한게 됩니다. 온통 뒤죽박죽이 됩니다. 관련 내용은 중요한 내용인데 아무런 언급 없이 지나간 걸로 봐서 이런 중요한 차이가 어떤 의미를 가지는지 인식하지 못했던 것 같습니다. 맞나요?
대답이 없으시면 해당 분석을 하는데 필요했던 기술이 무엇이었는지, 그래서 왜 논문을 비비틀어 쓸 수밖에 없었는지 알아보겠습니다.
이혁주 드림
박진백, 이태리, 김수현 박사님은 보시지요.
지난 주에 보았던 수식 y(t)=c+A*y(t-1)+b*x(t)+e(t)을 추정하려면 VAR교재를 봐야 합니다. 그러자면 보통의 계량경제학 교과서, 소프트웨어 매뉴얼, 유튜브 안내 영상으로는 안되고, VAR모형을 전문적으로 다룬 교과서가 필요한데 그 교재가 바로 Lutkepohl(2005)입니다. 다른 통계학 교과서들이 VAR모형을 조금씩 다루지만 부족해서 결국 이 교재와 씨름해야 합니다. 그런데 이 책은 수학책입니다.
그런데 1장 몇 쪽 넘기면서부터 마음에 들지 않습니다.
<그림 1> Lutkepohl(2005) p.13
이건 독자가 원하는게 아닌 것 같은데... 그런데 그 다음 쪽에 보면 이런 것도 있습니다.
<그림 2> Lutkepohl(2005) p.14
회귀식 얘기하는데 eigenvalue는 뭐고 modulus는 뭔가요. 존재하면 그냥 존재하는거지 mean square로 존재한다는 건 또 뭔가요. 그러나 이런 장면이 계속 이어집니다. 이런 것도 있습니다. 가우시안 분포, variance-covariance matrix, stable process, absolutely summable, ....
<그림 3> Lutkepohl(2005) p.18
<그림 2>, <그림 3>과 같은 수식은 보통의 독자가 원하는 것이 아닙니다. 왜냐하면 입에 쏙 들어가는 답이 필요한 것이지 이상한 기호와 용어로 가득찬 수학적 논의가 필요한 것이 아니기 때문입니다. 이런 것 읽는다고 딱히 도움을 받을 수 있는지도 불분명하고요.
여기서 독자의 선택지는 3가지입니다. 읽기를 포기하거나, 그냥 직진해서 페이지를 넘기거나, 아니면 기초부터 공부하고 다시 도전하는 겁니다.
그냥 직진해야 더 미궁으로 빠지고 소득이 없으니 직진은 방법이 아닙니다. 대신 읽기를 포기하면 기성 소프트웨어가 제공하는 메뉴의 꾹꾹이가 됩니다. 전문가가 학부생이 되는 순간입니다. 남들은 날 전문가 대접하는데, 그런 내가 실은 학부생이 되는 순간입니다. 앞으로 포커 페이스도 해야 하는 고민 추가입니다.
그런데 정공법도 쉬운 길은 아닙니다. 확률론, 통계학 교재뿐 아니라 최소한 수학전공자 학부 일반 교재 수준의 heavy mathematics를 다루어야 합니다. 젊어서나 할 일이지 학교 밖으로 나와서까지 할 일은 아닙니다. 시간도 시간이고 그렇게 공부한다고 반드시 보상이 주어지는 것도 아닙니다. 전문가라면 반드시 어떤 식으로든 결판을 내야 하긴 해도.
이것저것 이런저런 사정으로 피하고 어찌어찌 해서 용기를 내어 다시 Lutkepohl을 본다고 합시다. 주어진 문제에 답하려면 Lutkepohl 10장까지 읽어야 하는데 중간에 이를테면 <그림 4>와 같은 돌멩이에 걸립니다.
<그림 4> Lutkepohl(2005) 74쪽
Theorem 내용만 취한다고 해도, (T^0.5)(b^-b)=...라는 결과물은 아주 중요한 식 같은데, 통계학적 기초가 부족해 간단한 변환조차 못해서 이 theorem을 어떻게 이용해야 할 지 감이 잡히지 않습니다.
이것이 박진백 외(2021) 같은 불량품이 나온 배경입니다. integrity 문제가 심각하지만, 이런 저간의 사정을 알고 보면 마냥 저자들을 탓하기도 그렇습니다.
이런 이유 때문에 처음부터 작정하고 엉터리 글을 썼을 것이라고 저자들을 비난하는 건 좀 아닌 것 같습니다. 유사 사례를 전강수 교수 오마이뉴스 논설에서도 보았는데, 무지가 아니면 설명하기 힘든 행동을 했습니다.
따라서 '기술적'으로 문제가 있는 statement 혹은 proposition을 거리낌 없이 내뱉는 것이 이념적 지향이 달라 발생했다고 보는 건 피상적 이해방식이 됩니다. 부동산문제가 지나치게 정치화되었다는 비판이 있지만, 그 기저에 이념적 지향 그 이상이 있습니다. 지금 그 켜(layer) 하나를 보았습니다.
두 분은 반론하시지요. 그리고 김수현 교수님도 이의 있으면 말씀하세요.
말씀 없으시면, 다음 주에는 더 한심한 걸 보겠습니다. 오늘 건(件)은 어렵기라도 했습니다.
감사합니다.
이혁주 드림
박은철, 전강수, 김경민 박사님은 보시지요.
지난 주에 박진백 외(2021)와 학력(學力) 사이에 의미 있는 관계가 있음을 확인했습니다. 저자들의 정책관은 학력의 직접적 산물입니다. 본인들이 말하기 전까지 진실은 미궁이어도 지금까지 검토한 결과, 그리고 논문에 나타난 저자들의 학력 단서를 보건대, 통계 검정을 하고 싶어도 못했던 것 같습니다.
이상 검토결과를 토대로 박진백 외(2021)에 대해 아래와 같이 평가하겠습니다.
(1)정부요인이 누락된 모형을 이용해 얻은 분설결과에 근거해 문 정부를 면책하는 데 그치지 않고,
(2)그렇게 꾸민 누락변수 모형(omitted variable model)에서조차 자의적으로 적용모형을 논문 중간에 바꾸고,
(3)또 그렇게 바꾼 누락변수 VAR모형에서는 이자율 변수에 대해 통계적 검증이라는 표준절차를 따르지 않았다.
이 결과를 토대로 김수현(2023)에 인용된 박진백 외(2021)에 대해 아래와 같이 평가합니다.
김수현(2023)에 인용한 박진백 외(2021)의 내용은 아래 <그림 1>과 같이 삭제되어야 한다.
김수현 박사님은 이의 있으면 말씀하세요.
<그림 1> 김수현(2023: 99)이 박진백 외(2021)를 인용한 부분
오늘은 전강수, 김경민, 박은철 박사의 학력(學力)에 대해서 알아봅니다. 전강수, 김경민 박사의 헛발질은 이미 여러 차례 말씀 드렸습니다. 박은철 박사는 여기 이메일을 처음 전달 받고 그 다음 주인가 이혁주 박사 연구실로 전화가 와서 처음 통화했습니다.
서울연구원에서 주택분야를 "20년" 이상 연구하면서 자신의 보고서에 "다 있다"고 했습니다. 이혁주 박사의 논설에 대한 반론으로 한 말입니다. 연구실로 직접 전화할 정도라면, 아래 이 박사 연구 프로필을 보았을 것입니다.
<그림 2> 서울과학기술대학교 행정학과 홈페이지 이혁주 교수 연구실적 캡처
뿐만 아니라 그 전 이메일도 한번 살펴보았을 것입니다. 아래는 여기 주택논쟁 2022.1.10 이메일입니다.
*전강수, 남기업 박사 등 토지자유연구소 연구원 및 이재명 캠프 정책참모용
질문3...서울 아파트에서 밀도규제는 구속적이고 따라서 아파트 공급비용(resource cost)에서 토지비용은 제외된다. 이때 어림 계산으로 서울 아파트값 가운데 SMC(social marginal cost)는 30% 정도이고 나머지는 가상의 비용(fictitious social marginal cost)이 된다. 이 말은 서울 아파트값에서 가상의 비용÷아파트값=0.7 즉 ‘주택보유/소비억제세’가 집값의 70% 정도 된다는 말이다. 이 세금은 과밀혼잡, 투기억제, 국토균형발전을 위해 계획가가 지난 수십년간 부과해온 것이다. 이재명 캠프는 여기서 더 나아가 국토보유세/기본소득토지세 등 세금을 더 부과해야 한다고 주장한다. 설명하라. 진보계열은 세율 측면에서 주택을 담배(세율 70%)와 같은 demerit good 취급하는 계획가의 견해에 동의한다는 말인가?
사람마다 논설이 다양해서 고밀화하자는 얘기는 토건족, 탐욕스런 개발조합, 땅 많은 지주뿐 아니라 누구라도 할 수 있는 흔한 얘기입니다. 하지만 위 글을 분명히 보았다면 동의할 이유는 없어도 여느 얘기와 다르다는 느낌 정도는 받아야 정상입니다. 그런데 그게 전혀 없었어요. 오히려 "58세" 이혁주 박사보다 "3살 아래 쉰 다섯"인 주택분야 "20년" 이상 연구경력자로서 자신의 보고서에 "다 있다"고 타일렀습니다. 통화를 마치기 직전 "그럼 새 이론인가"라고 말하신 걸 보면 전혀 감이 없었습니다.
지금 답을 드리지요. "새 이론"이라면 새 이론이고 헌 이론이라면 헌 이론입니다. 우선 헌 이론입니다. 아래는 전국 대학 1학년 교양과정에서 쓰이는 경제학 원론 교재 2종에 나온 삽화입니다. 경제학 처음 접하는 학생이 늦어도 3주째 정도면 배우는 내용입니다.
<그림 3> Krugman and Wells(2021) 크루구만의 경제학 입문 제4장 '가격규제와 수량규제' 127쪽 캡처
<그림 4> 이준구-이창용(2015) 경제학원론 제3장 '수요, 공급 그리고 시장의 균형', 5절 85쪽 그림 3-19 '수량규제와 사회적 순편익'(출판사 제공 파워포인트 슬라이드 캡처)
이들 그림은 아래 <그림 5>에서 보듯이 유상균-이혁주(2021)에 있는 논문 삽화 Figure 4와 똑같은 그림입니다. 그러니까 이혁주 박사 논설은 헌 논설입니다. 그 증거는 또 있습니다. <그림 6>은 재정학에서 Harberger triangle로 잘 알려진 Harberger 교수의 1971년 비용편익 분석 논문에 실린 내용입니다(Harberger, 1971).
<그림 5> 유상균-이혁주(2021) Figure 4
<그림 6> Harberger(1971: 789) market distortion
<그림 7>은 유상균-이혁주(2021)에 실린 내용인데, 도시공간 모형에서 Harberger(1971) 방식으로 Glaeser et al.(2005)에 나온 regulatory tax 논설을 바꾸어 썼을 뿐입니다.
regulatory tax = market price of a housing unit
- marginal cost of that unit (absent government barriers).
(Glaeser et al., 2005: 336)
아래 수식은 Harberger에서 보듯이 구성요소별로 더한 것에 불과하다고 보면 진부하기도 합니다. Harberger에 있는 summation 기호 ∑는 유상균-이혁주(2021)에서 + 기호에 대응합니다. 아래 식(9)와 동일한 조성원리입니다. <그림 8>은 도시경제론 교과서 Brueckner(2011)에 실린 용적률(floor area ratio, FAR) 규제 삽화입니다.
<그림 7> 유상균-이혁주(2021) 식(9) 캡처
<그림 8> Brueckner(2011) 도시경제론 교과서 85쪽 삽화(e-book 캡처)
그래서 헌 것이라면 헌 것입니다.
한편 이혁주 박사의 논설은 Glaeser et al.(2005: Figure 3)의 용적률 규제론 informal presentation에 formality를 더한 것이라서 새로운 구석이 없지는 않습니다. 그리고 quota rent, regulatory tax 대신 rational planning framework라는 계획규제적 맥락을 분명히 하고 피구세(Pigouvian tax)라고 한 것도 새롭다면 새롭습니다. 나중에 용적률 규제론을 공급규제 일반으로 일반화하면, 이 박사의 공급규제론은 부동산정책 논쟁에서 공급중심적 시각의 주요 논설이 되어 수요중심적 시각과 대비되는 관점으로 재평가될 것 같습니다.
이렇게 되면 진보가 주장하는 불로소득에 대한 해석이 180도 뒤집힐 수 있고, 토지의 탈상품화 논의 전반에 대해 재검토가 필요합니다. 국부 private capital 가운데 주택 자본(토지+structures)이 차지하는 비중이 만만치 않기 때문입니다(Lee and Yoon, 2017: Fig. 2 & 3). 그리고 집값 높은 게 투기꾼, 토건세력, 개발업자 때문이라는 상식이 지금부터는 계획가와 진보 세력을 향해야 한다는 걸 의미합니다. 이건 학술적, 도덕적, 정치적으로 이 바닥 판의 변화를 의미합니다. 이런 면에서 새롭다면 새로운 구석이 없지 않습니다. 김수현(2023), 이준구(2023)가 근거 없는 speculation이라는 점까지 경험적으로 확인되면 이혁주 박사의 공급규제 원인론은 경험적 추가근거까지 확보하게 됩니다. 몇 해 전 서울시립대 서순탁 교수 曰 "그걸 그렇게도 해석하는군요"라는 반응은 이런 당혹감에서 나온 말이었습니다.주1 서 교수는 진보이론가이자 계획가입니다.
어찌 되었든 quota rent라는 말은 고리짝부터 있던 말일 뿐만 아니라, 기초 교양과정 입문서에 나오는 개념으로서 대학 새내기가 늦어도 3주째면 배우는 그런 개념입니다.
자 이제 박은철 박사님께 질문합시다.
이혁주 박사의 규제론이 이 정도의 기초개념이라면, 이 박사 프로필과 논문, 여기 이메일 보고 느낌 정도는 있어야 했던 것 아닌가요?
이혁주 드림
주1...대한국토도시계획학회 주관 최봉문 교수(현 회장)가 좌장으로 참석한 토론회에서 서순탁 교수가 한 말로 기억. 당시 floor에 있던 한상훈 교수의 질문도 있었음. 서순탁 교수가 발제(서순탁, 2018)하고 이혁주 교수 등이 논평했다.
김수현. 2023. 부동산과 정치. 경기도 파주: 오월의봄.
박진백 외. 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
서순탁, 2018. 토지공개념과 국토관리. 대한국토-도시계획학회 정책토론회, "개헌논의 속의 국토-도시 계획과 정책, 어떻게 바라볼 것인가?", 2018.4.12. 서울: 과학기술단체총연합회. 요약문.
유상균-이혁주, 2021. 밀도규제의 구속성과 규제의 타당성 검토: 서울 아파트단지를 중심으로. 국토계획, 56(5): 44-59.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
이준구-이창용, 2015. 경제학원론, 제5판. 경기도 고양: 문우사.
Brueckner, Jan K., 2011. Lectures on Urban Economics. Cambridge, Massachusetts: MIT Press.
Glaeser, Edward L., Joseph Gyourko and Raven Saks, 2005. Why Is Manhattan So Expensive? Regulation and the Rise in Housing Prices. Journal of Law and Economics, 48: 331-369.
Harberger, Arnold C., 1971. Three Basic Postulates for Applied Welfare Economics: An Interpretive Essay. Journal of Economic Literature, 9(3): 785-797.
Krugman, Paul and Wells, Robin, 2021. 크루그만의 경제학입문. 김재영, 박대근, 전병헌 번역. 서울: 시그마프레스.
Lee, Woojin and Yoon, Younghoon, 2017. Capital in South Korea: 1966-2014. Social Choice and Welfare, 49: 671-708.
박은철 박사님께
20년 이상 장영희 박사(1992년 공채 1기) 시절부터 연구한 senior fellow라는 것은 연구원 안팎 여러 주택분야 연구자들과 암묵지를 공유하고 있다는 것을 뜻합니다. 그런데 서슴없이 전화기에 손이 갔다는 것은 박사님과 주택분야 전공자 다수의 주택정책관에 명백하게 배치된 생각을 이혁주 박사가 밝혔다는 것을 시사합니다.
그렇게 당연시한 박사님의 주택정책관에 기초해서 여기 논쟁에서 다룬 일관된 주제, 즉 서울 주택가격과 공급의 적정성을 판단하는 기준 그리고 그 판단결과가 무엇인지 공개하시지요.
아래 목록은 박사님이 참여해 작성한 연구원 간행물 목록이지만, 도움이 될 만한 글이 눈에 띄지 않습니다.
▼연구보고서
-시공지원형 주택개량 프로그램 개선방안(2023)
-생애최초 자가소유 지원정책 체계화방안(2022)
-서울형 주택바우처 운영실태와 개선방안(2021)
-공공임대주택의 유형통합 위한 배분체계와 임대료체계 개선방안(2021)
-서울시, 지속가능한 저렴주택 공급 위해 공공분양주택 대안적 모델 도입 검토해야(2020)
-서울시 주거상황 감안한 주택재고 관리정책 방향(2020)
-서울시 저소득가구 에너지소비 실태와 에너지빈곤 현황(2020)
-주거권 강화 위한 주택임대차 제도 개선방안(2019)
-사회주택 활성화 잼점과 정책과제(2017)
-부담가능 임대주택 공급정책과 모델(2017)
-노숙 진입서 탈출까지 경로 분석과 정책과제(2015)
-‘이젠 임차가구의 주거권 보장할 때--법·제도 고치고 사회주택도 늘려야(2015)
-하우스푸어와 렌트푸어 이슈에 따른 서울시 대응방안 연구(2014)
-서울형 주택바우처 운영개선 및 발전방안(2012)
-다차원적 빈곤 관점에서의 서울시 빈곤실태와 정책과제(2011)
-뉴타운사업의 단계적 시행방안 연구(2011)
-아파트 관리의 공공성 제고방안(2011)
-서울형 주거복지 프로그램 운영 개선방안(2010)
-중산층 위기시대의 복지패러다임과 정책과제(2010)
-저소득가구의 에너지 소비실태 조사·분석(2010)
-장기전세주택(SHift) 확대공급에 따른 관리 효율화방안(2009)
-저소득층 자활공동체사업의 활성화방안(2008)
-주택임대차관련 법제도 정비방안(1999)
-서울주택기본계획 연구(1998)
-서울 시정의 환경적합성 평가방안 연구(1997)
▼단행본
-한국 경제 규칙 바꾸기(2018)
-저성장시대 서울의 도시정책을 말하다(2017)
▼서울도시연구
-[연구노트] 서울시-NGO간 파트너쉽의 현황과 과제(2000)
부록에서 요약문 몇 개 알아보았지만 별로 도움이 되지 않습니다.
제가 요구하는 것은 완벽한 답이 아닙니다. 사회과학적 명제의 제시보다는 완성품(immutable, universal truth) 제시를 요구하는 경향이 강하다는 것이 이런 종류의 충돌에서 심심치 않게 보는 일이라는 점, 잘 인식하고 있습니다. 그리고 그 병폐가 얼마나 심각한지도 잘 이해하고 있습니다.
이혁주 드림
<부록> 보고서 요약(일부)
(1) 보고서명: 서울시, 지속가능한 저렴주택 공급 위해 공공분양주택 대안적 모델 도입 검토해야(2020)
요약: 이 연구는 대안적 모델 도입 시 고려해야 할 종합적 판단기준으로 정책의 합목적성, 사회경제적 부담 가능성, 현실 적용 및 실행 가능성 등 세 가지를 제시하는 동시에 이런 기준들로부터 지분공유제의 도입을 위한 선결과제를 도출하였다. 향후 지분공유제를 성공저긍로 도입하려면 국내 여건 및 서울시 실정에 적합하도록 제도를 성계하는 일이 우선되어야 하면, 시기적, 지역적 특성을 감안한 선별적 도입과 함께 공공 또는 공모형 리츠를 활용한 직접 사업이 가능하도록 법제도적 여건 마력이 선행되어야 할 것으로 판단된다.
(2) 보고서명: 사회주택 활성화 잼점과 정책과제(2017)
-운영⋅관리와 공급⋅배분에 따른 개념정의 필요
-영국, 부담가능주택의 하나…독일, 사회주택을 공식용어로 사용 안 해
-사회주택(social housing)은 국가별 주택정책의 목표⋅내용, 사회주택을 바라보는 시각 등에 따라 개념이 다양하다. 많은 국가에서 사회주택은 정형화된 주택을 공급하는 것을 의미하지 않는다. 임대료가 저렴하거나 부담가능하고, 주택소요에 따라 주택이 배분되는 등 사회적 목적을 가진 주택을 ‘사회주택’으로 통칭하는 경우가 대부분이다.
-사회주택의 명칭도 그 목적과 성격에 따라 국가별로 다소 차이가 있다. 명백하게 사회주택이거나, 이와 비슷한 역할을 하는 주택임에도 ‘사회주택’이라는 용어를 직접적으로 사용하지 않는 국가들도 있다.
박은철 박사님
박사님은 주택전문가이면서 계획가입니다. 전강수 박사는 공부 분야가 많이 달라 질문에 답할 최적임자는 아니었습니다.
<그림 1> 박은철 박사 전공(kri.go.kr)
<그림 2> 박은철 박사가 소속된 서울연구원 도시공간연구실(서울연구원 홈페이지)
박사님의 생각은 연구자 1인의 견해가 아닙니다. 다수의 생각과 명백하게 충돌하는 이혁주 박사의 정책관을 반론한 만큼 박사님의 생각이 무엇인지 여기서 분명히 하지 않으면, 박사님도 그렇고 여기 지켜보는 다른 분들도 자신이 무엇을 말하고 어떻게 생각하는지에 대한 인식도 불분명한 채 주택을 얘기하고 시민의 삶을 얘기하는 것이 됩니다. 그럼 아무 일 없었던 것처럼 비슷한 보고서, 비슷한 정책 또 그대로 반복합니다.
박사님께서는 분명히 보고서에 "다 있다"고 말씀하셨습니다. 이 말씀이 당혹스런 상황에서 내뱉은 말일 수 있으나, 존재의 양태(樣態)로서 부존재의 존재도 있습니다. 만약 그 말씀(dictum)이 보고서에 explicit statement로 존재하지 않지만 문화적 특성(cultural trait)으로서 계획가의 유전자에 각인된 바를 드러낸 것이라면, 박사님의 그 "다 있[음]"은 부존재 방식으로 박사님의 뇌리와 사고, 그 반영으로서 보고서에 존재하는 것이 됩니다.
박사님의 저작 가운데 집값과 공급 적정성 판단에 도움이 될 만한 글이 있는지 한번 더 질문합니다. 있다면 있는 대로, 없다면 없는 대로 말씀해 주시지요. 박사님이 못하면 다른 분도 어렵습니다.
이혁주 드림
박은철 박사님께
문재인 정부 5년의 성과는 진보정부의 책임 이전에 계획계 인식의 직접적 산물인 것으로 보입니다. 우선 당시 책임자 면면이 그렇습니다.
다른 증거입니다. 공급방안으로 제시했던 아파트 단지 고밀화에 대해 거두절미 아파트 단지 "답답[해지고]", 나중에 "철거 문제가 있[어서]" 좋은 생각이 아니라고 서울연구원 어떤 senior fellow가 여러 해 전 말한 적이 있습니다. 서울시정개발연구원 부서장 출신 계획가의 첫 반응도 비슷했습니다. "그럼 경관은?". 서순탁 박사는 "역세권에는 적용해 볼만한 아이디어"라고 말합니다. 서 박사는 젊을 때 국토연구원에도 있었고, '국토계획' 편집위원장이었습니다.
『누구를 위한 높이인가』에서 서울연구원 박현찬, 정상혁 박사는 이렇게 말합니다.
그동안 경관 관리에 있어 ‘규제’보다는 손쉬운 경관 ‘사업’에만 몰두한 탓에 서울의 경관이 시장 논리에 따른 개발로 많은 부분 훼손되었다고 지적한다. 그러면서 경관 관리의 핵심은 결국 ‘규제’이고 경관 규제의 알맹이는 ‘높이’임을 거듭 강조한다. 많은 도시들이 건물 높이를 제한하는 방식으로 경관을 관리하는 것은 다름 아닌 도시의 아름다움을 모두의 자산으로 보기 때문이다. 한마디로 소수의 사적인 이익이 아니라 ‘공익’을 위해서이다. 그런 의미에서 높이 관리는 아름다움을 위한 규제이자, 도시계획이라 할 수 있다. 서울연구원 홈페이지 박현찬-정상혁(2017) 도서 안내문에서.
2016년 매일경제신문사에 주택관련 워크샵에서 발표한 적이 있는데 용적률 올려야 한다는 발표를 듣고 서울연구원 소속 도시설계 전공자(박사)는 딱 한 마디 "그럼 규제 없애자는 건가요" 했습니다. 이혁주 박사의 설명에 대해 추가 질문도 반론도 없었습니다.
박은철 박사의 inventory에는 좋은 대안들로 가득합니다.
-주거권 강화 위한 주택임대차 제도 개선방안(2019)
-사회주택 활성화 잼점과 정책과제(2017)
-부담가능 임대주택 공급정책과 모델(2017)
-하우스푸어와 렌트푸어 이슈에 따른 서울시 대응방안 연구(2014)
-서울형 주택바우처 운영개선 및 발전방안(2012)
-뉴타운사업의 단계적 시행방안 연구(2011)
-서울형 주거복지 프로그램 운영 개선방안(2010)
계획계에서 큰 관심을 가지고 추진했던 주거지 도시재생은 굳이 아파트로 바꾸지 않아도 된다는 생각에서 하는 사업입니다. 매력적입니다. 사람 냄새, 골목, affordable housing, social fabric의 보존, 장소가 아닌 사람의 번영, ...
서울연구원 어떤 계획가는 고밀화는 "안 된다"고 말합니다. 여러 해를 두고 몇 차례 질문했지만 이유를 설명하지 않습니다. 어떤 연구자는 "지금도 하고 있는 것"이라고 말합니다. 전에 변창흠 박사가 말한 것과 비슷합니다. 이창무 박사의 조선일보 논설 "용적률 500%?"도 있습니다. 현 국토학회 회장단 어떤 교수의 생각도 비슷합니다. 도로의 입체화 등 여러 얘기하면서 고밀화의 부작용에 대해 걱정했습니다.
이들 입장은 하나하나 나름의 타당한 이유가 있습니다. 그러나 이를 합치면 서울에서 아파트 지으면 문제가 많다가 됩니다. 게다가 투기까지 조장하고 전국민의 염원 균형발전까지 해하니 서울에선 아파트를 더 공급하면 안 됩니다. 이왕 있는 것도 어찌어찌 해서 최대한... 이것이 서울 아파트가 social bad가 된 배경이 됩니다.
따라서 서울에서 아파트에 살려면 그 부작용(externality)에 비례해 추가비용을 지불하게 하여 내부화합니다. 이 벌금 성격의 부과금이 집값의 70% 정도나 될 만큼 살인적이고 부익부 빈익빈을 악화했지만, 계획가의 '사회적 선'을 달성하자면 감내해야 한다는 것이 계획계의 결과론적 입장입니다. 계획계는 아직도 그 존재에 대해 무지하고, 한국 부동산 문제가 다는 아니더라도 상당 부분 여기서 출발한다는 사실에 대해 또한 무지합니다. 그 여파로 연립주택, 임대주택, 전세값 비싼 건 어쩔 수 없고요(관련 메카니즘은 김원중 외(2021: 3장 4절) 참고). "지금도 하고 있는 것"이라고 하지만 왜 아직도 피구세가 70%나 되는지 설명하지 않고 앞으로 어떻게 할지도 마찬가지입니다. 3기 신도시한다고 수도권을 공사판으로 만드는 것도 어쩔 수 없고, 신조어 '교통불평등'이라는 말이 생겼지만 그건 교통 쪽 사람들이 알아서 할 일이고 도시계획가의 책임에 관해서는 오불관언(吾不關焉)합니다. 교통하는 사람들은 속 사정도 모르면서 길 내야 한다고 하니 길 냅니다. 지대 소득의 환수를 주장하는 김윤상, 전강수 박사의 주장에 대해 심지어 "그 사람들은 본래 다른 사람들..."이라고 비난하는 사람도 적지 않지만, 왜 이들이 맥락에서 벗어난 얘기를 하는지, 기본소득과 연결하는 창의적 제안으로까지 어떻게 발전하게 되었는지, 그 판 누가 짰고 땅 세금을 동네북으로 만든 게 누구 책임인지 거론하지는 않습니다. 또한 아파트가 그렇게 나쁜 social bad로서 동네 가까이는 안 되고 어디다 짓기는 해야 할 것 같고 그래서 강변북로에, 올림픽 대로에, 북부간선에(지난 번 서울시장과 후보들), 한강 고수부지에(어떤 증권회사 analyst) 짓자는 말까지 나온 바 있습니다. 계획가들은 이런 제안에 당연히 냉소를 너머 말세라고 느끼지만, 동시에 이런 비정상도 일상적 episode로 수용해야 한다고 합니다. 일부 제안에 계획가가 직접 간여했던 걸로 보여서도 그렇지만, 이런 비정상을 계획계가 유도했다는 사실을 인지하지도, 인정하지도 않는다는게 결과론적 증거입니다.
이런 것들이 계획가의 통찰이고 그 결과물입니다. 이 통찰을 제도로 만들고 실현과정을 관리하는게 계획가이고요. 서울연구원으로 따지면 도시공간연구실 소속 연구원 한분 한분이 관련자입니다. 도시계획, 도시설계, 주택정책, ... 공사(公社)로 따지면 LH로부터 저 아래 SH까지. 조직으로 따지면 위로는 국토교통부로부터 아래로는 기초지자체 도시계획위원회까지. 집짓기까지 friction이 클 수록, 그게 무엇이든, stock supply 곡선이 왼쪽으로 이동하고 이런 모든 게 공급 제한으로 귀결됩니다. 도시계획위원회 온갖 선의의 규제조차.
박사님의 인식은 결국 공급규제로 귀결되는 계획계의 전반적인 인식을 대변하고, 그 '통찰'과 '제도'는 계획계의 세계관을 반영합니다. 박사님께서는 그러한 표준입장(canonical view)을 토대로 이들 현상을 Kuhn의 이상현상(Kuhnian anomaly)으로 보는 이혁주 박사를 정상과학자(normal scientist) 입장에서 진심 안타까운 마음으로 타이른 것이고요. 진보 계획가이든 보수 계획가이든 진단 차이가 있지만, social bad라는 합의와 그 정신에 관해서는 큰 틀에서 이견이 없는 것 같습니다. 문재인 정부와 박원순 시정을 도마 위에 올려 놓고 이런저런 얘기하지만, 이들은 계획계의 합의와 정신을 자신의 색깔로 해석하고 구현하려 애썼을 뿐입니다. 그 유산 덕에 대한민국이, 서울이 허덕이고 있는 것도 사실이지만.
따라서 주택을 추가공급이 불필요한 social bad로 간주하는 계획가 입장에서 볼 때, 현 주택공급 수준은 최적은 아니라도 최적에 근접하고, 미세조정을 통해 최적 상태의 상시적 유지가 가능하다고 보는 것이 됩니다. 이 현상(現狀)의 최적성을 의문시한 이혁주 박사는 이해할 수 없는 사고를 한 것이고, 현상이 (근사)최적 상태이므로 주택가격과 공급수준의 적정성을 묻는 것은 적실성 없는 질문(irrelevant question)이 됩니다. 이때 전화기에 손부터 갔던 것은 자연스런 반응이 되고요. 다른 계획가들의 현실 인식과 그 시현(示顯)으로서 이들이 보였던 반응과 본질적으로 같습니다. 사회과학도에게 요구되고, 전통적인 지식인상 지행합일을 실천한 박은철 박사는 오히려 용감한 사람일지도 모릅니다. 주류적 사고를 충실하게 따르면서 한 발 물러서서는 결코 틀릴 일이 없는 평론가형 지식인을 자처하지는 않았습니다. 이 해석이 맞나요?
이혁주 드림
박은철 박사님께
지난 주 이메일은 아래 글로 마쳤습니다.
따라서 주택을 추가공급이 불필요한 social bad로 간주하는 계획가 입장에서 볼 때 현 주택공급 수준은 최적은 아니라도 최적에 근접하고, 미세조정을 통해 최적 상태의 상시적 유지가 가능하다고 보는 것이 됩니다. 이러한 현상(現狀)에 대해 문제 제기한 이혁주 박사는 이해할 수 없는 사고를 한 것이고, 현상이 (근사)최적 상태이므로 주택가격과 공급수준의 적정성 문제는 적실성 없는 질문(irrelevant question)이 됩니다. 이때 전화기에 손부터 갔던 것은 자연스런 반응이 되고요. 다른 계획가들의 현실 인식과 그 시현(示顯)으로서 이들이 보였던 반응과 본질적으로 같습니다. 이 해석이 맞나요?
이 해석에 따르면, 박사님의 반응과 무지가 예외적이지도 특별하지도 않은게 됩니다. 공부 배경이 다르고 무관심해서 그런 것이 아니고, 한 전문가 집단의 일반적 특성이 그대로 드러났을 뿐입니다.
한국 사회 엘리트로 분류되는 서울연구원 연구자의 orientation이, 그리고 그런 사람들이 연구원 아니고도 그렇게 많다는 것은 학력 이상의 이유가 있기 때문인데 그것은 계획가 커뮤니티의 이상과 사명, 그 달성에 도움이 되도록 오랜 기간 형성된 문화에 기인한 것이라고 봅니다. 이때 학력 부족과 무지는 종속변수적 성격이 더 크고, 그 문화가 오랜 세월 형성되고 내재화된 만큼 무지와 인지 실패는 박사님과 해당 전문가 집단의 집합적 특성(collective trait)이 됩니다. 아래는 관련해서 ChatGPT 답 일부입니다.
Groupthink: Professional communities may develop a consensus around certain practices or beliefs, leading to conformity and a reluctance to challenge the status quo. This can be reinforced by social pressure to conform to the group's norms and values.
Lack of Awareness: Sometimes, professionals may not even be aware that certain aspects of their practice are questionable or controversial. This could be due to a lack of exposure to alternative perspectives or information.
양자역학 태동기 닐스 보어가 아인슈타인한테 세상을 이해하려 하지 말고 있는 그대로 받아들이라고 충고했다고 합니다. Huntington 교수의 '문명의 충돌'에 대해 평하면서, 문명(文明)은 정치학에서 최상위 분석단위라는 얘기를 들은 적이 있습니다. 마찬가지로 박은철과 계획계의 현상을 '문화'라는 주제어로 이해해야 할 것 같습니다. 수 세기에 걸쳐 형성된 정체성에서 배어 나온 여러 계획가의 반응은 자연스러운 것이었고, 이런 측면에서 박은철 박사의 반응도 정상입니다.
잠정적으로 주택가격과 공급의 적정성에 관한 질문에 답할 만한 academic competence도 과학문서도 없는 걸로 정리합니다.
(1) 박은철 박사가 참여해 작성한 서울연구원 보고서 목록에 주택가격과 공급의 적정성 판단에 도움이 되는 내용을 담은 저작이 없다.
(2) 수량규제를 이해하지 못할 만큼 기초 학력(學力)이 부족하고, empirical scientific probe가 어떤 것인지 전반적인 이해도도 떨어지는 것 같다. 주택가격과 공급의 적정성 판단문제는 박은철 박사의 학력(學力) 범위를 벗어난다(나중에 필요하면 기술적 설명은 추가).
잘못된 내용이 있다면 말씀 부탁드립니다. 이제 김경민 박사 건에 대해 알아보겠습니다.
김경민 박사님, 대체 무슨 일이 있었나요?
주소: https://gses.snu.ac.kr/people/faculty/2
<그림 1> 김경민 박사 프로필
학회에서 보낸 이메일 뒤지면 있을 겁니다. 몇 해 전 Glaeser 교수가 서울대 환경대학원을 방문한 적도 있습니다. 그러면 강연에도 참석했을 테고, 보통 가지게 되는 저녁식사 자리도 있었을 것이고 그럼 자리 함께 했을 테지요.
이혁주 박사가 Dr. Glaeser와 같은 얘기를 했지만, 김 박사님은 그 경제학을 화자(話者)의 국적(國籍)에 따라 가려 들은 꼴이 되버렸습니다.
이상한 친구가 유례가 없는 방식으로 문제 제기하니 분명 정상은 아니라고 보았을 것이고, 반에서 중간 쯤 하는 친구가 반 1등한테 훈수 두었다고 보았겠지요. 박은철 박사의 호연지기도 그래서 가능했다고 봅니다.
박사님은 누가 뭐래도 서울대 교수입니다. 서울대는 대한민국의 자존심입니다. 여기가 부실하면 대한민국도 부실합니다.
납득이 가도록 설명해 주시지요.
이혁주 드림
김경민 박사님 보시지요.
Glaeser 교수는 이 분야 공부하면서 직간접적으로 접해 본 천재 2~3명 가운데 한 명입니다. 공자님 말씀은 공자님만 해야 한다고 박사님께서 고집했습니다. 국적(國籍)과 화자(話者)에 따라 차별한 것이지요.
질문 드립니다. 박사님의 상태는 정상인가요, 비정상인가요?
아니면 이혁주 박사가 비정상인가요?
누구 놀리자고 드리는 말씀이 아닙니다.
이혁주 드림
전강수 박사님 보시지요.
박은철, 박진백, 이태리, 김경민 박사는 계획계에 속하는 인사들이었습니다. 이와 달리 박사님은 계획계 인사가 아닙니다. 전강수 사례는 계획계의 인식 지평에 어떻게 다른 분야 전공자가 갖히게 되었는지 보여주는 사례입니다. 왜 그런지 분명히 하겠습니다.
quota rent의 economic outcome 분석은 비용과 편익의 비교에 관한 것이었습니다. 재화 한 단위를 공급할 때 발생하는 비용과 그 비용 지출의 대가로 주어지는 편익에 관한 것이었고, 편익 > 비용일 때 해당 재화는 과소공급으로 판단합니다.
이러한 cost-benefit calculus, marginal analysis를 빼고 박사님께서 재학했던 경제학과는 성립할 수 없습니다. 박사님께서 quota rent 개념을 경제학과 다닐 때 설령 배우지 않았다고 하더라도, 수량규제의 efficiency를 논의하면서 이혁주 박사가 한 말이 저 밑으로 내려가고 내려가면 결국은 비용편익분석이었다는 건 파악했어야 합니다.
<그림 1> Krugman and Wells(2021) 『크루그먼의 경제학입문』 p.7에 소개된 한계분석 개념(아래쪽으로 scrolling down할 것)
<그림 1>은 비용과 편익, 그리고 한계분석에 관해 한 경제학 입문서 Krugman and Wells(2021) 1장 7쪽에 소개된 내용입니다. 이 박사 질문의 기저에는 이런 비용-편익 계산이 있었고 이에 대해 질문했던 것입니다.
수요곡선의 이동, 공급곡선의 모양, 투기는 나중하고도 나중 얘기입니다. 공급곡선의 모양은 negative net social benefit을 rationalize하기 위해 이 박사가 나중에 등장시킨 개념입니다. 전 박사는 투기를 거론했지만 이 박사가 제기한 비용, 편익에 관한 의문에 답한 것은 아닙니다. 집값의 70%에 달하는 피구세의 존재를, 그것도 지난 수십년간의 존재를 투기가 설명하지 못합니다. 만약 서울로 서울로 때문에 발생한 madness 현상의 결과라면 그러한 madness 억제를 위해 서울 거주 location tax가 왜 그 정도여야 하는지 설명해야 합니다. 그때 논설 뒤에 나왔던 지역균형발전 얘기에는 가슴에 대고 하는 '호소'밖에 없습니다. 숫자 비스무레한 것이라도 보여 주세요.
전 박사가 했어야 하는 일은 이겁니다. 비용과 편익이라는 개념을 이용해 문제를 framing한 것이 설득력이 있는지, 제대로 정의하고 측정한 것인지 확인하는 것. 말미에 노무현 운운하며 불순한 의도까지 거론했습니다. 무지가 정치적 경멸로 이어진 사례입니다. 이 박사의 문제제기로 진보정부의 intelligence가 의문시된 것은 맞지만, "노무현", 정치적 의도 등과 직접적 관계는 없습니다.
출처: 대구카톨릭대 홈페이지
<그림 2> 전강수 박사의 학력(學歷)
이 세상에는 이해하기 어려운 사람이 많습니다. 이 박사도 그런 사람일 겁니다. 그러나 아무리 비정상인 사람이 말을 해도 경제학과에 입학해 경제학과에서 박사학위까지 한 사람은 이해했어야 합니다. 서울대 박사 학위는 그냥 준 것이 아닙니다. 정신병자의 말이 아무리 두서가 없어도 잘 배운 정신과 의사는 모두 알아 듣습니다.
이 박사의 질문이 무엇인지 이제 분명히 이해했겠지요. 그래서 재차 말씀드립니다.
다시 대답하시지요.
이혁주 드림
Krugman, Paul and Wells, Robin, 2021. 크루그만의 경제학입문. 김재영, 박대근, 전병헌 번역. 서울: 시그마프레스.
전강수, 김경민, 박은철 박사님께
지금까지 논의한 결과에 따르면 전강수, 박진백, 이태리, 김경민, 박은철 박사는 부동산 및 주택문제 분석에 요구되는 기초 학력과 문제파악에서 문제를 드러냈습니다.
출처: 대구카톨릭대 홈페이지
<그림 1> 전강수 박사의 이력
그 시사는 이를테면 이런 것입니다. <그림 1>은 전강수 박사의 사회활동 목록인데 여기서 한 factual judgment를 주장 그대로 수용하기 어렵게 됩니다. 덧셈, 뺄셈에 문제 있는 어린이가 미적분 문제 풀었다고 하면 믿음이 안 가는 것과 같습니다.
그런데 반론하려면 전 박사는 자신의 주장 하나하나에 대해 입증해야 합니다. 입증하려면 측정결과를 가지고 있어야 합니다. 따라서 반론할 수 없습니다. 뿐만 아니라 이혁주 박사의 주장을 부정하는 (formal) theory도 있어야 합니다. theorizing 문제는 측정과 별개의 문제입니다.
이건 거명한 다른 분들도 마찬가지입니다. 정리하면 다음 사항이 충족되어야 반론할 수 있습니다.
(1) 일관된 설명: 하나는 설명해도 다른 데서 막히면 반론할 수 없습니다. 이를테면 2008년 금융위기 이전 집값은 과잉유동성이 없는 시절 집값인데, 당시에도 집값에 피구세가 70%인가 그랬습니다. 과잉유동성 원인론이 다 맞다고 해도 여기서 막힙니다. 전강수 박사가 말한 투기도, 균형발전론도 마찬가지입니다. 시가지 과밀혼잡 통제를 내세운 계획가들의 밀도규제 논설도 마찬가지입니다.
(2) 설명력: 그렇게 제안된 theory가 실제 현실에서 관찰되는 관심 변수/현상의 경험적 규칙성을 제법 설명하는 측정 결과를 제시해야 해야 합니다. 비유컨대 이론기반 구성 회귀식의 R square가 예컨대 0.1이 아니라 0.6, 0.7은 되어야 합니다. 측정 결과가 없으면 애초 얘기가 성립하지 않지만, 있더라도 그저 그러면 vacuous한 이론이고 주장이라는 말씀입니다. 그런데 전강수, 김수현 논설에는 측정이 애초 completely missing입니다. 따라서 김수현, 전강수의 논설은 그 자체 참도 거짓도 아닙니다. 그런 아이디어는 신문에도 널려 있어 추가연구 구상에 도움이 될 만한 독특성의 가치도 없습니다.
(3) 메타이론적(?) 시각의 rationalization: 왜 이런 다학문적 사건이 벌어졌는지, 왜 system-wide failure라고 할 만한 일이 일어났는지 설명하는 이론도 있으면 좋습니다. 왜냐하면 메타이론적 이해가 없을 때 이런 일은 또 다시 일어날 것으로 보이기 때문에 그렀습니다. planning profession의 자기회복력, 장기적 생존가능성 그리고 그 너머 국가로서 한국의 생존과 관련된 문제입니다.
현재로서는 진보의 부동산정책론에서 (1), (2) 두 가지 요건을 만족시키는 논설이 없는 것 같습니다. 특히 (1)번 a consistent theorizing은 정말 어려운 부분입니다. 이것이 이 박사 말에 귀를 기울여야 하는 이유입니다. 이혁주 논설이라는 산(山)을 넘는 큰 산을 만드는 노력이 있어야 합니다. (1), (2)를 필수구성요소로 하는 산 말입니다. 지금 진보는 작가(作家)와 허명(虛名)으로 가득합니다.
반론이 어렵다고 보고, 아래와 같이 정리합니다.
[정리 1] 이혁주 박사가 말하는 밀도규제 수단이 경제학 원론에 등장하는 수량규제(quantity regulation)라는 점, 그 효율성 판단은 비용-편익 분석의 기초적 exercise라는 점을 박은철, 김경민, 전강수 박사가 이해했다면, 이들 3인의 논설은 그 기조가 달랐을 것이다.
[정리 2] 경험과학 연구방법론에 대한 몰이해, 문제 분석에 필요한 기초 지식 부족, 연구질문을 대하는 비개방적 태도 등 스칼라십 문제가 한국의 유수 학자와 연구자에게서 반복적으로 관찰되는 것은 설명이 필요한 현상이다. 학력이 부족해서 그랬을 것이라거나, 이념적 지향 때문에 그랬을 것이라거나, 해당 문제에 관심이 부족해서 그랬을 것이라거나, 게을러서 그랬다거나, 연구실보다 바깥 세상에 관심이 많아서였다거나, 혹은 부주의해서 그랬을 것이라거나, 자존감이 지나쳐서 그랬다거나 등 지금까지 우리가 알고 있거나 상상가능한 방식으로는 잘 설명되지 않는다. Harvard 박사이자 서울대 교수에, 서울연구원 senior research fellow에, 일가를 이룬 존경 받는 scholar에, 국토계획 분야 최고(最高/最古) 연구기관 소속 senior fellow 등등.
[정리 3] 현 위기가 계획계의 문화적 특성에서 시원(始原)한 결과라고 하더라도, 그 사회적 결과에 대해서는 계획계가 책임져야 한다.
전에 다음과 같은 사실을 관찰한 적이 있습니다.
'기술적'으로 문제가 있는 statement 혹은 proposition을 거리낌 없이 내뱉는 것이 이념적 지향이 달라 발생했다고 보는 건 피상적 이해방식이 됩니다. 부동산문제가 지나치게 정치화되었다는 비판이 있지만, 그 기저에 이념적 지향 그 이상이 있습니다. 지금 그 켜(layer) 하나를 보았습니다. 이메일 2024.1.17.
지금 그 두 번째 켜, 즉 계획계의 문화적 코드라는 두 번째 단서를 관찰한 것 같습니다. 앞으로 그 단서와 사례를 찾아 더 헤매보겠습니다.
다음 주부터는 김수현(2023)에 대해 알아봅니다. 계획계와 진보의 교집합에 속하는 인사입니다. 계획계의 문화적 코드에 지배된 부동산관에 계획계 밖 전강수가 구속당했다면, 그렇게 종속된 세계관의 지적 산물(知的産物)을 역수입하여 어떻게 계획계 인사가 다시 순환적으로 구속당하고 비(非)지식, 비(非)과학을 정당화하는지 보여주는 잠재 사례입니다. 결토 결과를 토대로 '잠재' 사례가 '실제' 사례가 되는지 알게 되겠지요. 계획계의 문화적 코드, 진보적 세계관, 스칼라십 각각의 문제 3가지가 겹쳐 나타난 인사의 인과론을 검토하는 자리가 될 것으로 예상합니다.
<표 1> 시스템 실패의 단계적 발생 지점과 진행
----------------------------------------------------------------------------------------------------------------------------------------------
실패 지점
사례 ------------------------------------------------------------------------------------ System failure
1단계 2단계 3단계 4단계
----------------------------------------------------------------------------------------------------------------------------------------------
박진백 외(2021) 연구자 자신 국토연구원 부동산 국토연구원 『주택연구』 발생
시장정책연구센터 편집위원회
김수현, 김경민 연구자 자신 계획계 계획계 밖 연구자 자신 To be examined
----------------------------------------------------------------------------------------------------------------------------------------------
주...'김수현'은 김수현(2023)을 의미. '김경민'은 여기 주택논쟁 사이트에서 거론된 김경민 박사의 논설(MBC 100분 토론에 출연해서 말한 과잉유동성론. 당시 주진형 전 민주당 최고위원이 패널로 참석. 주 씨가 김 박사의 주장과 다른 얘기를 해서 잠시 어색한 장면이 연출되었음. 3프로TV에 출연해 소득이 올라 집값이 높다고 한 주장, ...)
이 과정에서 개별 failure가 어떻게 system 전체 단계를 하나씩 이행(移行)하면서 system failure로 연결되는지 생각해 보시기 바랍니다. 다중 안전장치가 모두 작동하지 않아 발생한 '사고적' 요소가 박진백 외(2021)에 있었다면, 김수현(2023) 사례에서 각 지점 실패는 system-wide 참여자의 설계와 의도에 따라 충실하게 작동했다는 차이가 있습니다. 만약에 '김수현, 김경민' 행 오른쪽 끝이 system failure '발생'으로 판명이 나면, 이건 '김수현, 김경민' 한 두 사람의 문제가 아닌 것이 됩니다. 집단지가 강력하게 작동한 안전장치 2개 포함 모두 4개의 안전장치가 김수현, 김경민 두 사람한테서 동시에 작동하지 않았던 것을 '사고'로 분류할 수는 없습니다.
김수현 박사님께 질문합니다. 어떻게 시작할까요? 김수현(2023)부터 할까요, 이 박사의 검토 결과부터 알아볼까요?
어떤 것이든 논문 심사기준을 적용합니다. 김수현(2023)은 실제 정책경험의 산물이자, 진보 정권이 들어서면 다시 등장할 ready-for-use 진단이라는 점을 고려했습니다. 이 경우 엄격한 기준을 적용해야 합니다.
이혁주 드림
김수현. 2023. 부동산과 정치. 경기도 파주: 오월의봄.
김수현 박사님께
이제 김수현(2023) 사례를 본격 검토합니다. 이렇게 읽혔습니다.
(1) 해외요인발 과잉유동성 때문에 한국의 집값이 높다.
(2) 임기 후반 정책신뢰 상실로 집값 잡는데 실패했다.
(3) 그 근거는 descriptive statisitcs.
다른 말로 바꾸면, 시장이 문제였지 기본적으로 문재인 정부 잘못이 아니다가 됩니다. 검토는 (3) --> (1) --> (2) 순으로 그 타당성을 하나씩 통계검토하는 방식으로 진행합니다.
결론은 어떤 방식으로 측정하든
집값 상승 대부분 문재인 정부가 자초한 것. 과잉유동성, 금융요인, 투기, 이자율, 정책신뢰 상실, 정책시차, .... 어느 것도 그 증거가 존재하지 않는다(오히려 통계 증거는 반대를 가리킨다). 주택가격에 관한 한 진보 정부는 노무현 정부 때부터 보수 대비 주택가격이 높았다. 문 정부의 경우는 정책실패의 결과이고..
라고 말할 수 있는지 확인할 겁니다. 검토결과에 따라 유지, 수정, 폐기합니다. 먼저 전국이 아닌 서울에 한정해서 논의합니다. 자료가 좀 여의치 않지만, 전국으로 검토를 확대할 때 위 statement가 어떻게 다시 기술될 것인지도 관심거리입니다.
(3)과 (1) 검토는 아래 <표 1>에 따라 진행하고 이 검정과정이 모두 끝나면 (2)에 대해 알아봅니다.
<표 1> 주택가격 영향요인으로서 해외요인(과잉 유동성 포함)의 영향 검토
-----------------------------------------------------------------------------------------------
미국 중앙은행
------------------------------------------
글로벌 유동성 FRB 기준금리 양적 완화
-----------------------------------------------------------------------------------------------
Descriptive
examination --- --- ---
Controlled
examination --- --- ---
-----------------------------------------------------------------------------------------------
주...글로벌 유동성은 global liquidity로서 국제결제은행 웹페이지 BIS global liquidity indicators에 실린 통계를 염두에 두고 붙인 변수명. 이 통계는 각국의 중앙은행이 보고간 locational banking statistics를 기반으로 작성하는데 국가간 자본의 유출입 집계치와 전세계의 주요국 통화로 표시한 외환 유동성 통계를 보여줌. 여기 BIS 문서 참고.
이제 문재인 정부 주택가격에서 거품을 걷어내고 2017.5 당시로 서울 집값을 되돌리는 긴 여정을 시작합니다. 김수현(2023)이 거론한 과잉유동성은 대체로 해외요인발 과잉유동성인데 우선 양적완화, 역외신용, 연준 금리를 중심으로 살펴보고(이하 '과잉유동성 모형'), 이후 개방경제모형에서 다루는 변수를 추가한 확장모형(이하 '개방경제모형')에서 다시 검토하겠습니다. 이들 검토는 공통적으로 기술분석(descriptive analysis) --> 통제환경 분석(controlled examination) 순으로 나누어 행합니다.
당분간 정부요인은 정권더미(외생변수)를 이용해 분석에서 사용합니다. 이후 분석결과가 얼마나 robust한지는 모형을 다양하게 reformulate해서 검토합니다. 기본 아이디어는 best model뿐 아니라 품질이 떨어지는 모형도 이용해 문재인 정부요인이 주택가격에 미친 영향을 측정해 보겠다는 것입니다. VAR모형에서 변수를 넣다 빼보기도 하고, 지금껏 문헌에서 검토한 변수라면 최대한 포함해 보기도 하고, 데이터셋을 과거로 최대한 확장하기도 하고, 차수(lag)를 변화시켜 보기도 하고... 이렇게 robustness가 확인된 정권더미 VAR모형을 이용해 김수현(2023), 이준구(2023)에서 제기한 각종 의문과 주장을 검토하고 진위를 판단합니다. 역대 정권 수준에서 보수 대 진보 누가 분탕질했는지, 투기는 집값과 어떤 관계가 있는 것인지 통계검증으로, 수치로 확인합니다. 그리고 답하지 못한 의문과 주장 이를테면 문재인 정부 후반 집값 상승이 김수현(2023)에서 주장하듯이 "정책신뢰"의 상실 때문에 발생한 것인지에 대해서도 통계 검증합니다. 각종 harsh condition하에서 정책변수를 이용해 새로 구성한 모형의 robustness check를 한 후, 신뢰가 확보된 모형을 이용해 김수현(2023), 이준구(2023)에서 제기했던 나머지 의문과 주장에 대해 답하거나 진위를 검토합니다.
이혁주 모형은 통상의 경제변수 중심 모형과 다르기 때문에 그 정당성에 대한 검토도 필요합니다. 세 가지 방향으로 모형의 정당성 혹은 유용성을 확인하겠습니다.
첫째, 정부대책 더미처럼 정부대책의 더미변수화에 대해 제기할 수 있는 조작화(operationalization)에 관한 방법론적 의문에 대해서 그 통계적 정당성을 확인해 보겠습니다. 전에 논문심사평에서 보았던 것으로서 앞으로 누가 어떤 결론으로 어떤 비판적 논문을 쓰든 동일하게 제기될 만한 문제입니다. 예전에는 정권이 바뀌면 지난 정권 정책을 비판하는 일을 식상하리 만치 했지만 지금은 아닙니다. 그만큼 민주화세대의 시대 정신 독점이 가져온 부작용 같습니다. 그런 경직적 사고가 논문 심사과정에서도 그대로 드러났습니다.
둘째, 이론적 측면에서 모형을 정당화할 필요가 있습니다. 기존 거시경제, 개방경제, price bubble/bust문헌에 대한 광범위한 조사가 필요합니다. 기본 문제의식은 이혁주 모형에는 변수가 정부요인 빼고 달랑 가계대출 하나뿐인데 이게 말이 되느냐 그런 얘기입니다.
셋째, predictive or explanatory power입니다. 모형에 다소 문제가 있더라도 탐구수단으로서 가치 있는 통찰력을 제공한다면 좋은 workhorse로서 자격이 있습니다. 이를테면 2022년 여름 이후 금리와 서울 주택가격 간 puzzling variational pattern, 그리고 정권교체 전후 급격한 가격추세의 전환 같은 현상을 이혁주 모형이 얼마나 잘 설명하는지가 시금석이 됩니다. 만약 이혁주 모형이 좋은 모형이라면 이자율, 유동성, 투기 등 금융요인 원인론의 빈 자리를 그런대로 채울 수 있어야 합니다.
이런 작업을 통해 다음 사실을 보일 수 있는지도 알아보고자 합니다.
[정리] 과학자가 믿는 지식, 신념 등은 그것이 아무리 많은 사람이, 아무리 오랫동안, 아무리 소중한 것이라도 하시(何時)라도 그 타당성이 부정될 수 있는 대상이다. 주택, 부동산에 관한 진보와 계획계의 상식, 관행도 마찬가지이다.
최종적으로는 이러한 통계검토 결과를 서울 주택가격에 존재하는 Pigouvian tax와 결합해서 전체 논의에 구조를 부여합니다. 2022.5 시점 집값에서 문 정부가 올린 집값을 모두 제거하고 2017.5 시점으로 서울 집값을 돌린다는 말씀입니다. 과잉유동성 포함 진보에서 주장하는 요인이 대체로 제거된 2017.5 시점 집값을 얻게 되면 당시 집값의 적정성 판단에 유용한 시료(試料)를 확보하는 것이 됩니다. 그럼 이 지점에서 계획가와 다시 논의를 시작해야 합니다.
다음 주에는 기술통계(descriptive examination)를 이용해 글로벌 유동성이 서울 집값에 영향을 미쳤는지 알아봅니다.
이혁주 드림
김수현. 2023. 부동산과 정치. 경기도 파주: 오월의봄.
김수현 박사님 보세요.
오늘은 아래 표 (1)번을 중심으로 알아봅니다.
<표 1> 주택가격 영향요인으로서 해외요인(과잉 유동성 포함)의 영향 검토
-----------------------------------------------------------------------------------------------
미국 중앙은행
글로벌 유동성 ------------------------------------------
(GLI) FRB 기준금리 양적 완화
-----------------------------------------------------------------------------------------------
Descriptive
examination (1) --- ---
Controlled
examination --- --- ---
-----------------------------------------------------------------------------------------------
주... GLI: global liquidity indicators
<그림 1>은 세계 주요 국가에서 주택가격이 얼마나 변했는지 보여줍니다. 2013~2017에 대부분의 국가와 도시에서 집값이 올랐습니다. 국가간, 세계 주요도시간 동조화의 강력한 증가입니다. <그림 2>는 이 동조화 경향을 상관계수를 이용해 보여줍니다. 선이 굵을수록 상관성 즉 동조화 경향이 큽니다. IMF문서를 보면 어찌어찌 복잡하게 동조화 지수를 산출하는데 일종의 상관계수입니다.
자료: IMF(2018)
<그림 1> 2013-2017년간 실질 주택가격 증가율
자료: IMF(2018). 한국은 KOR으로서 그림 중앙 아래에 있음.
<그림 2> 세계 주요국가의 주택가격 간 동조화 경향
한편 <그림 3>은 김수현(2023)에 등장하는 그림이고 <그림 4>는 그 해석입니다. "나라별로 조금씩 시차는 있지만, ... 우리나라가 겪은 순환주기와 다르지 않다."고 말합니다.
<그림 3> 김수현(2023) 책에 있는 삽화
<그림 4> 김수현(2023) 책에 있는 삽화에 대한 해석
한편 Tillmann(2013)에 따르면 capital inflow는 한국 포함 동남아시아 각국에서 집값 상승요인으로 작용했습니다. 아래 <그림 5> 오른쪽 그림에서 capital inflow는 조사대상 국가의 집값 평균을 유의하게 올렸습니다.
주...신뢰구간은 z값 기준 ±1, 즉 68% 신뢰구간. 여기 주택논쟁 사이트에서 채택한 엄격한 기준을 적용하면 유의하지 않음. Tillmann 724쪽에 신뢰구간 설명 있음.
<그림 5> Tillmann(2013)에 있는 capital inflow가 집값에 미친 효과 삽화
이들 말고도 집값 동조화를 보여주는 통계는 많습니다. 이상 김수현 박사의 주장을 지지하는 통계들이었습니다.
지금부터 김 박사의 주장과 배치되는 통계를 알아 보겠습니다. 우선 <그림 1> 아래 쪽을 자세히 보면 한국 집값(실질가격 기준)은 2013~2017년간 거의 변동이 없었습니다(박근혜 정부시기). 이 말은 다른 나라의 집값과 한국의 집값 사이에 2013-2017년간 동조화가 없었다는 말입니다. IMF(2018)에 따르면 동조화 경향이 점차 증가했다고 하는데, 이 기간 동조화가 없었다면 그 이전에는 동조화 경향이 더 약했다는 말입니다. 종합하면 2017년까지 한국의 집값과 세계 주요국 및 주요도시 집값 사이에는 동조화가 없었을 가능성이 높다는 말입니다.
한국으로 들어온 역외 자본 즉 foreign capital의 inflow 통계를 자세히 봐야 하는 이유는 여러 가지입니다. 첫째, 아무리 전세계적으로 자본이 차고 넘쳐도 한국으로 결국 유입한 자본의 양이 유동성의 영향 존재 여부와 크기를 결정할 것이라고 보기 때문입니다. 다른 것들은 spillover 내지 일반균형 혹은 간접/우회 효과입니다. 보통은 1차 효과, 직접 효과가 매우 크고 higher-order effect는 이러한 1차 효과의 크기에 보통 비례해서 주어집니다. 따라서 한국으로 유입된 자본의 양을 직접 보지 않고 해외 자본이 한국의 자산가격에 미친 영향을 논하는 것은 백중(百中)을 겨누는 논의가 아닙니다. 둘째, 주택가격의 동조화 기제에 대한 단서를 얻을 수 있기 때문에 그렇습니다. 기제를 분명히 하지 않으면 어떻게 동조화가 일어나는지 규명할 수 없습니다. 이 부분은 공자님 말씀만큼이나 지당한 말씀이지만, 그만큼 관련 이해부족은 심각한 문제를 야기하기도 합니다. 여러 사람들이 상상하는 것 이상으로 부동산 문제 몇 가지 이슈들과 직접 연계된 복잡한 주제입니다. 기회가 되어 분명히 설명드릴 수 있게 되기를 희망합니다.
참고: BIS 자료화면은 여기
<그림 6> Bank-to-bank foreign credits, worldwide
<그림 7> bank to non-bank 역외신용
<그림 6>도 마찬가지입니다. BIS에서는 각국 소재 금융기관(bank)이 해외에서 조달한 자본의 규모를 lender, borrower로 구분해 집계합니다. <그림 6>은 한국 소재 금융기관이 해외 금융기관으로부터 조달한 자금의 시계열 통계입니다. 다른 나라 금융기관에서 빌린 것은 당연히 포함하고 해외 소재 본사에서 가져온 돈 모두 포함한 수치입니다(BIS, 2019: 9-10). 그림에서 하나는 절대규모로, 다른 하나는 한국 GDP 대비로 집계했습니다. 그림에서 보듯이 한국에 들어온 해외 자본은 2008년 금융위기 이후 오히려 감소추세였습니다. 2008년 금융위기 이후 2020년 봄 코로나가 오면서 2차 양적완화가 단행되었는데 그 영향에도 불구하고 여기 통계는 잠잠입니다. 아무튼 이 감소추세가 서울 집값에 영향을 미쳤다면 한국의 집값은 허구헌날 방송에서 보는 '전문가'들의 진단과 달리 하락 압력을 받았을 것입니다.
해외 자본이 한국의 자산가격에 영향을 미쳤을 것이라는 기대하는 분들은 <그림 7> 빨간 곡선과 같이 글로벌 유동성의 빠르고 지속적인 확대를 염두에 두었을 것입니다. 빨간 곡선은 전세계 각국 비금융기관(non-bank)으로 유입된 역외 신용의 규모를 보여주는데, 글로벌 금융위기 이후 줄곧 가파르게 상승추세였습니다. 이 통계는 BIS global liquidity indicator 집계기준에서 밝힌 중요통계입니다. 그러나 한국의 경우 개인, 기업, 정부 등 비금융기관에서 빌린 해외 자본의 크기는 같은 그림에서 보듯이 오히려 감소추세였습니다. GDP 대비 계산하면 이 경향이 좀 더 강하게 나타날 것 같군요.
주...신뢰구간은 90% 구간
<그림 8> Kim and Yang(2009)의 Figure 12(일부)
출처: <첨부 1>
<그림 9> Cumulative capital inflow and outflow: Case of Korea
<그림 8>은 전에 한번 보았던 Kim and Yang(2009)의 결과물인데, capital inflow가 한국의 주택가격에 미친 영향을 보여줍니다. x축은 충격 후 경과월입니다. 주택가격에 대한 영향의 유의도가 매우 낮습니다. y축은 주택가격 차분자료의 표준편차인데 해석하기가 불편하게 presentation되어 있습니다만, 그림이 시사하는 바는 명확합니다.
이상 기술통계는 GLI(global liquidity indicator)가 서울 집값에 영향을 미쳤는지 의구심이 들게 합니다. 이상 기술통계가 시사하는 바는 분명합니다. 김수현(2023)의 주장에 틈이 있다는 것이고 더 따져볼 만하다는 것입니다. 좀 더 구체적으로 다음과 같은 이유에서 더 검토하고자 합니다.
1. 표본 통계를 특정 사례에 적용할 때는 주의해야 한다. 또한 상관분석은 인과론 분석과 다르다. 김수현(2023)은 기술통계, visual inspection를 이용해 인과론을 수립한다.
2. 한국의 경우 정부요인이 중요한 것으로 드러났는데, 지금까지 알아본 것에서 정부요인을 명시적으로 통제한 연구는 없었다(적어도 여기서 검토한 것 가운데서만큼은).
3. capital inflow가 있다면 capital outflow도 있다. inflow가 그렇게 중요한 요인이라면 마찬가지로 outflow도 중요할 것이다. 두 효과는 상쇄적이다. outflow 분석은 위에서 알아본 논문의 분석결과를 단박에 뒤집을 만큼 강력할 수도 있다. <그림 9> 참고.
4. 지금까지 알아본 그림과 모형은 모두 best model 중심으로 수행한 분석이다. best model에서 배제된 변수들의 sum effect가 근사적으로 0이어야만 성립하는 결론들이다. 논쟁적인 주제인 만큼 이런 정도의 robustness check도 필요해 보인다. 이를테면 이 심사자의 심사평 line 5 ~ line 26은 이런 우려를 담고 있다.
이상 검토가 시사하는 바 하나는 이런 겁니다.
김수현(2023)처럼 하면 안된다.
기술통계(descriptive statistics)가 중요하긴 해도, 기술통계만으로는 인과론을 수립할 수도, 타 인과론의 타당성을 부정할 수도 없습니다. 이 인과론 얘기는 멀리 아리스토텔레스까지 거슬러 올라간다고 하는데, 김수현(2023)의 논설은 지성사에서 목격하는 이런 고민에 무감각하고, 그래서 이 지적 전통을 존중하지 않습니다. 경박하기로는 김경민, 전강수 박사와 마찬가지입니다.
[인간] A statisical association is not necessarily a causality. How old is this convention in science or philosophy?
[ChatGPT] The recognition that statistical association does not necessarily imply causality is a fundamental principle in both science and philosophy. This concept has been understood for centuries, but its formal articulation and widespread acceptance within the scientific community gained prominence in the 20th century. In philosophy, the distinction between correlation and causation has been a topic of discussion since ancient times, with philosophers such as Aristotle contemplating the relationship between events and their causes. However, it was in the modern era, particularly with the rise of empiricism and the scientific method, that the importance of distinguishing between correlation and causation became more apparent.
특정 입장을 지지하는 기술통계만을 이용하여 논설하는 것은 왜곡행위입니다. 호랭이 담배 피던 시절 '어용신문'의 선택적 사실보도를 진실왜곡, 편파보도라고 비판했었지요. 전강수 박사도 그랬는데(sample=population), 김 박사님도 그 걸 그대로 따라했습니다.
다음 주에는 또 다른 기술통계를 살펴보겠습니다.
반론하시지요.
이혁주 드림
BIS, 2019. Reporting Guidelines and Practices for the BIS International Banking Statistics. Monetary and Economic Department, Bank for International Settlements.
IMF, 2018. House Price Synchronization: What Role For Financial Factors?, Ch.3, Global Financial Stability Report: A Bumpy Road Ahead, International Monetary Fund, Monetary and Capital Markets Department.
Kim, Soyoung and Yang, Doo Yong, 2009. Do Capital Inflows Matter to Asset Prices? The Case of Korea. Asian Economic Journal, 23(3): 323-348.
Tillmann, Peter, 2013. Capital Inflows and Asset Prices: Evidence from Emerging Asia. Journal of Banking & Finance, 37: 717-729.
<첨부 1> <그림 9>용 자료 및 R 코드
BOP=read.csv(file.choose(),header=T)
#분석용 원자료 자료 내려받기(monthly level data). 1차 차분한 자료는 여기에서. 자료의 출처는 https://ecos.bok.or.kr/#/SearchStat -->국민계정-->국제수지표 --> 국제수지
Inflow=BOP$FDI_liab+BOP$Portfolio_liab+BOP$OtherInvt_liab
# FDI는 직접투자, Portfolio는 증권+파생금융상품 투자, OtherInvt는 기타투자. 자세한 용어설명은 한국은행 '알기 쉬운 경제지표 해설' 국제수지 참고. 국제수지상의 asset과 liability에 대한 정확한 설명은 IMF의 Balance of Payments and International Investment Position Manual Sixth Edition 참고. 여기서 liability는 우리가 언젠가 갚아야 할 것. 즉 외국인이 한국에 투자한 금액=capital inflow.
Outflow=BOP$FDI_asset+BOP$Portfolio_asset+BOP$OtherInvt_asset
#outflow는 한국사람이 외국에 투자한 금액. 즉 흘러나간 자금으로서 이는 해외 자산에 대한 한국인의 claim. 즉 한국인의 해외 자산. 여기서는 월간 변동액이므로 outflow(t)>0이면 t월에 해외 자산 매각해서 국내로 회수된 돈보다 해외로 투자한다고 나간 자금이 더 크다는 말. <그림 9>에 보면 outflow 누적곡선이 어떤 때는 감소하는데 이런 달에는 해외 투자가 해외 투자 회수보다 적었다는 것. 그림에서 inflow < outflow라는 말은 net international investment position이 한국이 경우 (+)라는 말. 즉 한국인의 대외 자산이 대외 부채보다 많아서 순채권국이라는 말.
In=0
for(n in 2:161){In[n]=In[n-1]+Inflow[n]}
Out=0
for(n in 2:161){Out[n]=Out[n-1]+Outflow[n]}
dates = seq(as.Date("2008-12-01"), as.Date("2022-04-01"), by = "month")
plot(dates,Out/1000,type='l',xlab='Year',ylab='Billion current US$')
lines(dates,In/1000,type='l',col='red')
text(dates[100],700,'Outflow')
text(dates[100],150,'Inflow')
잠시 housekeeping입니다. 지난 주까지 학력(學力)을 주제어로 논했던 이유는 참여관찰의 성격도 있지만 몇 달 전 진보 성향 scholar 두 사람과 막걸리 한 잔 하면서 나왔던 얘기가 계기가 되어 본격 다루게 되었습니다. 미국 행정학과 대학원 수업에서 reading list에 자주 포함되는 논문의 저자 가운데 한 분, 그리고 다른 한 분 역시 행정학의 존립이유인 공공성 연구를 선도하는 학자 등 두 사람과 함께 한 자리였습니다. 이 자리에서 학계의 scholarship 얘기가 나왔고, 그 연장선상에서 자세한 기술적 treatment가 필요하다고 보아 여기 논쟁 사이트에서 학력(學力)을 주제어로 다루게 되었습니다. 한 분은 일흔이 넘은 나이에도 재고 고치고 재고 고치고를 반복하는 학자인데 그 전체 과정이 theory building이고, 그 부분 구성요소가 낱개의 empirical proposition들이며, 그 방식이 여기서 보는 통계적 측정입니다. 계획가와 공학도, narrative scholarship을 추구하는 분들에게는 익숙한 일이 아닐 수도 있지만, narrative와 경험 현실간 실증적 연결고리를 담당하는 연구를 수행하는 전통과 학풍이 사회과학 일반에서는 일상적으로 이뤄지고 있습니다. 이것이 사회과학을 인문학이 아닌 과학이라고 부르는 이유입니다. 다소 의외일 수 있지만 2021년 Science에 행정학의 대표관료제과 범죄학의 중첩분야인 police killing에 관한 논문이 실렸는데(Ba et al,, 2021), 처음부터 끝까지 측정과 인과론에 관한 얘기입니다. 미국에서 police killing이 얼마나 심각한 주제인지 잘 아실 겁니다. 그곳 학자와 한국의 학자간 차이는 한쪽은 고대 그리스 방식의 speculative science를, 한쪽은 empiricism의 정수에 속하는 인과론을 가지고 논쟁한다는 것입니다. 한국이라는 동네에선 마찬가지로 심각한 주제에 관한 인과론적 논의가 심지어 조롱과 비난의 대상이 되고.
각설하고, 지난 주에 이어 <표 1> (1)번 칸을 채웁니다. GLI 지표를 세분하고 표를 확장했습니다. 지금까지 그랬던 것처럼 2008년 글로벌 금융위기 이후 자료를 이용합니다. 한국은행 소속 인사가 수행한 윤경우-김지현(2012: 19-20)에 따르면 2008년 이후 은행차입에 비해 포트폴리오(채권+주식) 자금의 유입이 뚜렷해졌고 전세계 유동성에서 신흥국이 차지하는 비중도 대폭 증가했다고 합니다. 포트폴리오 자금의 유입규모가 크게 증가했다는 것은 그만큼 자금의 용도가 이전과 달라졌다는 것을 의미하고 변동성도 대폭 증가했다는 것을 의미합니다. 또한 글로벌 과잉 저축, 통화정책 등 주택가격에 미치는 각종 영향의 비중이 2008년 전후로 서로 다르게 나타나기도 한다고 합니다(Evgenidis and Malliaris, 2023). 자료를 그 이전으로 확장하는 문제는 나중에 알아봅니다.
주소: https://data.bis.org/topics/GLI/data
<그림 1> BIS global liquidity indicators 데이터 포탈 초기 화면
<그림 1>은 BIS가 마련한 글로벌 유동성 지표(GLI) 자료 포탈 초기 화면입니다. 밑에 데이터를 맞춤형으로 추출하도록 선택 단추가 여러 개 제시되어 있습니다. 결론부터 말씀드리면 여기 메뉴에서 추출한 GLI로서 서울 집값에 유의하게 영향을 준 사례는 아직 찾지 못했습니다. 모두 유의도가 매우 실망적이었습니다. 주택가격은 주식, 채권가격하고 다른 것 같습니다.
BIS가 GLI를 말할 때는 non-bank borrower가 빌리는 외환 표시 자본을 의미하고, cross border 자본에 해당합니다.
The BIS uses the term “global liquidity” to refer to the ease of financing in global financial markets. The BIS global liquidity indicators (GLIs) track credit to non-bank borrowers, covering both loans extended by banks and funding from global bond markets through the issuance of international debt securities (IDS). The main focus is on foreign currency credit denominated in three major reserve currencies (US dollars, euros and Japanese yen) to non-residents, ie borrowers outside the respective currency areas.
출처: https://data.bis.org/topics/GLI
글로벌 유동성은 역외 신용 지표로서 여러가지를 사용해 측정합니다. BIS에서는 non-bank 차입자에 대한 통계로 GLI를 집계하지만, 여기서는 그럴듯해 보이는 것이라면 손에 잡히는 대로 가리지 않고 검토합니다. <첨부 1>에 자료 및 코드 있음.
[지수 1] 전세계 각국 bank borrower GDP 대비 역외신용. 내려받기 BIS 사이트는 여기, 자료의 선택은 여기 모양대로 할 것
[지수 2] 전세계 각국 all sector borrowers 역외신용 총계. 내려받기 BIS 사이트는 여기, 자료의 선택은 여기 모양대로
[지수 3] 한국 유입 역외자본. 단위: 백만불. KOSIS 자료화면은 여기 (화면에서 직접투자+증권투자+기타투자, level data, stationary)
[지수 4] 지표 3을 GDP로 나눈 값(US dollar-denominated GDP of Korea used)
[지수 5] Net capital flow to Korea as percent of GDP = (inflow - outflow)/GDP
[지수 6] 전 세계 non-bank borrower의 역외 신용 총액. 이메일 2024.3.26 <그림 7>의 곡선 AB. BIS 자료 내려받기 주소 및 자료화면 모양
금융조건의 국제전이(transmission)는 통상적으로 자본의 흐름을 통해 발생합니다(GFSR, 2018: 3장, p.98; Hirata et al., 2012). 따라서 이 지표의 검토는 다른 어떤 지표보다 중요합니다.
여기서 지표를 협의, 광의로 정의해 파악할 수 있습니다. 여기 분석에서는 광의의 지표를 사용했습니다. 이를테면 capital inflow 가운데 작지 않은 금액이 증권투자(주식, 채권)용으로 유입됩니다. 이런 금액까지 포함한 지표를 이용하겠다는 말입니다. 현실적으로 주택에 얼마나 투자되었는지 BIS나 한국은행 통계에는 없어서 그리 하지만, 다른 경제적 이유도 있습니다. Kim and Yang(2009: 334-335)에 그 이유가 잘 설명되어 있습니다.
첫째, 증권투자용으로 유입된 자본은 증권가격을 올리지만, 증권의 기대수익률을 낮추는 효과도 있어서 부동산과 같은 다른 자산에 대한 수요증가로 이어질 수 있다. 둘째, 해외자본의 유입은 그 자체 통화량과 유동성의 증가로 이어지고 자산가격을 자극하게 된다. 셋째, 해외 자본의 유입은 자본수입국의 경제활동을 촉진하고 수입국의 자산가격을 올리는 효과가 있다(이때 한국의 주택가격은 상대적으로 싸지게 됨. 역자 주석).
환언하면 유입되는 해외자본은 특정 자산의 가격을 올리지만 간접 혹은 일반균형 효과를 통해 다른 자산의 가격에도 영향을 미치기 때문에 이런 폭넓은 효과를 포착하기 위해 유입 자본의 양은 광의로 정의하고 측정할 필요가 있습니다.
이제 <표 1>에서 (1)번 칸을 채워보겠습니다. 오늘은 이것만 합니다. BIS global indicators 초기 화면에서 제공하는 자료는 분기자료인데 [지수 2]에서 GDP로 나누지 않고 내려받은 자료입니다. 1차 차분해 생성한 자료가 <첨부 1>에 변수명 Qt_change_World으로 있습니다. 이 글로벌 유동성 변수와 서울 아파트값 분기변화(포인트)간 상관관계를 구해 그리면 <그림 1>을 얻습니다. 그림에 따르면 같은 달 Price와 글로벌 유동성의 상관계수는 약 0.12(=x축 좌표 0에 위치한 실선의 높이)입니다. 매우 작고 따라서 유의하지 않습니다(그림의 점선 안쪽 즉 95% 신뢰구간 안에 포함되어 있는데 이는 상관계수를 0으로 봐도 좋다는 얘기).
어떤 분기를 t라 할 때 t분기 집값과 t분기 글로벌 유동성을 각각 Price(t), G_liq(t)라 하면 Price(t), G_liq(t)간 상관계수(contemporaneous correlation)가 0.12 정도됩니다(<그림 1>에서 원점 위로 그려진 직선의 높이). 서로 다른 분기에 속하는 Price와 G_liq 사이의 상관계수도 구할 수 있는데, 그림에 따르면 한 달 차이가 나는 Price와 G_liq 사이의 상관계수가 0.08~0.10 정도됩니다(<그림 1>에서 x축 좌표 +1, -1 위로 그려진 직선의 높이). 그림에 따르면 이격 기간을 어떻게 하든 서울 아파트값과 글로벌 유동성 변수간 상관성 매우 낮다는 것을 알 수 있습니다. 다시 말해 제대로 된 모형 즉 VAR모형을 이용해 다른 변수의 영향을 통제하고 보았을 때 글로벌 유동성 변수는 유의한 영향 변수로 측정될 것 같지 않다는 느낌을 받습니다. <그림 2>는 이전에 사용했던 VAR모형에서 중요변수로 사용했던 가계대출 별수 Debt과 Price 변수간 상관계수를 보여줍니다. 사뭇 다릅니다. 그림에서 ccf는 상관계수를 말하는데 교차 상관계수 cross-corelation function이라고 합니다. cross는 서로 다른 변수 사이라는 의미이고, function은 계수라는 말 대신 쓴 말입니다.
주...점선은 95% 신뢰구간의 상하한
<그림 1> 서울 아파트값 지수 Price와 글로벌 유동성 지수 1 간 상관계수
주...점선은 95% 신뢰구간의 상하한
<그림 2> 서울 아파트값 지수 Price와 가계대출 Debt의 교차 상관계수
나중에 VAR모형에서 집값 Price 방정식을 구하는데 아래와 같은 모양을 합니다.
Price(t)=a0+a1*Price(t-1)+a2*Price(t-2)+b1*G_liq(t-1)+b2*G_liq(t-2) (식1)
+c1*Debt(t-1)+c2*Debt(t-2) + 여타 변수
Price(t)와 G_liq(t-1)간 상관계수가 0.11, Price(t)와 G_liq(t-2)간 상관계수가 0.09라는 말은 (식1)에서 계수 b1, b2의 0과 통계적으로 구분되지 않을 만큼 작을 가능성을 시사합니다. 이때 b1, b2가 0이라는 영가설 H0은 부정하기 어렵게 되고 이들 계수는 통계적으로 0으로 처리됩니다. b1, b2가 0이라는 말은 뒤에 곱해지는 변수 G_liq(t-1), G_liq(t-2)가 어떤 값이어도 곱한 결과는 0이 된다는 말이고, 이 말은 식의 좌변 Price(t)는 글로벌 유동성에 영향을 받지 않는다가 되고, 이는 G_liq변수는 집값에 영향을 미치지 않는다는 것을 뜻합니다.
앞서 나열한 [지수 2]~[지수 5]과 서울 아파트값 사이의 교차 상관계수는 <첨부 1>에 있습니다. 앞서 본 결과와 차이가 없습니다. 집값과 Global liquidity, 집값과 한국의 자본유출입액 사이에 이렇다 할 상관성이 관찰되지 않았습니다. 김수현(2023)에서 visual inspection을 통해 내린 결론과 다른 결과입니다.
※ 지난 주 보았던 Tillmann(2012)에 따르면 한국의 경우 inflow가 집값에 '유의한' 영향을 주었다고 했음(국가 평균 p value=0.32; Figure 15 좌상 한국 제외 초록색 곡선 참고). 설명력이 100%인 유의한 영향도 있지만 설명력이 1%인 유의한 영향도 있을 수 있음. 이 양자의 구분은 매우 매우 중요. 여기 논쟁에서 어떤 의미를 가지는지 나중에 자세히 설명. 시중 통계프로그램에서도 VAR분석 출력물이 충격의 크기를 원자료의 단위를 이용해 보여주지 않음. 연구자가 직접 계산해야하는 번거로움 때문인지 통계적 유의성을 영향력과 등치로 놓는 경향이 있음. 김수현(2023)에서는 이런 계산조차 없고...
<표 2>는 오늘 논의한 결과를 정리해 보여줍니다. 다음 주에는 (1)번 칸을 채웁니다.
이혁주 드림
Ba, Bocar A., Dean Knoxs, Jonathan Mummolo and Roman Rivera, The Role of Officer and Gender in Police-Civilian Interactions in Chicago. Science 371: 696-702.
GFSR (Global Financial Stability Report), 2018. House Price Synchronization: What Role for Financial Factors? Global Financial Stability Report April 2018: A Bumpy Road Ahead, Ch. 3. International Monetary Fund.
Kim, Soyoung and Yang, Doo Yong, 2009. Do Capital Inflows Matter to Asset Prices? The Case of Korea. Asian Economic Journal, 23(3): 323-348.
Evgenidis, Anastasios and Malliaris, Anastasios, 2023. House Bubbles, Global Imbalances and Monetary Policy in the US. Journal of International Money and Finance, 138: 102919.
<첨부 1> 교차 상관계수 구하는 R 코드
BIS에서 [지수 1] 자료 내려받기 내려받는 곳. 2008.4사분기~2022.2사분기 글로벌 유동성. 내려 받을 자료의 특징이 어떻게 설정되었는지 유념해 볼 것. 아래에 쓰기 좋게 가공해 놓았음. 바로 내려 받아 써도 됨.
Ind1_level=read.csv(file.choose(),header=T) #지표1 분석용 원자료 내려받기 여기(level자료)
GLI1=diff(Ind1_level$ind1_level) # 54 entries from 2009 1Q to 2020 2Q
data=read.csv(file.choose(),header=T) #Price변수는 여기 자료에서 온 주택가격
attach(data)
# <그림 1> 그리기 = [지수 1]과 집값 사이의 교차 상관계수
# quaterly house price data 준비하기
Price.Q=array(0,c(53))
for(n in 1:53){from=3*(n-1)+2 # 첫 자료가 2008.12. 따라서 2009.1부터 읽어야 함=2번째 자료
to=3*n+1
Price.Q[n]=sum(Price[from:to]) # Price변수는 여기 자료에서 온 주택가격
}
result=ccf(Price.Q,GLI1[1:53])
plot(result, xlab="Lag in quarters", ylab="Cross correlation", main="집값 vs. GLI 지수 1") # <그림 1>이 그 결과물
# <그림 2> 그리기
result=ccf(Price,Debt) #Price와 Debt 사이의 ccf 구하기. 간혹 error message가 나올 수 있는데, 이 경우 remove(Price), remove(Debt)해서 변수명을 memory에서 지운 후 다시 실행할 것.
plot(result, xlab="Lag in months", ylab="Cross correlation", main="Price vs. Debt")
# [지수 2]와 집값 사이의 교차 상관계수 그림 그리기
위 프로그램에 이어서 아래 코드 실행
Ind2_level=read.csv(file.choose(),header=T) # 지수 2 자료 내려받기(level 자료) 여기
GLI2=diff(Ind2_level$Ind2) /1e6 # 54 entries from 2009 1Q to 2020 2Q. Divided by 1e6 just in case
result=ccf(Price.Q,GLI2[1:53])
plot(result, xlab="Lag in quarters", ylab="Cross correlation", main="집값 vs. GLI 지수 2")
결과물은 아래 <그림 3>.
<그림 3>
<그림 4>
[지수 3] 한국 유입 역외자본. KOSIS 자료화면은 여기 (화면에서 직접투자+증권투자+기타투자, level data, stationary) 1차 가공한 자료 내려받기, 2008.11부터 2022.4까지 내려받은 자료 이용
BOP=read.csv(file.choose(),header=T)
View(BOP)
attach(BOP)
Inflow=FDI_liab+Portfolio_liab+OtherInvt_liab # capital inflow to Korea
Inflow=diff(Inflow) # Generate the 1st differenced data.
x=ccf(Inflow,Price)
plot(x, xlab="Lag in quarters", ylab="Cross correlation", main="집값 vs. 자본유입액")
결과물은 위 <그림 4>.
[지수 4] 지수 3을 GDP로 나눈 값(US dollar-denominated GDP of Korea used)
gdp=matrix(c(1.0473,0.9439,1.1437,1.2533,1.2780,1.3706,1.4845,1.4660,1.4997,1.6231,1.7254,1.6514,1.6443,1.8184,1.6739),ncol=1) # annual data from 2008 to 2022 in trillion US dollars, currrent price, 자료 출처
level=read.csv(file.choose(),header=T) # 여타 level 자료 내려받기
View(level)
Inflow=BOP$FDI_liab+BOP$Portfolio_liab+BOP$OtherInvt_liab
Inflow_percent=array(0,c(162))
Inflow_percent[1]=Inflow[1]/gdp[1] # inflow[2008.11]/gdp[2008]
Inflow_percent[2]=Inflow[2]/gdp[1] # inflow[2008.12]/gdp[2008]
Inflow_percent[3]=Inflow[3]/gdp[2] # inflow[2009.1]/gdp[2009]. 복잡하면, 엑셀에서 작업하면 간단.
for(n in 4:162){t=(n-2)%/%12
Inflow_percent[n]=Inflow[n]/gdp[t+1]}
ccf(Inflow_percent,data$Price,xlab='lag in months',ylab='Cross correlation',main='집값 vs. Inflow/GDP')
결과물은 아래 <그림 5>.
<그림 5>
<그림 6>
[지수 5]와 집값 사이의 교차 상관계수 구하기
Net_flow=BOP$FDI_liab+BOP$Portfolio_liab+BOP$OtherInvt_liab
-BOP$FDI_asset+BOP$Portfolio_asset+BOP$OtherInvt_asset
Net_flow_percent=array(0,c(161))
Net_flow_percent[1]=Net_flow[1]/gdp[1] # Net_flow[2008.12]/gdp[2008]
for(n in 2:161){t=(n-1)%/%12
Net_flow_percent[n]=Net_flow[n]/gdp[t+1]}
ccf(Net_flow_percent,data$Price,xlab='lag in months',ylab='Cross correlation',main='집값 vs. Net flow/GDP') # 결과물은 <그림 6>
김수현 박사님 보세요.
지난 주에 <표 1>에서 빨간색 글자를 채웠습니다. 기술통계 분석에 따를 때, 글로벌 유동성은 서울의 집값과 상관도가 낮고 유의하지 않습니다. 오늘은 (1)번 칸을 채우는데, VAR모형을 이용해 교란요인을 통제하고 측정합니다. 김수현(2023), 이준구(2023)에는 이러한 실험적 통제(statistical control)가 등장하지 않습니다. 다른 사람도 마찬가지.
전강수 박사="공급하니 집값 올랐다." 공급 이외 요인 통제 없었음. "투기 때문에 올랐다." 투기 이외 요인 통제 없었음.
김경민 박사="유동성 때문에 집값 올랐다." 유동성 이외 요인 통제 없었음
통제된 실험실 환경에서 독립적 영향(independent effect)를 측정하고 영향의 크기를 측정해야 하는 이유는 간단합니다. 동조화 지수는 상관성 지수로서 다른 영향을 통제하지 않았기 때문에 independent effect를 측정한게 아닐 뿐만 아니라, 설령 인과성이 확인되었다고 해도 이것인 곧 정책적 관점에서 해당 요인의 meaningfulness를 의미하는 것은 아니라서 그렇습니다. <그림 1> 좌단에 있는 공식을 보면 동조화 지수는 일종의 상관계수입니다. 분모는 판박이고 분자는 summation하지 않은 것 제하고 모양이 똑같습니다. 그래서 지수명 앞에 quasi-라는 접두사를 붙였습니다.
출처: IMF(2018: 3장 부록)
<그림 1> 동조화 지수 공식
지난 주에 보았던 글로벌 유동성 지수 6가지 가운데 [지수 1], 즉 전세계 각국 bank borrower GDP 대비 역외신용 통계를 이용해 글로벌 유동성이 서울 집값에 미친 영향을 우선 평가합니다. 이 지수의 fitting이 상대적으로 좋은 것 같습니다. BIS에 있는 이 지표는 분기자료라서 월간자료로 변환한 후, 우리가 여러 차례 사용한 바 있던 국내 월간 자료와 합쳐 VAR모형 분석을 합니다.
어떤 분기 글로벌 유동성을 y, 해당 분기에 속하는 3달의 글로벌 유동성을 순서대로 x1, x2, x3라고 하면 x1+x2+x3=y가 됩니다. BIS가 제공하는 y값으로부터 월간 자료 x1, x2, x3를 2가지 서로 다른 방식으로 생성하는 방법에 대해 생각해 보겠습니다.
시나리오 1: x1=x2=x3=y/3
시나리오 2: x1, x2, x3는 independently and identically distributed (iid) normal random variables
글로벌 유동성 1차 차분 자료는 인접한 달 사이에 상관계수가 0.03으로서 매우 낮습니다. 따라서 상관성 측면에서 보았을 때, 실제 상황은 시나리오 2 상황과 비슷합니다. 간혹 시나리오 1 혹은 이에 준하는 방식으로 자료를 가공해 논문을 작성하는 논문들도 있습니다.
<그림 2> 확률변수 추출하기
시나리오 2를 이용해 월간 자료를 생성하는 방법을 예로 들어 보겠습니다. 지표 1을 내려받은 후 1차 차분해 정상화(stationary)하고 이 자료를 변수 GLI1이라고 하면, GLI1의 2009 Q1 값이 -0.537됨을 확인할 수 있습니다. <첨부 1> 참고. 즉 1월, 2월, 3월의 월간 지수를 x1, x2, x3이라고 할 때, x1+x2+x3=-0.537이 됩니다. 한편 GLI1의 평균과 표준편차가 각각 -0.008, 0.597이므로 x1, x2, x3를 평균과 표준편차가 -0.008, 0.597인 정규분포로부터 하나씩 세 차례 random generate해서 생성합니다. x1, x2, x3의 합이 -0.537이 되는지 확인하고 충족시키지 못하면 충족이 될 때까지 x1, x2, x3 조합을 생성합니다. 성공적으로 생성한 x1, x2, x3는 2009 Q1의 1월, 2월, 3월의 글로벌 유동성 변수의 값이 됩니다. 그 다음은 2009년 2사분기가 되고 여기서도 합이 2009 Q2의 글로벌 유동성 0.911이 되는 x1, x2, x3 조합을 찾습니다. 이 과정을 분석대상 기간 끝인 2022년 2사분기까지 반복해서 2022년 4월의 글로벌 유동성 지수까지 구합니다. 그 다음은 이렇게 생성한 월간 자료를 다른 월간 변수와 합쳐 VAR모형 하나를 측정합니다. 이런 과정을 100회(5분 소요), 시간 여유가 되면 10,000회도 해 봅니다.
<그림 2> Lutkepohl(2005) 등장 회귀계수의 분포에 관한 Theorem
Lutkepohl(2005: 74)이 회귀계수가 정규분포한다는 theorem을 수립하면서 오차항에 관해 white noise라는 standard assumption에 입각해 theorem을 수립합니다. 이 말은 Lutkepohl(2005: 74)에 있는 정리는 내생변수들의 분포와 관계 없이 여타 표준 가정(sylized assumptions)하에서 성립하는 theorem이라는 것을 뜻합니다. 그 이유는 모(母)분포와 관계 없이 성립하는 중심극한정리를 이용해 해당 정리를 수립하기 때문에 그렇습니다. 중심극한정리는 다시 대수의 법칙(law of large numbers)을 이용합니다. 그런데 normalize된 종속변수(LHS dependent variables of the VAR model)의 분포와 오차항의 분포가 동일하므로 오차항의 asymptotic variance-covariance marix를 이용해 y 계수의 asymptotic variance-covariance marix와 회귀계수의 분포(=정규분포의 기대치와 asymptotic variance-covariance marix)를 유도합니다.
다만 우리가 이용하는 표본이 여전히 소표본이므로 실험을 하면서 2가지를 주의합니다.
(1)글로벌 유동성 분기자료가 담고 있는 소표본의 sample statistics를 최대한 활용해 월간 자료를 구성합니다. 이 접근법은 여전히 타당하고 훌륭한 연구전략입니다.
(2)대표본의 경우 글로벌 유동성의 분포와 관계 없이 회귀계수가 정규분포하고 이를 이용해 각종 추론을 하지만, 실험결과의 분포의존 가능성은 여전히 존재하기 때문에 분포를 여러 가지로 변화시켜 가면서 실험결과의 대(對) 분포 robustness를 확인할 예정입니다. 만약 그럼에도 일관된 결과가 나오면 그 결과를 믿을 만하다고 수용하겠습니다.
주...시행횟수=100. 시나리오 2
<그림 1> Price equation에서 [지수 1] 회귀계수의 t값
주...시행횟수=100. 시나리오 2
<그림 2> 글로벌 유동성 변수 [지수 1]의 인과검정(설명력) p값
<그림 1>, <그림 2>는 글로벌 유동성을 [지수 1]로 측정하고 구한 VAR모형의 결과를 보여줍니다. 글로벌 유동성 월간 자료를 모두 100셋트 만들고 이를 이용해 표본을 100개 구성한 후 VAR모형을 100개 구했습니다. <그림 1>은 100개 VAR모형의 Price equation에서 글로벌 유동성 변수 회귀계수의 t값의 도수분포를 보여줍니다. t값이 대부분 유의하지 않습니다. 실험횟수를 100에서 10000회로 늘려도 마찬가지입니다(10000회 시행은 시간이 많이 걸려서 여기서는 생략). 만약 글로벌 유동성 변수가 양이든 음이든 집값에 영향을 준다면 회귀계수의 t값은 +2, -2 근처 혹은 그보다 절대값 기준 더 큰 값이어야 합니다. '그림은 전혀 아니다'입니다.
<그림 2>는 Price equation에서 글로벌 유동성 [지수 1]을 Price equation에 넣고 뺄 때 모형의 설명력을 비교한 결과입니다. Price equation에서 [지수 1]을 빼면 VAR모형의 전반적 설명력에 거의 변화가 없습니다. 그림에서 막대들이 0.05 근처 혹은 그 이하에 몰려 있어야 하지만 전혀 아닙니다. Price equaiton의 결정계수도 거의 변화가 없고요. 즉 이 변수는 있으나 마나한 변수입니다. 즉 포함해야 자유도만 잡아 먹는 변수라는 말씀입니다.
기록목적상 다른 글로벌 유동성 지수에 대해서도 똑같이 해보았습니다. 우선 [지수 2]입니다. 앞서 보았던 그림과 똑 같은 그림을 얻습니다. 나머지 지수들은 아래 <표 2>에 있습니다. 여기서도 같습니다.
[지수 2] 시나리오 2, 10,000회 시행(execution time=7.9 hours). <첨부 2> 참고. t값 분포도, p값 분포도
<표 2> 그랜저 인과성의 p value
--------------------------------------------------------------------------------------------------------
GLI 변수가 Price --> GLI GLI --> Price
--------------------------------------------------------------------------------------------------------
[지수 3]의 Inflow인 모형에서 0.353 0.842
[지수 3]의 Outflow인 모형에서 0.625 0.517
[지수 3]의 Netflow인 모형에서 0.650 0.726
[지수 4]의 Inflow/GDP인 모형에서 0.363 0.744
[지수 4]의 Outflow/GDP인 모형에서 0.463 0.737
[지수 5]의 Netflow/GDP인 모형에서 0.408 0.740
---------------------------------------------------------------------------------------------------------
주...[지수 3]은 <첨부 3>에, [지수 4]는 <첨부 4>에 R코드와 자료 있음. 제2행 0.353은 다음 가설의 결과. 영가설: Price 변수를 포함한 모형의 GLI 설명력이 Price 미포함 모형의 설명력과 차이가 없다. 대립가설: Price 변수를 포함한 모형의 GLI 설명력이 Price 미포함 모형의 설명력보다 현저하게 높다. p value=0.353이라는 말은 두 모형에서 산출한 통계를 이용해 구성한 검정통계량 chi square의 값이 0과 유의하게 다를 확률이 0.3753이라는 말. 만약 두 모형의 GLI 설명력이 별 차이가 없다면 검통통계량은 0 근처의 값이 되고 p value는 0보다 많이 큰 값이 될 것임.
측정 결과는 전체적으로 실망적입니다. 글로벌 유동성 변수는 설명력이 아주 안 좋습니다. GLI-->Price의 유의도는 정도가 심합니다.
끝으로 [지수 6]을 검토합니다. 이 지수는 다른 지수와 달리 2009년 이후 상승 추세가 뚜렷한 지수로서, 이메일 2024.3.26 <그림 7>의 곡선 AB입니다. <그림 3>, <그림 4>가 측정 결과입니다. <첨부 5> 참고.
<그림 3> Price equation에서 [지수 6] 글로벌 유동성 변수 회귀계수의 t값
<그림 4> Price equation에서 [지수 6] 글로벌 유동성 변수의 그랜저 인과검정 p값
이상 분석결과를 정리하면,
[정리] 어떤 지수를 사용하든 글로벌 유동성 지수(GLI)는 서울 주택가격을 설명하는 변수로서 유의도가 지나치게 낮다.
다음 주에는 모형의 lag을 과거로 더 확장해보고(sustained effect), 집값에 미친 영향도 직접 측정합니다. 엄격히 말하면 상관성 분석과 유의도 측정은 격화소양(隔靴搔癢)입니다. 지금까지는 한두 달 전 변수의 영향만 고려했고, 영향의 크기는 논외였습니다.
이혁주 드림
김수현. 2023. 부동산과 정치. 경기도 파주: 오월의봄.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
IMF, 2018. House Price Synchronization: What Role For Financial Factors?, Ch.3, Global Financial Stability Report: A Bumpy Road Ahead, International Monetary Fund, Monetary and Capital Markets Department.
<첨부 1> [지수 1], 시나리오 2 하에서
data=read.csv(file.choose(),header=T) # 자료 내려받기
# save the dataset and read it using the command at the LHS.
attach(data)
library(vars)
remove(Price,Debt,Park,Moon,Pandemic) # 변수명 cleaning 스텝. 간혹 이전 흔적이 남아 실행상에 불필요한 오류 발생
# 아래 코드는 주어진 분기자료 값을 이용해 해당 분기에 속한 3달의 월간 글로벌 유동성 x1, x2, x3를 생성하는 서브루틴.
generate_values <- function() {
while (TRUE) {
# Generate random values from the same normal distribution.
#We assumed three iid normals, so we draw each number separately as shown below.
x_prime <- rnorm(1,mean=mu, sd=stdev) # 1은 정규분포에서 random number 1개 뽑으라는 말
y_prime <- rnorm(1, mean=mu, sd= stdev) # <- 는 등호 =와 같은 기능. 바꾸어 써도 됨.
z_prime <- rnorm(1, mean=mu, sd= stdev)
# Calculate the sum.
s <- x_prime + y_prime + z_prime
# Check if the sum is close to 1
epsilon <- 1e-3
#We check if the sum is close to the quarterly change under consideration.
if (abs(s - quarterly_change) < epsilon) {
# If yes, we set these three numbers equal to x1=x, x2=y, and x3=z.
x <- x_prime
y <- y_prime
z <- z_prime
return(c(x, y, z))}
}}
# End of function(). ChatGPT의 도움을 받아 작성한 코드. 달나라 갈 때 쓰던 프로그램 언어 Fortran에서 말하는 서브루틴.
#이제 이 서브 루틴을 아래에서 불러 씀(빨간 색 코드).
Ind1_level=read.csv(file.choose(),header=T) #지수 1 분석용 원자료 내려받기 여기(level자료)
library(urca)
x=ur.df(Ind1_level$ind1_level,tpe='drift')
summary(x) # Nonstationary
Ind1=diff(Ind1_level$ind1_level) # 54 entries from 2009 Q1 to 2022 Q2
mu=mean(Ind1) # sample mean
stdev=sd(Ind1) # sample standard deviation
G_liq1=array(0,c(159)) # 3 monthly changes are generated and stored in the data column G_liq1.
GLI1=array(0,c(161))
trials=100
# We do this experiment 100 times. That is, 100 sets of 161 monthly changes of G_liq.
t_values=array(0,c(trials)) # t values of G_liq in the Price equation are stored in this variable.
p_values=array(0,c(trials))
start=proc.time() # 수행시간 측정시작. 10000회 시행시 약 50분 소요. 그래서 100회만 시행.
#Begin the trials loop.
for(j in 1:trials){
for(n in 1:53){from=1+3*(n-1) # 54번째 자료는 2022 Q2는 제외.
to=3*n
quarterly_change=Ind1[n] # 1차 차분한 자료. 위에 있는 스텝 참고
G_liq1[from:to]=generate_values()
} #위에서 만든 함수, 여기서 불러 씀.
GLI1[2:160]=G_liq1 # 2009.1 to 2022.3
GLI1[1]=G_liq1[1] # Fill out 2008.12, which is assumed to equal 2009.1.
GLI1[161]=Ind1[54]/3 # Value of 2022.4 = Ind1[2022.Q2]/3
# We are ready to run a new VAR model.
endo=cbind(Price,Debt) # Price, Debt만 이용해도 됨. 결과 차이 없음.
exo=cbind(Park,Moon,Pandemic,GLI1) #GLI가 여기서 보듯이 외생변수. 이론이 있을 수 없는 외생변수.
model=VAR(endo,p=2,exogen=exo)
t_values[j]=coef(model)$Price[9,3] # 추정한 Price equation에서 GLI1 변수 회귀계수의 t값 추출해 저장하기.
# Log likelihood ratio test of GLI1 variable
constraint=matrix(c(1,1,1,1,1, 1,1,1,0, # Price equation에서 GLI1의 계수를 0으로 놓기
1,1,1,1,1, 1,1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint) #Price 방정식에서 GLI1 변수를 제거한 VAR모형 추정하기
chi2=2*(logLik(model)-logLik(R_model)) # GLI1를 제거한 모형의 설명력이 포함한 모형에 비해 크게 차이가 나는지 통계량 chi2 구하기
p_values[j]=1-pchisq(chi2,1) # 산출한 chi2 통계량의 유의도 구하기. p값이 클수록 설명력에서 차이가 없다는 뜻. 이 경우 GLI1 변수는 있으나 마나 한 변수가 됨.
}
end=proc.time() # 수행시간 측정마감
time_elapsed=end-start # 수행시간 측정
time_elapsed
hist(t_values,xlab='t values')
hist(p_values,xlab='p values')
<첨부 2> 지수 2, 시나리오 2 하에서
앞서 살펴본 [지수 1]용 코드와 다 같고 파란색 부분에서 기호명만 다름. 그리고 [지수 2] 자료는 아래 지시에 따라 내려 받음.
remove(Price) # 변수명 cleaning 스텝. 간혹 이전 흔적이 남아 실행상에 불필요한 오류 발생
remove(Debt)
remove(Park)
remove(Moon)
remove(Pandemic) # 변수명 cleaning 스텝 끝.
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
# 아래 코드는 주어진 분기자료 값을 이용해 해당 분기에 속한 3달의 월간 글로벌 유동성 x1, x2, x3를 생성하는 서브루틴.
generate_values <- function() {
while (TRUE) {
# Generate random values from the same normal distribution.
#We assumed three iid normals, so we draw each number separately as shown below.
x_prime <- rnorm(1,mean=mu, sd=stdev) # 1은 정규분포에서 random number 1개 뽑으라는 말
y_prime <- rnorm(1, mean=mu, sd= stdev) # <- 는 등호 =와 같은 기능. 바꾸어 써도 됨.
z_prime <- rnorm(1, mean=mu, sd= stdev)
# Calculate the sum.
s <- x_prime + y_prime + z_prime
# Check if the sum is close to 1
epsilon <- 1e-3
#We check if the sum is close to the quarterly change under consideration.
if (abs(s - quarterly_change) < epsilon) {
# If yes, we set these three numbers equal to x1=x, x2=y, and x3=z.
x <- x_prime
y <- y_prime
z <- z_prime
return(c(x, y, z))}
}}
# End of function()
#이제 이 서브 루틴을 아래에서 불러 씀(빨간 색 코드).
Ind2_level=read.csv(file.choose(),header=T) #[지수 2] 분석용 원자료 내려받기 여기(level자료)
library(urca)
x=ur.df(Ind2_level$Ind2,type='drift')
summary(x) # Nonstationary
Ind2=diff(Ind2_level$Ind2)/1e5 # 54 entries from 2009 Q1 to 2022 Q2
mu=mean(Ind2) # sample mean
stdev=sd(Ind2) # sample standard deviation
G_liq2=array(0,c(159)) # 3 monthly changes are generated and stored in the data column G_liq2.
GLI2=array(0,c(161))
trials=10000 #[지표 1]에서는 100회 시행. 여기선 대폭 늘렸음. 시행 횟수에 대한 민감도 확인차. 결과=변화 없음. cpu time = 7.9 hours on desktop computers.
# We do this experiment 10000 times. That is, 10000 sets of 161 monthly changes of G_liq.
t_values=array(0,c(trials)) # t values of G_liq in the Price equation are stored in this variable.
p_values=array(0,c(trials))
start=proc.time() # 수행시간 측정시작. 10000회 시행시 약 8시간 소요
#Begin the trials loop.
for(j in 1:trials){
for(n in 1:53){from=1+3*(n-1) # 54번째 자료는 2022 Q2는 제외.
to=3*n
quarterly_change=Ind2[n]
G_liq2[from:to]=generate_values()
} #위에서 만든 함수, 여기서 불러 씀.
GLI2[2:160]=G_liq2 # 2009.1 to 2022.3
GLI2[1]=G_liq2[1] # Fill out 2008.12, which is assumed to equal 2009.1.
GLI2[161]=Ind2[54]/3 # Value of 2022.4 = Ind1[2022.Q2]/3
# We are ready to run a new VAR model.
endo=cbind(Price,Debt) # 내생변수 4개 사용. Price, Debt만 이용해도 됨. 결과 동일.
exo=cbind(Park,Moon,Pandemic,GLI2) #GLI가 여기서 보듯이 외생변수로 이용됨.
model=VAR(endo,p=2,exogen=exo)
t_values[j]=coef(model)$Price[9,3] # 추정한 Price equation에서 GLI1 변수 회귀계수의 t값 추출해 저장하기.
# Log likelihood ratio test of GLI1 variable
constraint=matrix(c(1,1,1,1,1, 1,1,1,0, # Price equation에서 GLI2의 계수를 0으로 놓기
1,1,1,1,1, 1,1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint) #Price 방정식에서 GLI1 변수를 제거한 VAR모형 추정하기
chi2=2*(logLik(model)-logLik(R_model)) # GLI2를 제거한 모형의 설명력이 포함한 모형에 비해 크게 차이가 나는지 통계량 chi2 구하기
p_values[j]=1-pchisq(chi2,1) # 산출한 chi square 통계량의 유의도 구하기. p값이 클수록 설명력에서 차이가 없다는 뜻. 이 경우 GLI2 변수는 있으나 마나 한 변수가 됨.
}
end=proc.time() # 수행시간 측정마감
time_elapsed=end-start # 수행시간 측정
time_elapsed
hist(t_values,xlab='t values')
hist(p_values,xlab='p values')
<첨부 3> [지수 3], 시나리오 2 하에서
remove(Price) # 변수명 cleaning 스텝. 간혹 이전 흔적이 남아 실행상에 불필요한 오류 발생
remove(Debt)
remove(Park)
remove(Moon)
remove(Pandemic) # 변수명 cleaning 스텝 끝.
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
Ind3=read.csv(file.choose(),header=T) #[지표 3] 분석용 원자료 자료 내려받기(monthly level data)
Inflow=FDI_liab+Portfolio_liab+OtherInvt_liab
Inflow=Inflow/1e4 # 다른 변수들과 scale을 비슷하게 만들기 위해 1e4로 나누어 줌. 이리 하는게 안전
sum(Inflow) # 52.64. 즉 분석대상 기간 한국으로 유입된 해외 자본 총량은 52.64
Outflow=FDI_asset+Portfolio_asset+OtherInvt_asset
Outflow=Outflow/1e4 # 다른 변수들과 scale을 비슷하게 만들기 위해 1e4로 나누어 줌. 이리 하는게 안전
Netflow=Inflow-Outflow
(1) BOP account에서 부채(liability)으로 분류된 계정은 내국인의 net incurrence of of financial liabilities를 의미. 이를테면 한국 기업이 발행한 회사채를 외국인이 매입하면, 한국 입장에서는 해외자본이 국내로 들어온 것이 되고 돈을 빌린 것 즉 부채. (+)는 외국인의 한국자산(주식, 채권 등) 취득액이 매각액보다 크다는 말.
(2) BOP account에서 자산(asset)으로 분류된 계정은 내국인의 net acquisition of financial assets을 의미. 이 경우 outflow가 됨. 내국인이 해외 자산을 구입한 것이 되므로. (+)은 자산 취득>자산매각. (-)는 그 반대.
(3) 참고문헌: IMF BOP 매뉴얼, BIS 통계 안내 책자, 한국은행 알기 쉬운 경제지표 해설(이 분야 논문을 쓰고 싶은 연구자는 3권 모두 반드시 읽어볼 것)
주...화면 오른쪽에 새로 부여한 변수명 있음. 표에 따르면 2008년 12월 한국인의 해외 직접투자 1453.3이 외국인의 對한국 직접투자 1494.0보다 많았음. 자료 내려받기는 여기
<그림> 한국은행 국제수지 통계
library(urca) # stationarity 검증
x=ur.df(Inflow,type='drift')
summary(x) # stationary
x=ur.df(Outflow,type='drift')
summary(x) # stationary
endo=cbind(Price,Debt)
endo_inflow=cbind(Price,Debt,Inflow)
endo_outflow=cbind(Price,Debt,Outflow)
exo=cbind(Park,Moon,Pandemic)
model_inflow=VAR(endo_inflow,p=2,exogen=exo)
model_outflow=VAR(endo_outflow,p=2,exogen=exo)
constraint=matrix(c(1,1,0, 1,1,0, 1,1,1,1, # Price equation에서 capital flow의 계수를 0으로 놓기
1,1,1, 1,1,1, 1,1,1,1,
1,1,1, 1,1,1, 1,1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model_inflow, method="man", resmat=constraint)
chi2=2*(logLik(model_inflow)-logLik(R_model))
p_value=1-pchisq(chi2,2) # 0.353
R_model=restrict(model_outflow, method="man", resmat=constraint)
chi2=2*(logLik(model_outflow)-logLik(R_model))
p_value=1-pchisq(chi2,2) # 0.625
model_netflow=VAR(endo_netflow,p=2,exogen=exo)
R_model=restrict(model_netflow, method="man", resmat=constraint)
chi2=2*(logLik(model_netflow)-logLik(R_model))
p_value=1-pchisq(chi2,2) #0.650
constraint=matrix(c(1,1,1, 1,1,1, 1,1,1,1, # Capital flow equation에서 capital flow의 계수를 0으로 놓기
1,1,1, 1,1,1, 1,1,1,1,
0,1,1, 0,1,1, 1,1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model_inflow, method="man", resmat=constraint)
chi2=2*(logLik(model_inflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.842
R_model=restrict(model_outflow, method="man", resmat=constraint)
chi2=2*(logLik(model_outflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.517
model_netflow=VAR(endo_netflow,p=2,exogen=exo)
R_model=restrict(model_netflow, method="man", resmat=constraint)
chi2=2*(logLik(model_netflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.726
<첨부 4> [지수 4], [지수 5]용 R 코드
remove(Price) # 변수명 cleaning 스텝. 간혹 이전 흔적이 남아 실행상에 불필요한 오류 발생
remove(Debt)
remove(Park)
remove(Moon)
remove(Pandemic) # 변수명 cleaning 스텝 끝.
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
BOP=read.csv(file.choose(),header=T) #[지표 3] 분석용 원자료 자료 내려받기(monthly level data)
GDP=matrix(c(1047339010225,943941876219,1143672241150,1253289537501,1278046536287,1370632955321,1484488526272,1466038936206,1499679823910,1623074183502,1725373496825,1651422932448,1644312831906,1818432106880,1673916469027),ncol=1) # Current GDP of Korea in US dollars from 2008 to 2022. 세계은행에서
Inflow=BOP$FDI_liab+BOP$Portfolio_liab+BOP$OtherInvt_liab # stationarity 이미 확인됨
Inflow_GDP=array(0,c(161)) # GDP 대비 capital inflow to Korea. BOP data of the BOK used
Inflow_GDP[1]=Inflow[1]/GDP[1]*1e9 # 2008.12. Divided by GDP[2008]
Inflow_GDP[2]=Inflow[2]/GDP[2]*1e9 #2009.1. Divided by GDP[2009]
Inflow_GDP[3]=Inflow[3]/GDP[2]*1e9 #2009.2. Divided by GDP[2009]
Outflow=BOP$FDI_asset+BOP$Portfolio_asset+BOP$OtherInvt_asset # stationarity 확인해 볼 것
Outflow_GDP=array(0,c(161)) # GDP 대비 capital outflow to Korea. BOP data of the BOK used
Outflow_GDP[1]=Outflow[1]/GDP[1]*1e9 # 2008.12. Divided by GDP[2008]
Outflow_GDP[2]=Outflow[2]/GDP[2]*1e9 #2009.1. Divided by GDP[2009]
Outflow_GDP[3]=Outflow[3]/GDP[2]*1e9 #2009.2. Divided by GDP[2009]
Netflow_GDP=array(0,c(161))
Netflow_GDP[1]=Inflow[1]-Outflow[1] # 2008.12. Divided by GDP[2008]
Netflow_GDP[2]=Inflow[2]-Outflow[2] #2009.1. Divided by GDP[2009]
Netflow_GDP[3]=Inflow[3]-Outflow[3] #2009.2. Divided by GDP[2009]
for(n in 4:161){t=(n-1)%/%12.01+1
Inflow_GDP[n]=Inflow[n]/GDP[t]*1e9
Outflow_GDP[n]=Outflow[n]/GDP[t]*1e9
Netflow_GDP[n]=Inflow[n]-Outflow[n]
}
endo=cbind(Price,Debt)
endo_inflow=cbind(Price,Debt,Inflow_GDP)
endo_outflow=cbind(Price,Debt,Outflow_GDP)
endo_netflow=cbind(Price,Debt,Netflow_GDP)
exo=cbind(Park,Moon,Pandemic)
model_inflow=VAR(endo_inflow,p=2,exogen=exo)
model_outflow=VAR(endo_outflow,p=2,exogen=exo)
model_netflow=VAR(endo_netflow,p=2,exogen=exo)
Flow_Price=matrix(c(1,1,0, 1,1,0, 1,1,1,1, # Price equation에서 capital flow의 계수를 0으로 놓기
1,1,1, 1,1,1, 1,1,1,1,
1,1,1, 1,1,1, 1,1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model_inflow, method="man", resmat=Flow_Price)
chi2=2*(logLik(model_inflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.744
R_model=restrict(model_outflow, method="man", resmat=Flow_Price)
chi2=2*(logLik(model_outflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.737
R_model=restrict(model_netflow, method="man", resmat=Flow_Price)
chi2=2*(logLik(model_netflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.740
Price_Flow=matrix(c(1,1,1, 1,1,1, 1,1,1,1, # Capital flow equation에서 Price의 계수를 0으로 놓기
1,1,1, 1,1,1, 1,1,1,1,
0,1,1, 0,1,1, 1,1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model_inflow, method="man", resmat=Price_Flow)
chi2=2*(logLik(model_inflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.363
R_model=restrict(model_outflow, method="man", resmat=Price_Flow)
chi2=2*(logLik(model_outflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.463
R_model=restrict(model_netflow, method="man", resmat=Price_Flow)
chi2=2*(logLik(model_netflow)-logLik(R_model))
1-pchisq(chi2,2) # 0.408
<첨부 5> [지수 6]을 이용할 때
[지수 6] 글로벌 유동성을 전 세계 non-bank borrower의 역외 신용 총액으로 측정할 때. 이메일 2024.3.26 <그림 7>의 곡선 AB. BIS 자료 내려받기 주소 및 자료화면 모양
remove(Price,Debt,Park,Moon,Pandemic) # 변수명 cleaning 스텝. 간혹 이전 흔적이 남아 실행상에 불필요한 오류 발생
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
# 아래 코드는 주어진 분기자료 값을 이용해 해당 분기에 속한 3달의 월간 글로벌 유동성 x1, x2, x3를 생성하는 서브루틴.
generate_values <- function() {
while (TRUE) {
# Generate random values from the same normal distribution.
#We assumed three iid normals, so we draw each number separately as shown below.
x_prime <- rnorm(1,mean=mu, sd=stdev)
y_prime <- rnorm(1, mean=mu, sd= stdev)
z_prime <- rnorm(1, mean=mu, sd= stdev)
# Calculate the sum.
s <- x_prime + y_prime + z_prime
# Check if the sum is close to 1
epsilon <- 1e-3
#We check if the sum is close to the quarterly change under consideration.
if (abs(s - quarterly_change) < epsilon) {
# If yes, we set these three numbers equal to x1=x, x2=y, and x3=z.
x <- x_prime
y <- y_prime
z <- z_prime
return(c(x, y, z))}
}}
# End of function()
#이제 이 서브 루틴을 아래에서 불러 씀(빨간 색 코드).
Ind5_data=read.csv(file.choose(),header=T) #지수 6 분석용 원자료 내려받기 여기(level자료, 데이터명은 5로 되어 있음)
attach(Ind5_data) # [지수 6]임. 최초에 프로그래밍할 때 오타가 있었는데 그대로 쓰기로 함.
library(urca)
x=ur.df(Ind5,type='drift')
summary(x) # nonstationary. 따라서 아래 줄에서 보듯이 1st differencing해 자료 이용.
Ind5=diff(Ind5_data$Ind5)/5e5 # 55 entries from 2008 Q4 to 2022 Q2. 숫자를 다른 변수들과 비슷한 스케일로 만들기 위해 5e5=500,000로 나누어 줌.
mu=mean(Ind5) # sample mean
stdev=sd(Ind5) # sample standard deviation
G_liq5=array(0,c(159)) # 3 monthly changes are generated and stored in the data column G_liq1.
GLI5=array(0,c(161))
trials=1000 # 약 10분 정도 소요
# We do this experiment 1000 times. That is, 1000 sets of 161 monthly changes of G_liq.
t_values=array(0,c(trials)) # t values of G_liq in the Price equation are stored in this variable.
p_values=array(0,c(trials))
start=proc.time() # computing time 측정시작
#Begin the trials loop.
for(j in 1:trials){
for(n in 1:53){from=1+3*(n-1) # 54번째 자료 2022 Q2는 제외. 이건 그냥 3으로 나누어서 쓰자.
to=3*n
quarterly_change=Ind5[n+1] # Ind5[2]=Ind5[2009 Q1]부터 사용
G_liq5[from:to]=generate_values()
} #위에서 만든 함수, 여기서 불러 씀.
GLI5[2:160]=G_liq5 # 2009.1 to 2022.3
GLI5[1]=Ind5[1]/3
GLI5[161]=Ind5[55]/3 # Value of 2022.4 = Ind5[2022.Q2]/3
# We are ready to run a new VAR model.
endo=cbind(Price,Debt) # 내생변수 2개 사용. Price, Debt만 이용해도 됨. 결과 동일.
exo=cbind(Park,Moon,Pandemic,GLI5) #GL5는 외생변수. 한국=small economy
model=VAR(endo,p=2,exogen=exo)
t_values[j]=coef(model)$Price[9,3] # 추정한 Price equation에서 GLI5 변수 회귀계수의 t값 추출해 저장하기
# Log likelihood ratio test of GLI6 variable
constraint=matrix(c(1,1,1,1,1, 1,1,1,0, # Price equation에서 GLI5의 계수를 0으로 놓기
1,1,1,1,1, 1,1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model, method="man", resmat=constraint) #Price 방정식에서 GLI5 변수를 제거한 VAR모형 추정하기
chi2=2*(logLik(model)-logLik(R_model)) # GLI5를 제거한 모형의 설명력이 포함한 모형에 비해 크게 차이가 나는지 통계량 chi2 구하기
p_values[j]=1-pchisq(chi2,1) # 산출한 chi2 통계량의 유의도 구하기. p값이 클수록 설명력에서 차이가 없다는 뜻. 이 경우 GLI5 변수는 있으나 마나 한 변수가 됨.
}
end=proc.time() # 수행시간 측정마감
time_elapsed=end-start # 수행시간 측정
time_elapsed # 수행시간 출력
hist(t_values,xlab='t values',main='Experiment of 1000 trials') # 결과물 <그림 3>
hist(p_values,xlab='p values',main='Experiment of 1000 trials') # 결과물 <그림 4>
김수현 박사님께
지난주에 글로벌 유동성 지수(GLI) 6가지를 검토했습니다. 이들 지수 가운데 집값 설명요인으로 마땅한 것이 없었습니다. 그러나 좀 더 검토해 볼 여지도 있었습니다. 두 가지입니다.
한계 1: 제한된 범위내에서 시차(lag) 고려
<표 1>에서 보듯이 GLI를 외생변수로 취급한 VAR모형에서 GLI는 직전 달 값만이 다음 달 집값에 영향을 미치는 것으로 보았습니다(빨간 숫자). 이번 주에는 이번 달뿐 아니라 이전 여러 달 글로벌 유동성 GLI도 이번 달 집값에 영향을 미치는 것으로 보고 다시 측정하겠습니다. 즉 GLI(t)뿐 아니라 GLI(t-1), GLI(t-2) ... 등도 Price(t)에 영향을 미친다고 보고 다시 측정합니다.
<그림 1> 영향의 크기 vs. 영향의 불확실성
한계 2: 영향의 크기 vs 영향의 불확실성
설명변수로서 GLI가 통계적으로 유의도가 떨어지기는 했지만, 잠재적 영향력은 클 수도 있습니다. 이를테면 <그림 1> (b)에서와 같이 GLI의 집값 영향력이 통계적 유의도가 낮아서, GLI가 GLI0일 때 집값이 취하는 값이 Y1~Y2로서 광범위한 값을 취할 수 있습니다. 이때 집값이 Y2을 취하는 경우 그 파괴적 영향이 무척 크게 나타날 것입니다. 원자력 발전소에서 심각한 사고가 날 가능성은 매우 매우 낮지만, 일단 사고가 나면 큰일인 것과 마찬가지입니다. 따라서 GLI의 통계적 유의도만 보고 관심 대상에서 바로 지워버리는 것은 그렇게 현명한 처사는 아닙니다.
이제 본격검토 시작합니다. 재검토 대상 지표 가운데 일부는 분기 자료였습니다. 월간 자료가 각 분기에서 균일분포(uniform distribution)한다고 보고 추정하겠습니다. 이는 이메일 2024.4.17에 등장했던 시나리오 1에 의한 월간자료 생성방식입니다. 즉 어떤 분기의 GLI가 한 단위 변할 때 이 분기에 속하는 석 달의 월간 GLI 변화는 1/3단위가 됩니다. 아래 <표 2>는 측정결과입니다. 여기서 사용한 시나리오 1의 정당한 근거는 다음과 같습니다.
1. capital flow가 그렇게 중요한 요인이라면 무언가 징조가 잡혀야 합니다.
2. 시나리오 2가 좀 더 사실과 가까운 시나리오이지만, 아래 <표 2>에서 보는 p value는 지난 주 이메일 <그림 2>에서 본 typical p value이다. 다른 지수들도 마찬가지이다. 지난 주 이메일 <표 2>의 p value 참고.
<표 2> captial flow가 문재인 정부시기 5년간 서울 집값에 미친 영향
--------------------------------------------------------------------------------------------------------------------------------------------
주택가격에 지수 설명력 문 정부 때 오른
GLI 미친 영향 의 p value 집값 38.4포인트의 비 고
(1) (2) (3) (4)
--------------------------------------------------------------------------------------------------------------------------------------------
[지수 1] -2.11 0.460 5.5% <첨부 1>, z=0.74
Moon의 영향=+39.2포인트
--------------------------------------------------------------------------------------------------------------------------------------------
[지수 2] +4.86 0.366 12.6% <첨부 2>, z=0.90
--------------------------------------------------------------------------------------------------------------------------------------------
[지수 5] +5.35 0.319 13.9% <첨부 4>, z=0.99
Moon의 영향=+28.94포인트
Pandemic의 영향=+13.11포인트
--------------------------------------------------------------------------------------------------------------------------------------------
주... "지표의 p value"는 해당 GLI의 설명력(그랜저 인과검정, two-tailed test). p값은 0 ~ 1.0의 값을 취하고, 이 값이 낮을수록 해당 GLI의 설명력이 높음. 이 경우 모형에 포함하는 것이 좋음. 비고란 z=0.74를 구하는 R 코드는 qnorm(1-0.460/2,0,1).
GLI의 시차 즉 lag을 1~18(단위: 월)으로 해서 GLI 변수를 다시 꾸며 측정했습니다. 그 결과가 <표 2>에 있습니다. 지표에 따라 집값을 예상과 집값을 내리기도 합니다(지수 1), 유의하지도 않고 그 크기도 문재인 정부 때 오른 집값 38.4포인트와 비교해 매우 작습니다. 표에서 p value 0.3 이상은 standard normal z를 기준으로 z=1.0 혹은 그 이하 값이 됩니다. 이런 통계량을 보이는 확률변수는 보통 그냥 없던 일로 쳐야 합니다. GLI들이 유의하다고 해도 팬데믹과 같은 불가피한 요인 때문에 상승한 집값을 제외하고 상승한 집값 이상으로 Moon 정권요인 때문에 서울 집값이 올랐습니다. 지금까지 관찰했던 바, 일관된 결과입니다.
주...net capital flow=inflow - outflow. <첨부 3>
<그림 2> [지수 3] Net capital flow가 1단위 증가할 때 이후 집값에 미치는 누적영향
주...<첨부 3>에 자료와 R 코드 있음. <첨부 3>
<그림 3> [지수 3] Captial inflow가 1단위 증가했을 때 이후 집값에 미치는 누적영향
GLI를 [지수 3]으로 놓고 검토해도 마찬가지입니다. <그림 2>, <그림 3>이 그 결과인데, 이 지수는 한국은행 국제수지 데이터셋에서 추출한 통계입니다. 지수가 +1 증가할 때 이후 집값이 받는 영향 누적치를 이들 그림이 보여줍니다. 유의도도 문제가 되지만, 해석이 쉽지 않습니다. Net flow가 (+)이면 서울 집값은 장기간 하락 압력을 받습니다. <그림 3> inflow의 경우도 비슷합니다. 집값이 오르는 시기도 있지만, 짧지 않은 기간 하락압력을 받는다는 것은 이해가 잘 안 됩니다.
<그림 2>, <그림 3>처럼 난해한 결과가 나온 것은 GLI가 서울 집값의 상승원인이라고 믿고 통계적 유의도를 고려하지 않고 무리해서 모형을 만듦으로써 초래된 결과인 것 같습니다. 문재인 정부 집값 상승원인을 유동성으로 돌리려는 '의도'를 가지고 분석했다고 비판 받기 좋은 분석입니다. 심사자 B라면 이런 분석의 작위성을 보고 용납하지 않을 것 같습니다(line 67-68). 그런대도 김수현 박사의 기대에 반하는 결과가 나왔습니다. 유감입니다. 애 쓴다고 되는 문제가 아닌 것 같습니다.
<그림 4>에서 VAR모형을 선택할 때 사용하는 대표적 적합도 지수(adequacy index)의 criteria값을 볼 수 있습니다. 이들 index에 따르면 최적 차수(lag)는 1,2 정도 됩니다(index가 낮을수록 좋은 차수). 차수가 늘어나면서 모형의 적합도 지수가 커집니다. 반면 <그림 5>에 따르면, 추정한 VAR모형 Price equation의 R square는 별 변화가 없습니다. 공연한 짓 하는 것 같습니다.
<그림 4> VAR모형의 최적 차수(lag) 선정에 사용하는 Adequacy index
<그림 5> VAR모형 Price equation의 R square
지난 2주간 논의한 결과를 아래와 같이 정리합니다.
[정리] 글로벌 유동성 지수로서 어떤 것을 사용하든 이 지수는 서울 주택가격의 설명변수로서 유의도가 지나치게 낮다. 문재인 정부 때 오른 집값 대부분이 문재인 정권요인 때문이라는 결론에는 변함이 없다.
[전강수, 김경민, 김수현에 등장하지 않는 개념] 영향의 통계적 유의도, 영향의 크기, 영향의 크기 vs. 영향의 불확실성, 실험적 통제(independent effect의 측정) 등. 모두 측정과 관련된 이야기.
[Reminder] 글로벌 유동성의 통계적 유의도, 영향력 문제와 문재인 정부의 책임 문제는 긴밀하게 연결되어 있지만 동시에 개별적으로 분리해 논의해야 할 주제이기도 하다. 글로벌 유동성이 서울 집값을 의미 있게 설명한다 할지라도 문재인 정부시기 오른 집값의 대부분 혹은 모두 문재인 정부 탓으로 드러났다. 재보기 전에는 알 수 없다. VAR모형과 같은 linear모형에서는 두 요인의 영향을 MECE(mutually exclusive and collectively exhaustive) 방식으로 측정할 수 있다.
[주의] 정권더미의 경우 Price(t) equation에서 Moon(t)와 더불어 Moont(t-1), Moont(t-2)를 함께 쓸 수 없다. Moon(t)의 회귀계수는 문재인 정부시기 정부요인에 의해 매월 서울 집값이 얼마나 평균적으로 변했는지를 보여주는 수치. 과잉유동성 변수와 성격이 다르다. 이 문제는 추후에 별도 설명.
다음 주에는 미국 연방금리가 서울 집값에 미친 영향을 검토합니다.
이혁주
<첨부 1> [지수 1] lag 변수의 설명력 검증 및 집값 영향 측정
data=read.csv(file.choose(),header=T) # 자료 내려받기
View(data)
attach(data)
Ind1_level=read.csv(file.choose(),header=T) #지표1 분석용 원자료 내려받기 여기(level자료)
library(urca)
x=ur.df(Ind1_level$ind1_level,type='drift')
summary(x) # Nonstationary
Ind1=diff(Ind1_level$ind1_level) # 54 entries from 2009 Q1 to 2022 Q2
Ind=array(0,c(160))
for(t in 1:53){from=3*(t-1)+1
to=from+2
Ind[from:to]=Ind1[t]
}
Ind[160]=Ind1[54]/3
library(dplyr) # time series data가 아니어도 lag operator가 잘 작동하는 package
Ind.1=lag(Ind,1) # lagged by 1 month #GLI 1달 lag 시켜 새 변수 만듦. Ind starts from 2009.1 and ends on 2022.4.
Ind.2=lag(Ind,2) # lagged by 2 months #GLI 2달 lag 시켜 새 변수 만듦
Ind.3=lag(Ind,3) # lagged by 3 months
Ind.4=lag(Ind,4) # lagged by 4 months
Ind.5=lag(Ind,5) # lagged by 5 months
Ind.6=lag(Ind,6) # lagged by 6 months
Ind.9=lag(Ind,9) # lagged by 9 months
Ind.12=lag(Ind,12) # lagged by 12 months
Ind.15=lag(Ind,15) # lagged by 15 months
Ind.18=lag(Ind,18) # lagged by 18 months # GLI 18달 lag 시켜 새 변수 만듦
#위에 나열한 Y 변수를 모두 이용할 때, 아래와 같이 dataset을 구성해야 함.
GLIs=cbind(Ind.1[19:160],Ind.2[19:160],Ind.3[19:160],Ind.4[19:160],Ind.5[19:160],Ind.6[19:160],Ind.9[19:160],Ind.12[19:160],Ind.15[19:160],Ind.18[19:160])
colnames(GLIs)=c('Ind.1','Ind.2','Ind.3','Ind.4','Ind.5','Ind.6','Ind.9','Ind.12','Ind.15','Ind.18')
endo=cbind(Price,Debt)
endo=endo[2:143,] # 각 변수의 길이를 142로 통일, Price, Debt start from 2008.12; Ind starts from 2009.1.
exo=cbind(Park,Moon,Pandemic)
exo=exo[2:143,]
exo=cbind(exo,GLIs)
model=VAR(endo,p=2,exogen=exo) # 추정결과는 <그림 A2>. 전체적으로 유의도가 많이 떨어짐.
C=matrix(c(1,1,1,1,1, 1,1,1,0,0, 0,0,0,0,0, 0,0,0,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,1,1), byrow=TRUE,nrow=2)
Testing=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(Testing)) # Wooldridge(2010: 481)
1-pchisq(chi2,10) # p value = 0.460
[지표 1]의 변화가 문재인 정부시기 집값에 미친 영향 측정
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
B=Bcoef(model)[,9:14] # coefficients of GLI(t-1) to GLI(t-6)
b9=Bcoef(model)[,15] # coeff of GLI(t-9)
b12=Bcoef(model)[,16] # coeff of GLI(t-12)
b15=Bcoef(model)[,17] # coeff of GLI(t-15)
b18=Bcoef(model)[,18] # coeff of GLI(t-18)
y=array(0,c(2,30))
Effect=array(0,c(60))
impact=array(0,c(2,60))
2022.4 3 2 1 2021.12 11
impact[,1]=B%*%matrix(c(Ind[100],Ind[99],Ind[98],Ind[97],Ind[96],Ind[95]),ncol=1)+b9*Ind[92]+b12*Ind[89]+b15*Ind[86]+b18*Ind[83] # 2017.5 이전에 한국으로 들어온 해외 자본이 2017년 5월 주택가격에 미친 영향(포인트). 이후 서울 집값은 이 영향을 계속 받는다(sustained effect). 이 sustained effect는 아래 파란색 procedure에서 측정됨. 총효과는 그 아래 줄 Effect[1]에서 집계.
y[,1]=impact[,1]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[1]=sum(y[1,]) #
impact[,2]=B%*%matrix(c(Ind[101],Ind[100],Ind[99],Ind[98],Ind[97],Ind[96]),ncol=1)+b9*Ind[93]+b12*Ind[90]+b15*Ind[87]+b18*Ind[84] # 2017.6 이전에 한국으로 들어온 해외 자본이 2017년 6월 주택가격에 미친 영향(포인트). 이 영향은 이후 주택가격에 계속 영향을 미친다(sustained effect). 이 sustained effect는 아래 파란색 procedure에서 이후 각월에 미친 영향이 측정됨. 총효과는 그 아래 줄 Effect[2]에서 집계.
impact[,2]=impact[,2]
y[,1]=impact[,2]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[2]=sum(y[1,])
for(m in 3:60){impact[,m]=B%*%matrix(c(Ind[100+m],Ind[99+m],Ind[98+m],Ind[97+m],Ind[96+m], Ind[95+m]),ncol=1) + b9*Ind[92+m]+b12*Ind[89+m]+b15*Ind[86+m] + b18*Ind[83+m] #for문의 counter m은 3에서 60까지 running. 60은 문재인 정부시기 60개월을 의미.
y[,1]=impact[,m] #여기 procedure는 2017.7 이후 시기에 대해 측정하는 스텝
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[m]=sum(y[1,]) # Effect on Price of the inflows as of month m
}
sum(Effect) # -2.11 points. Negatvie and Negligible
# Moon의 영향
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
y=array(0,c(2,30))
y[,1]=Bcoef(model)[,7]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # 39.21 points
<첨부 2> [지수 2] lag 변수의 설명력과 집값에 미친 영향 검증
data=read.csv(file.choose(),header=T) # 자료 내려받기
View(data)
attach(data)
Ind2_level=read.csv(file.choose(),header=T) #[지표2] 분석용 원자료 내려받기 여기(level자료)
library(urca)
x=ur.df(Ind2_level$ind2,type='drift')
summary(x) # Nonstationary
Ind2=diff(Ind2_level$Ind2) # 54 entries from 2009 Q1 to 2022 Q2
Ind=array(0,c(160))
for(t in 1:53){from=3*(t-1)+1
to=from+2
Ind[from:to]=Ind2[t]
}
Ind[160]=Ind2[54]/3
Ind=Ind/5e5
library(dplyr) # time series data가 아니어도 lag operator가 잘 작동하는 package
Ind.1=lag(Ind,1) # lagged by 1 month #GLI 1달 lag 시켜 새 변수 만듦5e5
Ind.2=lag(Ind,2) # lagged by 2 months #GLI 2달 lag 시켜 새 변수 만듦
Ind.3=lag(Ind,3) # lagged by 3 months
Ind.4=lag(Ind,4) # lagged by 4 months
Ind.5=lag(Ind,5) # lagged by 5 months
Ind.6=lag(Ind,6) # lagged by 6 months
Ind.9=lag(Ind,9) # lagged by 9 months
Ind.12=lag(Ind,12) # lagged by 12 months
Ind.15=lag(Ind,15) # lagged by 15 months
Ind.18=lag(Ind,18) # lagged by 18 months # GLI 18달 lag 시켜 새 변수 만듦
#위에 나열한 Y 변수를 모두 이용할 때, 아래와 같이 dataset을 구성해야 함.
GLIs=cbind(Ind.1[19:160],Ind.2[19:160],Ind.3[19:160],Ind.4[19:160],Ind.5[19:160],Ind.6[19:160],Ind.9[19:160],Ind.12[19:160],Ind.15[19:160],Ind.18[19:160])
colnames(GLIs)=c('Ind.1','Ind.2','Ind.3','Ind.4','Ind.5','Ind.6','Ind.9','Ind.12','Ind.15','Ind.18')
endo=cbind(Price,Debt)
endo=endo[2:143,] # 각 변수의 길이를 142로 통일, Price, Debt start from 2008.12; Ind starts from 2009.1.
exo=cbind(Park,Moon,Pandemic)
exo=exo[2:143,]
exo=cbind(exo,GLIs)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,1, 1,1,1,0,0, 0,0,0,0,0, 0,0,0,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,1,1), byrow=TRUE,nrow=2)
Testing=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(Testing)) # Wooldridge(2010: 481)
1-pchisq(chi2,10) # p value = 0.366
[지수 2]의 변화가 문재인 정부시기 집값에 미친 영향 측정
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
B=Bcoef(model)[,9:14] # coefficients of GLI(t-1) to GLI(t-6)
b9=Bcoef(model)[,15] # coeff of GLI(t-9)
b12=Bcoef(model)[,16] # coeff of GLI(t-12)
b15=Bcoef(model)[,17] # coeff of GLI(t-15)
b18=Bcoef(model)[,18] # coeff of GLI(t-18)
y=array(0,c(2,30))
Effect=array(0,c(60))
impact=array(0,c(2,60))
2022.4 3 2 1 2021.12 11
impact[,1]=B%*%matrix(c(Ind[100],Ind[99],Ind[98],Ind[97],Ind[96],Ind[95]),ncol=1)+b9*Ind[92]+b12*Ind[89]+b15*Ind[86]+b18*Ind[83] # 2017.5 이전에 한국으로 들어온 해외 자본이 2017년 5월 주택가격에 미친 영향(포인트). 이후 서울 집값은 이 영향을 계속 받는다(sustained effect). 이 sustained effect는 아래 파란색 procedure에서 측정됨. 총효과는 그 아래 줄 Effect[1]에서 집계.
y[,1]=impact[,1]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[1]=sum(y[1,]) #
impact[,2]=B%*%matrix(c(Ind[101],Ind[100],Ind[99],Ind[98],Ind[97],Ind[96]),ncol=1)+b9*Ind[93]+b12*Ind[90]+b15*Ind[87]+b18*Ind[84] # 2017.6 이전에 한국으로 들어온 해외 자본이 2017년 6월 주택가격에 미친 영향(포인트). 이 영향은 이후 주택가격에 계속 영향을 미친다(sustained effect). 이 sustained effect는 아래 파란색 procedure에서 이후 각월에 미친 영향이 측정됨. 총효과는 그 아래 줄 Effect[2]에서 집계.
impact[,2]=impact[,2]
y[,1]=impact[,2]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[2]=sum(y[1,])
for(m in 3:60){impact[,m]=B%*%matrix(c(Ind[100+m],Ind[99+m],Ind[98+m],Ind[97+m],Ind[96+m], Ind[95+m]),ncol=1) + b9*Ind[92+m]+b12*Ind[89+m]+b15*Ind[86+m] + b18*Ind[83+m] #for문의 counter m은 3에서 60까지 running. 60은 문재인 정부시기 60개월을 의미.
y[,1]=impact[,m] #여기 procedure는 2017.7 이후 시기에 대해 측정하는 스텝
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[m]=sum(y[1,]) # Effect on Price of the inflows as of month m
}
sum(Effect) # +4.868 포인트
<첨부 3> [지수 3], [지수 4] lag 변수의 설명력 검증
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
BOP=read.csv(file.choose(),header=T) #[지수 3] 분석용 원자료 자료 내려받기(monthly level data)
Inflow=BOP$FDI_liab+BOP$Portfolio_liab+BOP$OtherInvt_liab
Inflow=Inflow/1e4 # 다른 변수들과 scale을 비슷하게 만들기 위해 1e4로 나누어 줌. 이리 하는게 안전
sum(Inflow) # 52.64. 즉 분석대상 기간 한국으로 유입된 해외 자본 총량은 52.64
Outflow=BOP$FDI_asset+BOP$Portfolio_asset+BOP$OtherInvt_asset
Outflow=Outflow/1e4 # 다른 변수들과 scale을 비슷하게 만들기 위해 1e4로 나누어 줌. 이리 하는게 안전
Netflow=Inflow-Outflow
library(urca) # stationarity 검증
x=ur.df(Inflow,type='drift')
summary(x) # stationary
x=ur.df(Outflow,type='drift')
summary(x) # stationary
endo=cbind(Price,Debt,Inflow)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=18,exogen=exo) # 이것을 이용해 irf 그린다.
R_model=restrict(model,method="ser",thresh=1.0)
x=irf(R_model,impulse='Inflow',response='Price',cumulative=TRUE,n.ahead=50,ci=.9)
plot(x$Upper$Inflow,ylim=c(-0.6,0.6),type='l',xlab='Months elapsed',ylab='Cumulative Price change',lwd=1.5)
lines(x$Lower$Inflow,lwd=1.5)
lines(x$irf$Inflow,lwd=1.5,lty='dotted')
abline(h=0,col='red')
text(30,0.5,'90% CI') # <그림 1> 완성
endo=cbind(Price,Debt,Outflow)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=18,exogen=exo) # 이것을 이용해 irf 그린다.
R_model=restrict(model,method="ser",thresh=1.0)
x=irf(R_model,impulse='Outflow',response='Price',cumulative=TRUE,n.ahead=50,ci=0.9)
plot(x$Upper$Outflow,ylim=c(-0.7,0.7),type='l',xlab='Months elapsed',ylab='Cumulative Price change',lwd=1.5)
lines(x$Lower$Outflow,lwd=1.5)
lines(x$irf$Outflow,lwd=1.5,lty='dotted')
abline(h=0,col='red')
endo=cbind(Price,Debt,Netflow)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=18,exogen=exo) # 이것을 이용해 irf 그린다.
R_model=restrict(model,method="ser",thresh=1.0)
x=irf(R_model,impulse='Netflow',response='Price',cumulative=TRUE,n.ahead=50,ci=0.9)
plot(x$Upper$Netflow,ylim=c(-0.7,0.7),type='l',xlab='Months elapsed',ylab='Cumulative Price change',lwd=1.5)
lines(x$Lower$Netflow,lwd=1.5)
lines(x$irf$Netflow,lwd=1.5,lty='dotted')
abline(h=0,col='red')
text(30,0.5,'90% CI') # <그림 2> 완성
#<그림 4> 그리기
endo_inflow=cbind(Price,Debt,Inflow) # Inflow는 위 스텝에서 first differenced된 자료
x=VARselect(endo_inflow,exogen=exo)$criteria
plot(x[1,],xlab='Lag',ylab='Index values',type='l',ylim=c(-5.5,-3))
lines(x[2,],lty=2,lwd=1.5)
lines(x[3,],lwd=1.5,col='red')
text(6,-5.2,'AIC')
text(6,-4.65,'HQ')
text(6,-3.85,'SC') # <그림 4> 완성
# <그림 5> 그리기. R square 출력해 그림 그리기. 해당 웹문서 안내는 아래 주소 참고.
https://stackoverflow.com/questions/20027978/how-to-extract-adjusted-r-squared-in-vars-package
R2=0
endo_inflow=cbind(Price,Debt,Inflow)
for(p in 1:10){model_inflow=VAR(endo_inflow,p,exogen=exo)
R2[p]=lapply(summary(model_inflow)$varresult, "[", "r.squared")$Price$r.squared
}
plot(R2,xlab='Lag',ylab='R square',ylim=c(0,1),lwd=1.5)
<첨부 4> [지수 5]의 sustained effect 검토
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
Ind5_data=read.csv(file.choose(),header=T) #지표 5 분석용 원자료 내려받기 여기(level자료)
library(urca)
x=ur.df(Ind5_data$Ind5,type='drift')
summary(x) # nonstationary. 따라서 아래 줄에서 보듯이 1st differencing해 자료 이용.
Ind5=diff(Ind5_data$Ind5) # 55 entries from 2008 Q4 to 2022 Q2
Ind=array(0,c(161))
Ind[1]=Ind5[1]/3 # GLI[2008.12]
for(t in 2:54){from=3*(t-1)-1
to=from+2
Ind[from:to]=Ind5[t]
}
Ind[161]=Ind5[55]/3 # GLI[2022.5]
Ind=Ind/5e5
library(dplyr) # time series data가 아니어도 lag operator가 잘 작동하는 package
Ind.1=lag(Ind,1) # lagged by 1 month #GLI 1달 lag 시켜 새 변수 만듦
Ind.2=lag(Ind,2) # lagged by 2 months #GLI 2달 lag 시켜 새 변수 만듦
Ind.3=lag(Ind,3) # lagged by 3 months
Ind.4=lag(Ind,4) # lagged by 4 months
Ind.5=lag(Ind,5) # lagged by 5 months
Ind.6=lag(Ind,6) # lagged by 6 months
Ind.9=lag(Ind,9) # lagged by 9 months
Ind.12=lag(Ind,12) # lagged by 12 months
Ind.15=lag(Ind,15) # lagged by 15 months
Ind.18=lag(Ind,18) # lagged by 18 months # GLI 18달 lag 시켜 새 변수 만듦
#위에 나열한 Y 변수를 모두 이용할 때, 아래와 같이 dataset을 구성해야 함.
GLIs=cbind(Ind.1[19:161],Ind.2[19:161],Ind.3[19:161],Ind.4[19:161],Ind.5[19:161],Ind.6[19:161],Ind.9[19:161],Ind.12[19:161],Ind.15[19:161],Ind.18[19:161])
colnames(GLIs)=c('Ind.1','Ind.2','Ind.3','Ind.4','Ind.5','Ind.6','Ind.9','Ind.12','Ind.15','Ind.18')
endo=cbind(Price,Debt)
endo=endo[1:143,]
exo=cbind(Park,Moon,Pandemic)
exo=exo[1:143,]
exo=cbind(exo,GLIs)
model=VAR(endo,p=2,exogen=exo) # 추정결과는 <그림 A2>. 전체적으로 유의도가 많이 떨어짐.
C=matrix(c(1,1,1,1,1, 1,1,1,0,0, 0,0,0,0,0, 0,0,0,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,1,1), byrow=TRUE,nrow=2)
Testing=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(Testing)) # Wooldridge(2010: 481)
1-pchisq(chi2,10) # p value = 0.319
#팬데믹 변수의 유의도
C=matrix(c(1,1,1,1,1, 1,1,0,1,1, 1,1,1,1,1, 1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,1,1), byrow=TRUE,nrow=2)
Testing=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(Testing)) # Wooldridge(2010: 481)
1-pchisq(chi2,1) # p value = 0.043
#팬데믹의 주택가격 상승효과
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
b=Bcoef(model)[,8] # coefficients of Pandemic variable
y=array(0,c(2,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # +13.11포인트
#Moon의 주택가격 상승효과
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
b=Bcoef(model)[,7] # coefficients of Pandemic variable
y=array(0,c(2,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # +28.94포인트
#한국으로 들어돈 해외자본이 서울 집값에 미친 영향 측정
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
B=Bcoef(model)[,9:14] # coefficients from lag 1 to 6
b9=Bcoef(model)[,15] # coefficient vector of GLI(t-9)
b12=Bcoef(model)[,16]
b15=Bcoef(model)[,17]
b18=Bcoef(model)[,18]
y=array(0,c(2,30))
Effect=array(0,c(60))
impact=array(0,c(2,60))
impact[,1]=B%*%matrix(c(Ind[101],Ind[100],Ind[99],Ind[98],Ind[97],Ind[96]),ncol=1)+b9*Ind[93]+b12*Ind[90]+b15*Ind[87]+b18*Ind[84] # 2017.5 이전에 한국으로 들어온 해외 자본이 2017년 5월 주택가격에 미친 영향(포인트). 이 영향은 이후 2017.6, 2017.7, ... 주택가격에 계속 영향을 미친다(sustained effect). 이 sustained effect는 아래 파란색 procedure에서 측정됨. 2017.5에서 임기말까지 미친 총효과는 그 아래 줄 Effect[1]에서 집계됨.
y[,1]=impact[,1]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[1]=sum(y[1,]) #
impact[,2]=B%*%matrix(c(Ind[102],Ind[101],Ind[100],Ind[99],Ind[98],Ind[97]),ncol=1)+b9*Ind[94]+b12*Ind[91]+b15*Ind[88]+b18*Ind[86] # 2017.6 이전에 한국으로 들어온 해외 자본이 2017년 6월 주택가격에 미친 영향(포인트). 이 영향은 이후 주택가격에 계속 영향을 미친다(sustained effect). 이 sustained effect는 아래 파란색 procedure에서 이후 각월에 미친 영향이 측정됨. 총효과는 그 아래 줄 Effect[2]에서 집계.
y[,1]=impact[,2]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[2]=sum(y[1,])
for(m in 3:60){impact[,m]=B%*%matrix(c(Inflow[101+m],Inflow[100+m],Inflow[99+m],Inflow[98+m],Inflow[97+m], Inflow[96+m]),ncol=1) + b9*Inflow[93+m]+b12*Inflow[90+m]+b15*Inflow[87+m] + b18*Inflow[84+m] #for문의 counter m은 3에서 60까지 running. 60은 문재인 정부시기 60개월을 의미.
y[,1]=impact[,m] #여기 procedure는 2017.7 이후 시기에 대해 측정하는 스텝
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[m]=sum(y[1,]) # Effect on Price of the inflows as of month m
}
sum(Effect) # 5.356 points
김수현 박사님 보세요.
지난 몇 주간 논의를 정리하면 아래와 같습니다.
글로벌 유동성 지표로서 어떤 것을 사용하든 이 지표는 서울 주택가격의 설명변수로서 부호, 유의도, 영향의 크기 등에서 문제가 많다. 특히 통계적으로 유의한 경우(모두 p value > 0.30)는 한 사례도 관찰되지 않았다. 어떤 경우에도 팬데믹 때문에 오른 집값을 제외하고 오른 집값 혹은 그 이상으로 Moon 정권요인 때문에 문재인 정부 때 서울에서 집값이 올랐다.
이러한 판단을 토대로 <표 1>과 같이 정리합니다.
오늘은 연방 금리 2가지를 검토합니다. 하나는 언론에서도 흔히 접해서 모두 잘 알고 있는 연방 금리(FRB rate)이고, 다른 하나는 연방 금리가 0의 하한 아래로 내려가는 것을 허용한 shadow rate입니다. <그림 1>이 이들입니다. 금리가 음수라서 정책분석시 오히려 쓸모가 있다고 이런 금리를 제안한 Wu and Xia(2016)가 말합니다. 여기서는 이 두 가지 금리를 모두 검증합니다.
<그림 1> 미국의 기준금리와 shadow rate
CD금리와 문재인 정부시기 서울 집값 상승과 별 관계가 없다는 것은 문재인 정부초 금리와 임기말 금리간 차이가 거의 없었다는 것이 그 근거였습니다. 그래서 박진백 외(2021)의 주장이 무리이고, 이를 인용한 김수현(2023)도 삭제되어야 한다고 했습니다. 연방금리도 마찬가지입니다. <그림 1>에서 대충 짐작할 수 있듯이 연방 금리 FRB rate는 문재인 정부 초 0.91%, 임기말 0.77%로서 금리의 변화는 0.14%p에 불과합니다. 금리가 시장의 자산가격 일반과 밀접한 관련이 있고 예의 주시해야 하는 것은 맞지만, aggregate 지표로서 주택가격 지수와 금리간 의미 있는 인과관계의 존재여부는 또 다른 문제입니다. 나중에 명확해지겠지만 이건 이론적 가능성을 그냥 기술했겠지라고 이해하면 곤란합니다. 그 이상 중요한 이슈로서, 한국의 주택문제를 이해하는데 있어 자본의 기회비용이 주택가격에 미치는 영향의 경로(channel)와 관련된 문제이고, 왜 자꾸 계획가를 거론하는지 그 이유가 되기도 합니다.
<표 1> FRB 기준금리의 집값 설명력 검증
---------------------------------------------------------------------------------------------------------
lag = 0인 모형 lag=1~10인 모형
-------------------------------------- ----------------------------------------
p value 집값에 미친 영향 p value 집값에 미친 영향
---------------------------------------------------------------------------------------------------------
FRB rate 0.239 -0.144포인트 0.002 -11.23포인트
Shadow rate 0.609 +0.042포인트 0.275 +0.53포인트
---------------------------------------------------------------------------------------------------------
자료 및 R 코드 <첨부 1> <첨부 2>
---------------------------------------------------------------------------------------------------------
주...집값에 미친 영향은 문재인 정부시기 대상
이제 연방 금리와 서울 집값간 관계를 VAR모형을 이용해 다시 살펴보겠습니다. <표 1>이 측정결과입니다. 금리변수를 모형에 추가하는 방식으로 2가지를 사용했습니다.
lag=0인 모형: Price(t)=여타변수 + 금리(t) (식1)
lag=1~10인 모형: Price(t)=여타변수 + 금리(t) + 금리(t-1) + ... + 금리(t-10) (식2)
금리: FRB rate 혹은 shadow rate
(식1) 즉 contemporaneous effect model을 이용해서 알아보면, FRB rate는 유의하지 않고(p value=0.239) 문재인 정부시기 집값에 미치는 영향도 미미합니다(-0.144포인트). 혹시 lag을 충분히 과거로 멀리하면 좀 나아질까 하는 기대를 가지고 추정한 것이 (식2)입니다. lag을 과거 10달 전까지 확장해서 추정했습니다. 회귀계수는 유의하지만(p value=0.002) 집값을 대폭 낮추는 요인으로 작용했습니다(11.23포인트 감소). 문재인 정부초 대비 임기말 연방금리가 '하락'했므로 측정결과는 11.23포인트 하락이 아니라 상승으로 나와야 합니다. 설명 불가인 측정결과입니다.
여기에는 두 가지 이유가 있는 것으로 추정됩니다.
첫째, lag을 10까지 확장한 것이 무리였던 것 같습니다. 이 변수에 대해서만 lag을 최대한 크게 잡아서 '기어코' 이 변수에서 집값 변동원인을 찾겠다고 고집스럽게 모델링한 결과로 보입니다.
둘째는 FRB rate에 존재하는 0의 하한 문제가 문제를 일으킨 것 같습니다.
[0의 하한문제와 금리의 주택가격 영향 편향] 주택가격을 p, shadow rate를 x, FRB rate를 y, true relation이 p=1-x라고 하자. 이제 변수 x 대신 y를 이용해 true equation p=1-x를 추정하는 대신 p=a+b*y를 추정한다고 하자. 추정순서는 아래대로. <첨부 3> 참고.
Step 1: Set p=1-x.
Step 2: Regress y on p and obtain the regression coefficient b from the estimated p=a+b*y.
<그림 2> 미국의 기준금리와 shadow rate
<첨부 3>의 procedure를 따라 모의실험을 하고 주택가격과 FRB rate간 관계를 추정하면 <그림 2>와 같이 나타납니다. 즉 0의 하한문제가 있는 연준 기준금리를 이용해 주택가격을 추정하면 true coefficient -1(파란 선) 대신 -1.68(빨간 선)이 나옵니다. 즉 금리의 주택가격 영향을 과대평가합니다. <표 1>에서 -11.23(빨간 숫자)가 나온 것이 이것 때문인 것 같습니다.
[시사] <그림 2>와 같은 문제가 있어서 0의 하한 문제가 있는 연방금리를 이용해 수행한 통계분석이라면, 그것이 어떤 것이든 편향 가능성을 염두에 두고 신중하게 읽어야 한다. (예) 김재윤-최창규(2021) 및 이 논문에서 검토한 논문
각설하고, 0의 하한 문제가 있는 FRB rate를 변수로 이용하는데 문제가 있어서 제안된 금리가 shadow rate라고 합니다(Wu and Xia, 2016). 이 금리를 이용하면 해석가능한 분석결과가 나옵니다. 그러나 이 금리의 경우도 <표 1> 제2행에 따르면 서울 집값에 미친 영향은 유의하지도 않고 지나치게 작습니다.
다음 주에는 미국 연준의 total assets 지수를 이용해 양적 완화를 파악하고, 이 변수가 서울 집값에 미친 영향을 분석합니다.
이혁주 드림
김재윤·최창규, 2021. 글로벌 금리 및 유동성 변동이 주택가격 순환변동에 미치는 영향, 부동산학연구 27(4): 89~118.
Wu, Jing C. and Fan D. Xia, 2016. Measuring the Macroeconomic Impact of Monetary Policy at the Zero Lower Bound. Journal of Money, Credit and Banking, 48: 253-291.
<첨부 1> Contemporaneous Effect Model
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
FRB_data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(FRB_data)
endo=cbind(Price,Debt)
exo=cbind(Park,Moon,Pandemic,FRB_Rate)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
b=Bcoef(model)[,9]
y=array(0,c(2,30))
y[,1]=b*0.58
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,]) # -0.144포인트
C=matrix(c(1,1,1,1,1, 1,1,1,0,
1,1,1,1,1, 1,1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C) #Price 방정식에서 FRB rate의 회귀계수=0
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # p value=0.239
exo=cbind(Park,Moon,Pandemic,Shadow_rate)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
b=Bcoef(model)[,9]
y=array(0,c(2,30))
y[,1]=b*0.58
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[2,]) # +0.042포인트
exo=cbind(Park,Moon,Pandemic,Shadow_rate)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,1, 1,1,1,0,
1,1,1,1,1, 1,1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C) #Price 방정식에서 FRB rate의 회귀계수=0
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # p value=0.609
<첨부 2> 모형의 추정과 설명력 검증
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
FRB_data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(FRB_data)
endo=cbind(Price,Debt)
exo=cbind(Park,Moon,Pandemic,FRB_Rate)
model=VAR(endo,p=2,exogen=exo)
# Lagged FRB rate를 이용할 때
library(dplyr)
FRB_rate.10=lag(FRB_Rate,10)[10:161]
FRB_rate.9=lag(FRB_Rate,9)[10:161]
FRB_rate.8=lag(FRB_Rate,8)[10:161]
FRB_rate.7=lag(FRB_Rate,7)[10:161]
FRB_rate.6=lag(FRB_Rate,6)[10:161]
FRB_rate.5=lag(FRB_Rate,5)[10:161]
FRB_rate.4=lag(FRB_Rate,4)[10:161]
FRB_rate.3=lag(FRB_Rate,3)[10:161]
FRB_rate.2=lag(FRB_Rate,2)[10:161]
FRB_rate.1=lag(FRB_Rate,1)[10:161]
exo=cbind(Park[10:161],Moon[10:161],Pandemic[10:161],FRB_rate.1,FRB_rate.2,FRB_rate.3,FRB_rate.4,FRB_rate.5,FRB_rate.6,FRB_rate.7,FRB_rate.8,FRB_rate.9,FRB_rate.10)
colnames(exo)=c('Park','Moon','Pandemic','FRB.1','FRB.2','FRB.3','FRB.4','FRB.5','FRB.6','FRB.7','FRB.8','FRB.9','FRB.10')
model=VAR(endo,2,exogen=exo)
C=matrix(c(1,1,1,1,1, 1,1,1,0,0, 0,0,0,0,0, 0,0,0,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C) #Price 방정식에서 FRB rate의 회귀계수=0
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,10) # p value = 0.00, very significant
Bcoef(model)
Price.l1 Debt.l1 Price.l2 Debt.l2 const
Price 0.5820741 0.0300867 -0.09120040 0.1403172 -0.1105588
Debt 0.2635027 0.2574303 0.01884669 0.1126927 0.2790201
Park Moon Pandemic FRB.1 FRB.2
Price 0.06728726 0.4004658 0.02798901 0.23907176 -0.2550393
Debt 0.16959622 -0.0836603 -0.02633757 0.07175397 0.1811553
FRB.3 FRB.4 FRB.5 FRB.6 FRB.7
Price -0.007606216 -1.1053130 1.3272844 -0.4556563 0.6650048
Debt -0.363087271 0.2049977 -0.2649794 0.4592688 -0.8648168
FRB.8 FRB.9 FRB.10
Price -1.1160545 0.9873676 -0.3641354
Debt 0.1805589 0.6320512 -0.2128430
library(dplyr)
library(vars)
FRB=0
endo=cbind(Price,Debt)
endo=endo[10:161,]
colnames(endo)=c('Price','Debt')
Effect=array(0,c(2,60))
p_values=0
for(j in 1:2){ if(j == 1){FRB=FRB_Rate} else {FRB=Shadow_rate}
# Lagged FRB 외생변수 dataset 준비
FRB.10=lag(FRB,10)[10:161]
FRB.9=lag(FRB,9)[10:161]
FRB.8=lag(FRB,8)[10:161]
FRB.7=lag(FRB,7)[10:161]
FRB.6=lag(FRB,6)[10:161]
FRB.5=lag(FRB,5)[10:161]
FRB.4=lag(FRB,4)[10:161]
FRB.3=lag(FRB,3)[10:161]
FRB.2=lag(FRB,2)[10:161]
FRB.1=lag(FRB,1)[10:161]
exo=cbind(Park[10:161],Moon[10:161],Pandemic[10:161],FRB.1,FRB.2,FRB.3,FRB.4,FRB.5,FRB.6,FRB.7,FRB.8,FRB.9,FRB.10)
colnames(exo)=c('Park','Moon','Pandemic','FRB.1','FRB.2','FRB.3','FRB.4','FRB.5','FRB.6','FRB.7','FRB.8','FRB.9','FRB.10')
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,1, 1,1,1,0,0, 0,0,0,0,0, 0,0,0,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C) #Price 방정식에서 FRB rate의 회귀계수=0
chi2=2*(logLik(model)-logLik(R_model))
p_values[j]=1-pchisq(chi2,10)
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
B=Bcoef(model)[,9:18]
y=array(0,c(2,30))
impact=array(0,c(2,60))
impact[,1]=B%*%matrix(c(FRB[101],FRB[100],FRB[99],FRB[98],FRB[97],FRB[96],FRB[95],FRB[94],FRB[93],FRB[92]),ncol=1) # 2017.5 이전 10달 동안의 FRB rate가 2017.5 집값에 미친 영향.
y[,1]=impact[,1]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[j,1]=sum(y[1,]) # FRB rate가 2017.5 집값에 미친 영향이 다시 이후 시기 집값에 미친 영향 합계
impact[,2]=B%*%matrix(c(FRB[102],FRB[101],FRB[100],FRB[99],FRB[98],FRB[97],FRB[96],FRB[95],FRB[94],FRB[93]),ncol=1) # 2017.6 이전 10달 동안의 FRB rate가 2017.6 집값에 미친 영향.
y[,1]=impact[,2]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[j,2]=sum(y[1,]) # FRB rate가 2017.6 집값에 미친 영향이 다시 이후 시기 집값에 미친 영향 합계
for(m in 3:60){impact[,m]=B%*%matrix(c(FRB[100+m],FRB[99+m],FRB[98+m],FRB[97+m],FRB[96+m],FRB[95+m], FRB[94+m],FRB[93+m],FRB[92+m], FRB[91+m]), ncol=1)
y[,1]=impact[,m] #여기 procedure는 2017.7 이후 시기에 대해 측정하는 스텝
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[j,m]=sum(y[1,]) # Effect on Price of the inflows as of month m
}
}
sum(Effect[1,]) # -11.23포인트
sum(Effect[2,]) # +0.53포인트
<첨부 3> Shadow rate 대신 FRB rate를 사용할 때 발생하는 편향문제
data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(data)
library(vars)
FRB_data=read.csv(file.choose(),header=T) # 자료 내려받기
attach(FRB_data)
p=1-Shadow_rate
result=lm(p~FRB_Rate)
아래는 output.
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.16069 0.08069 26.78 <2e-16 ***
FRB_Rate -1.68313 0.09344 -18.01 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.8277 on 159 degrees of freedom
Multiple R-squared: 0.6711, Adjusted R-squared: 0.669
<그림 2> 그리기
plot(FRB_Rate, p, xlab='FRB rates', ylab='Price', type='p', cex=0.7, pch=19)
abline(lm(p ~ FRB_Rate),col='red',lwd=1.5)
abline(a = 1, b = -1, col = "blue",lwd=1.5)
text(1,1.4,'Slope=-1.68')
김 박사님 보시지요.
지난 주 평가결과는 아래 표 빨간색 칸에 있습니다. 지난 주는 아주 당연한 걸 확인하는 자리였습니다. 문재인 정부 임기말 연방금리는 임기초 연방금리와 거의 차이가 없었습니다. 한국의 금리도 마찬가지입니다. 그런데 이런 무리한 원인론을 주장한 논문이 한국에서는 학술지에 실리고, 한 정권의 부동산정책 최고 책임자의 정책평가 문서에 인용되었습니다. 김수현(2023)에 실린 진단은 문 정부의 기본적인 시장인식에 해당합니다. 물론 김수현, 박진백 외(2021)와 같은 생각은 이 분야에서 흔하게 보는 인식이고 그래서 두 사람만의 문제는 아닙니다(line 75-78).
출처: Krugman and Wells (2021: 543)
<그림 1> 미국 연방준비제도 자산구성의 변화
이번 주에는 양적 완화가 서울 집값에 미친 영향이 통계적으로 유의했는지 알아봅니다. 영향의 크기는 다음 주에 알아봅니다. 양적 완화는 글로벌 유동성의 원인변수로 간주되는 요인으로서, 양적 완화 빼고 과잉 유동성 문제를 논하는 것은 별의미가 없습니다.
<그림 1>은 미국 연준의 자산구성 변화를 보여줍니다. 2008년 글로벌 금융위기(Global financial crisis, GFC) 이후 주택보증공사 보유 부실채권을 대량 매입하여 경제에 유동성을 대량 주입한 모습을 볼 수 있고, 이후에는 장기 국채를 대량 매입했습니다. 단기 T-bill 위주로 통화정책을 운용했던 모습과 확연히 구분됩니다. 팬데믹이 발발했던 2020년 봄에는 2008년 GFC 당시 양적 완화가 애들 장난 수준일 정도로 돈을 쏟아 부었습니다. 이러한 무지막지한 유동성 공급은 미국 국내에만 머물지 않고 해외로, 해외로,... 개도국으로, 개도국으로 ... 한국으로 왔을 것이고 이들 유입국가의 자산가격은 오르지 않으면 이상합니다. 따라서 집권초인 2017년 8월 김수현 비서관의 한겨레 인터뷰 기사는 이상할 것이 하나도 없는 진단입니다.
그는 “재작년 말부터 전세계적으로 수도와 주요도시를 중심으로 부동산 가격이 다시 오르는 현상이 발생하고 있다”며 “수요-공급의 문제를 떠나 다른 차원에서 과도한 양적완화에 따른 머니게임이 벌어지고 있다고 봐야 한다”고 진단했다. 지난 2008년 이후 과잉유동성 문제가 누적되며 부동산에 투기 자본이 몰려 가격 급등이 이뤄졌다는 분석이다.
일단 시각을 폐쇄경제에서 개방경제로 확장하면, 선진국와 개도국(emerging markets)간 자본의 이동, 선진국 특히 미국의 전통적, 비전통적 통화정책을 명시적으로 고려해야 합니다. 이때 과잉유동성의 원인으로 개도국의 생산증대와 저축률 증가, 선진국 자산에 대한 선호증가, 각국의 팽창적 통화정책, 금융규제완화, 주택에 대한 선호 변화 등 다양한 요인을 거론할 수 있습니다(이를테면 Sa and Wieladeck, 2011: 230). 이 가운데 saving glut(Bernanke, 2005, 2010; King, 2009)과 그 결과로서 liquidity glut, 이러한 유동성에 직접적으로 영향을 주거나 그 결과로서 양적완화 포함 통화정책 등간 관계를 유기적으로 고려하지 않을 수 없습니다.
만약 개도국의 과잉생산과 선진국의 과소저축이 원인이 되어 지난 수십년간 개도국과 선진국 사이에 자본이 이동한 것이고,이러한 글로벌 경제환경 속에서 주택시장 포함 개도국과 선진국의 자산시장이 작동했다고 볼 수 있습니다. 이때 미국와 EU 주요 국가의 자산가격은 역외자본의 대량유입으로 가격이 높게 형성되고, 실질금리는 하락하고, 투자는 촉진되며, 경상수지는 악화됩니다. 이와 대조적으로 개도국은 국제자본시장에서 이제 순차입자(net borrower)가 아니라 순대부자(net lender)가 되고, 개도국의 경상수지 흑자는 개도국의 소비와 투자로 연결되기보다 선진국에 제공됩니다. 그 결과 선진국의 자산시장에서 그 가격이 상승하는데 중심역할을 했던 saving glut이 개도국의 자산시장에는 자산가격의 하락요인으로 작용하거나 시장의 미발달 혹은 어떤 연동기제의 불발로 별다른 영향을 주지 않을 가능성도 있습니다. 이 마지막 시각은 여기 주택논쟁의 통계분석 결과와 계획계 포함 한국 학계 일반의 인식간 갭을 메꾸어 주는 중요한 단서 하나를 제공합니다. 요컨대 양적완화, 글로벌 과잉유동성이 언론에 흔히 보도되는 것 이상의 복잡한 기제하에서 작동하고 상식에 반하는 결과가 나와도 얼마든지 설명가능하다는 말씀입니다. 여기에 다른 요인까지 더 하면 더 말할 것도 없습니다. 유튜버와 구분이 안되는 소위 전문가들의 아무 말 대잔치가 위험한 이유입니다.
이제 이러한 empirical question에 대해 양적 완화라는 정책변수가 실제 서울의 집값을 자극했는지 확인합니다. 양적 완화는 FRB의 total assets을 이용해서 측정하겠습니다. 일본은행과 유럽중앙은행도 패턴이 크게 다르지는 않습니다. 미국 것으로 아무런 징조가 없다면 다른 데까지 굳이 확인하는 수고는 피하겠습니다.
지금 시점의 주택가격에 충분히 먼 과거의 양적완화도 영향을 미칠 수 있습니다. 이를 고려해 18달 전 양적 완화 수준까지 잠재적 영향을 미친 것으로 보고 변수의 lag을 선택하겠습니다. 왜 18달이냐, 최대한 과거까지 고려해서 집요하게 찾았는데도 불구하고 근거가 없다면 그만큼 더 설득력 있는 논설이기 때문에 이리 합니다. 보수 심사자라면 지나치게 진보친화적이라고 보고 게재 불가 판정을 할 수도 있는 검토방식입니다. 논쟁적인 주제인 만큼 심사과정에서 이런 일(line 67-68)을 자주 겪습니다.
아래는 추정한 회귀식입니다.
Price(t)=-.081+.705*Price(t-1)+.046*Debt(t-1)-.143*Price(t-2)+.152*Debt(t-2) (식1)
(.008)*** (.064) (.083) (.064)**
+.179*Moon(t)+.027*Park(t)+.139*Pandemic(t)-0.029*Asset(t)
(.066)*** (.054) (.101) (.015)*
+.065*Asset(t-3)-.033*Asset(t-4)+.031*Asset(t-5)-.022*Asset(t-6), R2=.79
(.018)*** (.020) (.019) (.016)
Debt(t)=.211+.274*Price(t-1)+.272*Debt(t-1)-.020*Price(t-2)+.032*Debt(t-2) (식2)
(.095)*** (.081)*** (.098) (.081)**
+.012*Moon(t)+.136*Park(t)-.011*Pandemic(t), R2=.70
(.082) (.068)** (.094)
* p value<0.10, ** p value<0.05, *** p value<0.01
출처: <첨부 1>
이 모형에서 가계대출 Debt과 양적 완화 변수는 주택가격의 설명변수로서 유의합니다(그랜저 인과변수). 김수현 박사의 주장대로 양적 완화 변수는 서울의 집값 변동을 설명하는데 도움이 많이 됩니다.
<표 2> 문 정권요인 Moon과 양적완화 변수 Asset의 통계적 유의도
----------------------------------------------------------------------------------------------------------
회귀계수 직간접 효과
------------------------------------ 까지 고려한 출처
값(포인트/월) p value 설명력 검정
---------------------------------------------------------------------------------------------------------
문 정권요인 +0.179 0.007 유의 <첨부 1>
Moon (매우 유의)
Pandemic +0.139 0.170 비유의 <첨부 1>
요인 (비유의)
양적완화 +0.012 0.347 유의 <첨부 1>
요인 Asset (비유의)
----------------------------------------------------------------------------------------------------------
주...미 연준 양적완화 변수 Asset의 계수 0.012는 (식1)에서 Asset 회귀계수 5개를 더한 값. p value는 5개 회귀계수를 더해 구한 회귀계수의 z값을 이용해 계산. 빨간색 유의에서 p value=0.00. highly significant.
<표 2>는 변수들의 설명력에 관한 내용을 담고 있습니다. 문 정권요인 Moon은 지금까지 알아본 거의 모든 식에서 그 크기에 큰 변화가 없고 일관되게 유의한 변수로 관찰되었습니다. 여기서도 같은 패턴이 반복됩니다. 문 정부 기간 60달 동안 한 달 평균 0.179포인트씩 집값을 올렸고, 60달에 걸쳐 0.179*60=10.7포인트 올렸습니다(직접효과). Debt 변수를 경유한 우회 효과를 여기에 더하면 그 크기는 더 증가합니다.
Pandemic 요인은 모형에 따라 유의, 비유의를 왔다 갔다 하는데 (+) 부호는 일관되게 관찰됩니다. 한편 관심변수인 양적 완화 Asset변수는 Price변수를 잘 설명합니다(표에서 빨간색 글자. 그 왼쪽 0.347은 무시할 것). 김수현 박사 포함 진보한테는 오랜만의 희소식입니다. 이 분야 명사들의 관행적 논법에 비추어 보았을 때, 이 정도라면 곧 문재인 정부 면책의 근거로 사용해도 전혀 문제가 없습니다.
관행적 논법 = 측정 없이 인과론 얘기하기, 그런 걸 다른 말 마구 해서 독자 헤깔리게 하면서 타당성 논변하기(예=김수현(2023), 이준구(2023)), sample=population, correlation=causality, 자신의 입장과 일치하는 관찰만 이용하기, 그때그때 입장 바꾸고 유리한 관찰 인용해 포장하기...
<표 3> OECD국가의 소비자 물가지수 및 명목 주택가격 지수 변화
-----------------------------------------------------------------------------------------------
2017 Q1 2020 Q1 2022 Q2
-----------------------------------------------------------------------------------------------
소비자 물가지수 OECD 102.7 109.6 124.5
한국 102.8 105.5 113.4
주택가격 지수 OECD 109.0 125.6 165.1
한국 102.1 105.6 121.2
---------------------------------------------------------------------------------------------
주...기준년도는 2015년. 출처는 data.oecd.org.
문 정부는 면책되어야 한다는 통계적 증거를 좀 더 살펴보겠습니다. <표 3>에 따르면 2017 Q1 이후 2020년 3월 COVID 발발 전까지 물가와 집값이 완만하게 오르다가 COVID 발발 이후 임기말까지 물가와 집값이 가파르게 상승한 모습을 보여줍니다. 한국은 물가와 집값 상승률(전국)이 현저히 낮아서 오히려 선방했습니다. 서울 집값의 경우도 임기초 60포인트에서 임기말 100포인트까지 상승했으므로, OECD 평균보다는 높지만 미국 130.2 --> 180.4(전국 기준)에 비하면 이 역시 마냥 나쁜 성과는 아닙니다.
따라서 <표 2>의 통계 검정 결과와 <표 3> 타국 사례에 비추어 보았을 때 문재인 정부에 대한 과도한 비난은 멈추어야 하고 그러한 비난을 한 인사들은 이제 사과하고 자숙해야 합니다. 그 연장선상에서 아래 <그림 2> 김수현(2023: 89)에서 "노무현 대통령이 .... 전세계 부동산 값이 다 올라도 한국은 올라서는 안 된다..."(2번째 문단)라는 항변은 정당하고 문재인 정부에도 그대로 적용됩니다.
출처: 김수현(2023) p.89
<그림 2> 문재인 정부에도 적용되는 노무현 대통령의 변(辯)
다음 주에는 양적 완화, 팬데믹, 문재인 정권요인 때문에 오른 집값을 측정합니다. 지금까지 밑도 끝도 없이 가해졌던 문재인 정부와 김수현 비서관에 대한 비난을 종식시키는 전기가 되기를 바랍니다.
이혁주 드림
<첨부 1> 모형의 추정과 통계검정
> data=read.csv(file.choose(),header=T) # 자료 읽어들이기. 자료: 여기 (비교적 최근 자료로 update한 자료. 그래서 자료원마다 똑같은 변수도 다르게 측정됨)
> attach(data)
> FRB_Assets=read.csv(file.choose(),header=T) # FRB total asset 자료 여기
> View(FRB_Assets)
> attach(FRB_Assets)
> endo=cbind(P_old.d,Debt.d) # 2009.1부터 시작하는 자료. 새로 update한 자료
> colnames(endo)=c('Price','Debt')
> library(urca)
> x=ur.df(Asset0,type='drift') # Asset0는 Asset(t)을 의미. Asset1은 Asset(t-1)을 의미. 이하 마찬가지. Asset19, Asset20, Asset21을 제하고 모두 stationary
> summary(x)
> x=ur.df(Asset1,type='drift') # Asset1은 Asset(t-1)을 의미. 다른 기호도 마찬가지. Asset19, Asset20, Asset21을 제하고 모두 stationary
> summary(x)
> x=ur.df(Asset2,type='drift') # Asset19, Asset20, Asset21을 제하고 모두 stationary
....
> exo=cbind(Moon,Park,Pandemic,Asset0,Asset3,Asset6,Asset9,Asset12,Asset15,Asset18) #최대한 과거까지 거슬러 올라서 과거 FRB의 양적완화가 현 시점 서울 집값에 영향을 주었는지 검토. 최종적으로 아래와 같이 Asset변수 선정.
> library(vars)
> remove(Moon,Park,Pandemic,Asset0,Asset3,Asset4,Asset5,Asset6) # 변수 청소
> exo=cbind(Moon,Park,Pandemic,Asset0,Asset3,Asset4,Asset5,Asset6) #최종 exo로 선정
> model=VAR(endo,p=2,exogen=exo)
> Bcoef(model)
Price.d.l1 Debt.d.l1 Price.d.l2 Debt.d.l2 const
Price.d 0.7053797 0.04689936 -0.1437729068 0.15201048 -0.08139193
Debt.d 0.2460920 0.27662298 0.0007057927 0.02420464 0.20472714
Moon Park Pandemic Asset0 Asset3
Price.d 0.1792618 0.02716449 0.1392796 -0.029216975 0.065824313
Debt.d 0.0301126 0.13754559 -0.0630132 -0.002963021 0.002295251
Asset4 Asset5 Asset6
Price.d -0.03383043 0.03157108 -0.02234830
Debt.d 0.02049804 -0.01796071 0.02631622
> C=matrix(c(1,1,1,1,1, 1,1,1,0,0, 0,0,0, #Finally we remove Asset1, Asset 2 from Price
1,1,1,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
> chi2=2*(logLik(model)-logLik(R_model))
> R_model=restrict(Final_model, method="man", resmat=C)
> chi2=2*(logLik(model)-logLik(R_model))
> p_value=1-pchisq(chi2,10) #0.00 significant. 양적완화 변수는 Price, Debt을 잘 설명.
다음으로는 Debt equation에서 Asset변수의 제거가능 여부 알아봄.
> C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1, #Finally we remove Asset1, Asset 2 from Price
1,1,1,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
> R_model=restrict(model, method="man", resmat=C)
> chi2=2*(logLik(model)-logLik(R_model))
> p_value=1-pchisq(chi2,5) # 0.819. 앞으로 Debt equation에서 Asset변수 제거하고 검토.
# Testing Granger causalities
> C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1, #Finally we remove Asset1, Asset 2 from Price
1,1,1,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
> Final_model=restrict(model, method="man", resmat=C)
> Bcoef(Final_model)
Price.d.l1 Debt.d.l1 Price.d.l2 Debt.d.l2 const
Price.d 0.7053797 0.04689936 -0.14377291 0.15201048 -0.08139193
Debt.d 0.2746973 0.27288236 -0.02018486 0.03237002 0.21174272
Moon Park Pandemic Asset0 Asset3
Price.d 0.17926183 0.02716449 0.13927962 -0.02921698 0.06582431
Debt.d 0.01237353 0.13665046 -0.01119652 0.00000000 0.00000000
Asset4 Asset5 Asset6
Price.d -0.03383043 0.03157108 -0.0223483
Debt.d 0.00000000 0.00000000 0.0000000
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,
0,1,0,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
R_model=restrict(Final_model, method="man", resmat=C)
chi2=2*(logLik(Final_model)-logLik(R_model))
p_value=1-pchisq(chi2,2) # p value=0.002. Price is a Granger cause of Debt.
C=matrix(c(1,0,1,0,1, 1,1,1,1,1, 1,1,1,
1,1,1,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
R_model=restrict(Final_model, method="man", resmat=C)
chi2=2*(logLik(Final_model)-logLik(R_model))
1-pchisq(chi2,2) # p value=0.015. Debt is a Granger cause of Price.
Pandemic변수의 설명력 검정
C=matrix(c(1,1,1,1,1, 1,1,0,1,1, 1,1,1,
1,1,1,1,1, 1,1,0,0,0, 0,0,0),nrow=2,byrow=TRUE)
R_model=restrict(Final_model, method="man", resmat=C)
chi2=2*(logLik(Final_model)-logLik(R_model))
1-pchisq(chi2,2) # p value=0.312. Pandemic is not a Granger cause of Price.
Asset변수의 설명력 검정
C=matrix(c(1,1,1,1,1, 1,1,1,0,0, 0,0,0,
1,1,1,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
R_model=restrict(Final_model, method="man", resmat=C)
chi2=2*(logLik(Final_model)-logLik(R_model))
1-pchisq(chi2,5) # p value=0.00, Total assets of the FRB is a Granger-cause of Price.
Moon 변수의 설명력
C=matrix(c(1,1,1,1,1, 0,1,1,1,1, 1,1,1,
1,1,1,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
R_model=restrict(Final_model, method="man", resmat=C)
chi2=2*(logLik(Final_model)-logLik(R_model))
1-pchisq(chi2,1) # 0.005. Moon is a Granger-cause of Price.
김수현 박사님 보세요.
지난 주는 미국 연준 총자산 total assets이 서울 집값을 설명하는 유의한 변수임을 확인했습니다. 아래 <표 1> 빨간색 칸입니다. 설명력 검증 p value가 무려 0.00이었습니다. 즉 양적완화에 대한 고려 없이 서울 집값 설명 불가라고 말해도 좋을 만한 통계분석 결과입니다. 문재인 정부에 대해 가했졌던 그간 비판이 얼마나 무리한 것인지 이제 그 무고를 밝힐 수 있을 것 같습니다.
이제 통계적 유의성에서 한 발짝 더 나아가 영향의 크기를 재봅시다. 먼저 2009.1 이후 미국 연준 자산의 규모가 전혀 불어나지 않았을 때 서울 집값이 얼마나 낮아 졌을지 알아봅니다. <그림 1>에서 보면 미국 연준의 total asset은 2009년 1월 2.33조 달러에서 2022년 6월 7.16조 달러로 폭증합니다. GFC 당시 증가폭에도 사람이 화들짝 놀랐는데, 2020년 봄 연준 자산의 증가폭은 정말 미친 수준입니다. 그럼 서울 집값도 마구 올라야 합니다. 정말 그럴까요?
자료: https://fred.stlouisfed.org. MBS 주택저당증권
<그림 1> 미국 연방준비제도 자산구성의 변화
2008년 1월 이후 증가한 총자산 모두 없던 일로 할 때 서울 아파트값 지수는 문 정부 임기말까지 1.70포인트 하락에 그칩니다. <표 2> 빨간 숫자입니다. 문 정부시기로 기간을 한정하면 그 영향은 1.32포인트로 다시 줄어듭니다. 가계대출에 대한 영향도 미미합니다.
<표 2> 2009.1 이후 미국 연준의 총자산이 전혀 증가하지 않았을 때
--------------------------------------------------------------------------------------------------------
2009.1~2017.5 2017.5~2022.4 계
--------------------------------------------------------------------------------------------------------
서울 집값 감소(포인트) 0.38 1.32 1.70
가계대출 감소(조원) 1.39 4.48 5.87
--------------------------------------------------------------------------------------------------------
주...문 정부시기 오른 집값=38.4포인트. R 코드와 자료는 <첨부 1> 참고.
이렇게 나온 기술적 이유는 그 자체 아주 단순합니다. 지난 주에 보았던 Price equation (식1)에서 Asset 변수만 따로 떼어 나열하면 아래와 같습니다.
-0.029*Asset(t)+.065*Asset(t-3)-.033*Asset(t-4)+.031*Asset(t-5)-.022*Asset(t-6) (식1)
표준오차 (.015)* (.018)*** (.020) (.019) (.016)
* p value<0.10, *** p value<0.01
이 식에서 Asset변수 회귀계수의 부호가 교번합니다. 즉 total asset변수가 집값에 미치는 영향은 자체 상쇄됩니다. 그래서 (식1)에서 회귀계수들은 (+), (-)로 교변하면서 집값 변동을 잘 설명하지만, 교변의 결과 집값에 미치는 총영향이 작아져서, 이를테면 t value = 회귀계수의 합/표준오차=small이 되어 유의하지 않은 것으로 나왔습니다.
<표 2>는 통계적 관찰의 결과일 뿐 왜 그런 일이 일어났는지 그 메커니즘을 보여 준 것은 아닙니다. 거시경제학 교과서와 국외 연구자들이 말하는 stylized facts에 견주어 보았을 때 <표 2>는 말이 되지 않습니다. 그렇다면 여기 숫자는 statistical artifacts 아니면 누락변수 편향 등 뭔가 다른 이유가 있지 않을까요? 찬찬히 알아봅시다.
<표 3> 문재인 정부시기 집값과 가계대출의 증감요인별 분해
------------------------------------------------------------------------------------------------------------
집값 변화 가계대출 변화
요인 ----------------------- ------------------------ 출처
포인트 % 조원 %
-------------------------------------------------------------------------------------------------------------
문 정권 요인 Moon +30.0 78.1 +120.5 36.2 <첨부 2>
Pandemic 요인 +9.7 25.2 +31.2 9.4 <첨부 2>
미국의 양적완화 Asset
2017.5~2020.3 -0.3 -0.7 -1.0 -0.3 <첨부 1>
2020.3~2022.4 +1.6 4.2 +5.5 1.7
소계 +1.3 3.4 +4.5 1.4 <표 1> 반올림
--------------------------------------------------------------------------------------------------------------
합계 +41.0 106.7 +156.2 46.9
--------------------------------------------------------------------------------------------------------------
임기 중 변화 +38.4 100.0 +332.6 100.0
--------------------------------------------------------------------------------------------------------------
주...2017.5~2022.4에 집값은 서울에서 38.4포인트 상승, 가계대출은 전국 기준 332.6조원 증가. 표의 %는 이 두 수치 대비 백분율. 예컨대 양적완화 요인 때문에 2017.5~2020.3까지 오른 집값은 문 정부에 오른 아파트값 지수 38.4포인트의 -0.3/38.4=-0.7%.
<표 3>은 다른 요인들의 기여도 보여줍니다. 표에 따르면 임기 5년간 양적 완화 때문에 오른 집값은 1.3포인트에 불과하고 팬데믹 요인을 제하고 상승한 집값 모두 Moon 정권요인 때문입니다(정확히 말하면 그 이상).
문재인 정부 때 오른 집값 팬데믹 때문에 오른 집값
38.4 - 9.7 = 28.7 < 30.0 = 문 정권 요인
따라서 양적 완화와 같은 과잉유동성 때문에 어쩔 수 없다는 말의 통계적 근거를 찾지 못했습니다.
또 다른 교훈입니다.
[추가 교훈] 변수의 통계적 유의도 ≠ 변수의 영향력
이상 논의를 토대로 김수현(2023)의 추론과정을 도식화하면 아래와 같습니다.
(1)visual inspection --> (2)상관성 확인 ---> (3)과잉유동성과 집값간 유의한 인과관계 확인
--> (4)과잉유동성이 문 정부 집값 상승을 대부분 or 상당 부분 설명+문 정부요인 부재 측정해 확인
--> (5)문 정부 면책+과잉유동성론 수립
이 도식에서 김수현(2023)은 빨간색 스텝을 생략하고 (2)에서 (5)로 건너뛰었습니다. 문재인 정부 부동산정책 설계자에게서 보는 추론법으로서, 추론의 A, B, C를 지키지 않았던 제2의 '전강수' 현상을 또 봅니다. G10 국가를 지향했던 정부의 부동산정책 최고 책임자의 스칼라십입니다.
[시사] 김수현 박사는 추론의 기본을 무시하는 관행적인 논법에 따라 추론했다. 그러나 아무리 관행이라고 해도 내면화된 무지가 아니면 설명하기 힘든 행동이다. 이 무지를 내면화하는데 있어 계획가와 진보의 편향이 동시에 작용했고, 여기에 통계분석 능력의 부족이 부가적 요인으로 작용한 것 같다.
이상 논의를 아래와 같이 정리합니다. 유럽이나 일본 중앙은행의 total asset은 연습문제로 남겨 놓읍시다.
지금까지 해외요인을 하나씩 고려했습니다. 다음 주에는 <표 4> 마지막 열에서 보듯이 해외요인을 모형에 모두 동시에 포함하고 다시 측정합니다. 누락변수 편향 가능성도 살펴보겠다는 말씀입니다.
여러분이 그림 보고, 신문 보고 궁예의 관심법(觀心法)으로 투철(透徹)했던 결론, 세상 미련하게 알아보지요.
이혁주 드림
<첨부 1> Asset 변수가 Price, Debt에 미친 영향 측정
Step 1...2009.1 이후 2022.4까지 Asset 변수를 포함한 지난 주 토론문 (식1), (식2)를 이용해 '정상적인 집값 스케줄' 계산
Step 2...같은 기간 (식1), (식2)에서 Asset변수를 제거한 새 수식을 이용해 '가상 집값 스케줄' 계산
Step 3...Asset변수의 영향=정상적인 집값 스케줄 – 가상 집값 스케줄
Data=read.csv(file.choose(),header=T) # 여기 자료 이용할 것. 필요한 변수만 모아서 다시 꾸밈.
attach(Data)
endo=cbind(Price,Debt)
exo=cbind(Moon,Park,Pandemic,Asset0,Asset3,Asset4,Asset5,Asset6)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,
1,1,1,1,1, 1,1,1,0,0, 0,0,0),nrow=2,byrow=TRUE)
F_model=restrict(model, method="man",resmat=C)
Bcoef(F_model)
Price.l1 Debt.l1 Price.l2 Debt.l2 const
Price 0.7053797 0.04689936 -0.14377291 0.15201048 -0.08139193
Debt 0.2746973 0.27288236 -0.02018486 0.03237002 0.21174272
Moon Park Pandemic Asset0 Asset3
Price 0.17926183 0.02716449 0.13927962 -0.02921698 0.06582431
Debt 0.01237353 0.13665046 -0.01119652 0.00000000 0.00000000
Asset4 Asset5 Asset6
Price -0.03383043 0.03157108 -0.0223483
Debt 0.00000000 0.00000000 0.0000000
A1=Bcoef(F_model)[,1:2] # 계수 행렬 A1 만들기
A2=Bcoef(F_model)[,3:4] # 계수 행렬 A2 만들기
nu=Bcoef(F_model)[,5] # 절편 벡터 nu 만들기
Coef_exo=Bcoef(F_model)[,6:13]
Coef_Moon=Bcoef(F_model)[,6]
Coef_Park=Bcoef(F_model)[,7]
Coef_Pandemic=Bcoef(F_model)[,8]
Coef_Asset=Bcoef(F_model)[,9:13]
X=t(exo) # 160*8 행렬을 8*160 전치행렬로 바꾸기
y=array(0,c(2,160)) # 추정할 모형의 y(t)=[Price(t),Debt(t)]’, t=2009.1~2022.4 초기화
y[1,1]=Price[1]
y[2,1]=Debt[1]
y[1,2]=Price[2]
y[2,2]=Debt[2]
level.with=array(0,c(2,160)) # Predicted level time series with FRB Total Assets variables
level.with[,1]=matrix(c(58.617,51.1998),c(2,1)) #2009.1에 apt값 지수 58.6포인트, 가계대출 511.9조원
level.with[,2]=matrix(c(58.518,51.47894),c(2,1)) #2009.2
for(n in 3:160){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+Coef_exo%*%X[,n]
level.with[,n]=level.with[,n-1]+y[,n]} # predicted level(t) 완성 (식2)
level.with[,160] #본문의 "정상적인 집값 스케줄"
[1] 98.29588 124.17165
#Step 1 완성
#이어서 Asset=0일 때 집값 추정. Step 2 시작
> X=cbind(Moon,Park,Pandemic,array(0,c(160,5))) # Asset variables=0
> X=t(X)
> y=array(0,c(2,160)) # 추정할 모형의 y(t)=[Price(t),Debt(t)]’, t=2009.1~2022.4
> y[1,1]=Price[1] # 2009.1 실제 Price(t), 1st differenced
> y[2,1]=Debt[1] # 2009.1 실제 Debt(t), 1st differenced
> y[1,2]=Price[2] # 2009.2 실제 Price(t), 1st differenced
> y[2,2]=Debt[2] # 2009.2 실제 Debt(t), 1st differenced
> level.without=array(0,c(2,160)) # Asset=0일 때 (Price, Debt) level값 저장할
> level.without[,1]=matrix(c(58.617,51.1998),c(2,1)) #2009.1에 58.6포인트, 511조원
> level.without[,2]=matrix(c(58.518,51.47894),c(2,1))
> for(n in 3:160){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+Coef_exo%*%X[,n]
level.without[,n]=level.without[,n-1]+y[,n]} (식3)
> level.without[,160] #본문의 "가상 집값 스케줄"
[1] 96.59485 123.58436 # 본문의 Step 2 완성
> Effect=level.with-level.without # Asset변수가 집값에 미친 영향(포인트) (식4)
> Effect[,160]
[1] 1.7010312 0.5872896 # 2022.4 연준 total asset 규모를 2009.1 수준으로 되돌렸을 때 서울 아파트값 지수는 1.70포인트 하락, 한국 가계대출은 5.8조원 감소. 거의 영향이 없음.
> round(Effect,3) # 소숫점 4째 자리에서 반올림해서 출력한 값
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11]
[1,] 0 0 0.083 -0.078 -0.310 -0.385 -0.352 -0.308 -0.347 -0.419 -0.472
[2,] 0 0 0.000 0.023 -0.017 -0.088 -0.124 -0.126 -0.116 -0.125 -0.146
[,12] [,13] [,14] [,15] [,16] [,17] [,18] [,19] [,20] [,21]
[1,] -0.454 -0.432 -0.415 -0.393 -0.387 -0.380 -0.357 -0.334 -0.313 -0.296
[2,] -0.165 -0.165 -0.160 -0.154 -0.147 -0.143 -0.141 -0.133 -0.125 -0.118
[,22] [,23] [,24] [,25] [,26] [,27] [,28] [,29] [,30] [,31]
[1,] -0.294 -0.307 -0.344 -0.380 -0.411 -0.406 -0.414 -0.401 -0.382 -0.345
[2,] -0.111 -0.109 -0.112 -0.122 -0.134 -0.146 -0.147 -0.150 -0.148 -0.142
[,32] [,33] [,34] [,35] [,36] [,37] [,38] [,39] [,40] [,41]
[1,] -0.286 -0.210 -0.157 -0.129 -0.137 -0.162 -0.198 -0.155 -0.130 -0.087
[2,] -0.131 -0.112 -0.087 -0.066 -0.053 -0.052 -0.057 -0.068 -0.059 -0.051
[,42] [,43] [,44] [,45] [,46] [,47] [,48] [,49] [,50] [,51]
[1,] -0.102 -0.113 -0.128 -0.120 -0.121 -0.140 -0.174 -0.209 -0.242 -0.268
[2,] -0.037 -0.038 -0.040 -0.045 -0.044 -0.044 -0.050 -0.060 -0.072 -0.084
[,52] [,53] [,54] [,55] [,56] [,57] [,58] [,59] [,60] [,61]
[1,] -0.275 -0.253 -0.220 -0.183 -0.151 -0.118 -0.086 -0.058 -0.048 -0.005
[2,] -0.094 -0.099 -0.094 -0.084 -0.072 -0.060 -0.048 -0.036 -0.026 -0.020
[,62] [,63] [,64] [,65] [,66] [,67] [,68] [,69] [,70] [,71] [,72] [,73]
[1,] 0.031 0.081 0.117 0.151 0.187 0.228 0.262 0.287 0.312 0.321 0.335 0.355
[2,] -0.007 0.006 0.023 0.037 0.050 0.063 0.078 0.091 0.101 0.110 0.115 0.121
[,74] [,75] [,76] [,77] [,78] [,79] [,80] [,81] [,82] [,83] [,84] [,85]
[1,] 0.374 0.393 0.409 0.408 0.406 0.396 0.391 0.389 0.391 0.390 0.394 0.399
[2,] 0.127 0.134 0.141 0.147 0.149 0.149 0.146 0.144 0.143 0.143 0.143 0.144
[,86] [,87] [,88] [,89] [,90] [,91] [,92] [,93] [,94] [,95] [,96] [,97]
[1,] 0.395 0.398 0.397 0.399 0.402 0.404 0.397 0.395 0.395 0.394 0.395 0.391
[2,] 0.146 0.145 0.146 0.146 0.146 0.147 0.148 0.146 0.145 0.145 0.145 0.145
[,98] [,99] [,100] [,101] [,102] [,103] [,104] [,105] [,106] [,107]
[1,] 0.386 0.385 0.375 0.378 0.383 0.391 0.391 0.396 0.394 0.393
[2,] 0.143 0.142 0.141 0.139 0.139 0.140 0.142 0.143 0.145 0.144
2017.5
[,108] [,109] [,110] [,111] [,112] [,113] [,114] [,115] [,116] [,117]
[1,] 0.394 0.399 0.400 0.408 0.409 0.411 0.415 0.415 0.409 0.409
[2,] 0.144 0.144 0.146 0.146 0.148 0.149 0.150 0.151 0.152 0.150
[,118] [,119] [,120] [,121] [,122] [,123] [,124] [,125] [,126] [,127]
[1,] 0.402 0.387 0.381 0.366 0.353 0.341 0.328 0.316 0.306 0.295
[2,] 0.150 0.148 0.144 0.141 0.136 0.131 0.127 0.122 0.117 0.114
[,128] [,129] [,130] [,131] [,132] [,133] [,134] [,135] [,136] [,137]
[1,] 0.266 0.236 0.143 0.056 0.012 0.068 0.117 0.076 -0.458 -1.017
[2,] 0.110 0.101 0.091 0.063 0.032 0.013 0.023 0.037 0.030 -0.118
2020.2
[,138] [,139] [,140] [,141] [,142] [,143] [,144] [,145] [,146] [,147]
[1,] -1.106 -0.123 0.546 1.185 1.221 1.161 1.066 1.079 1.094 1.128
[2,] -0.301 -0.369 -0.122 0.107 0.340 0.408 0.416 0.396 0.396 0.400
[,148] [,149] [,150] [,151] [,152] [,153] [,154] [,155] [,156] [,157]
[1,] 1.105 1.150 1.183 1.215 1.24 1.30 1.366 1.410 1.478 1.513
[2,] 0.410 0.406 0.418 0.429 0.44 0.45 0.469 0.492 0.509 0.532
[,158] [,159] [,160]
[1,] 1.580 1.623 1.701
[2,] 0.547 0.570 0.587
2022.4
이 수열에서 아래 표 작성.
2009.1~2017.5 2017.5~2022.4 계
오른 집값(포인트) 0.378 1.32 1.70
증가한 가계대출(조원) 1.39 4.48 5.87
<첨부 2> Moon 및 Pandemic 변수가 Price, Debt에 미친 영향
> Bcoef(F_model)
Price.l1 Debt.l1 Price.l2 Debt.l2 const
Price 0.7053797 0.04689936 -0.14377291 0.15201048 -0.08139193
Debt 0.2746973 0.27288236 -0.02018486 0.03237002 0.21174272
Moon Park Pandemic Asset0 Asset3
Price 0.17926183 0.02716449 0.13927962 -0.02921698 0.06582431
Debt 0.01237353 0.13665046 -0.01119652 0.00000000 0.00000000
Asset4 Asset5 Asset6
Price -0.03383043 0.03157108 -0.0223483
Debt 0.00000000 0.00000000 0.0000000
> A1=Bcoef(F_model)[,1:2] # 계수 행렬 A1 만들기
> A2=Bcoef(F_model)[,3:4] # 계수 행렬 A2 만들기
> Coef_Pandemic=Bcoef(F_model)[,8]
> y=array(0,c(2,20)) # 20달이면 충분
> y[,1]=Coef_Pandemic # one-time shock
> y[,2]=A1%*%y[,1]
> for(n in 3:20){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
> sum(y[1,])*26 #팬데믹은 문 정부 때 2020.3 이후 2022.5까지 모두 26개월 지속되었음
[1] 9.675838 # Pandemic이 서울 아파트값 지수 9.67포인트 올림
> sum(y[2,])*26
[1] 3.124601 # Pandemic이 한국의 가계대출 31.2조원 증가시킴
> sum(y[1,1:12])/sum(y[1,]) # 0.988. 즉 Pandemic변수가 집값에 미치는 영향의 98.8%가 12달 안에 집값에 반영됨.
> Coef_Moon=Bcoef(F_model)[,6]
> y=array(0,c(2,20)) # 20달이면 충분
> y[,1]=Coef_Moon # one-time shock
> y[,2]=A1%*%y[,1]
> for(n in 3:20){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
> sum(y[1,])*60 # 문 정부기간=60달
[1] 29.99629 # Moon이 서울 아파트값 지수 30.0포인트 올림
> sum(y[2,])*60
[1] 12.05402 # Moon이 임기중 가계대출 120.5조원 증가시킴
김 박사님 보세요.
이번 주에는 자본 유출입과 관련된 변수까지 포함한 모형에서 연준자산이 서울 집값에 미친 영향을 측정합니다. <표 1>이 그 결과입니다. 결과에 차이가 없습니다. 연준자산은 여전히 유의하지만 별 영향을 주지 않았습니다. 연준 자산을 제외하고 다른 해외요인은 유의도가 많이 떨어지고 그 영향도 매우 작아 아래 표에 기입하지 않았습니다. 다만, 주목할 만한 것은 연준자산과 팬데믹 사이에 다중공선성이 존재하는 것 같습니다. 팬데믹의 영향은 유의도, 크기 양측면에서 연준자산 변수의 존재 여부에 따라 영향을 제법 받습니다.
<표 1> 문재인 정부 주택가격 상승분의 요인별 분해
-------------------------------------------------------------------------------------
상승요인 집값 상승(포인트) 설명력
-------------------------------------------------------------------------------------
연준자산 +2.43 유의
문 정권요인 +30.77 유의
팬데믹 +8.20 비유의
-------------------------------------------------------------------------------------
주... 문재인 정부시기 서울 집값은 모두 38.4포인트 상승. 출처는 첨부 문서
지난 몇 달 논의한 결과를 <표 2>와 같이 정리합니다. 무측정으로 성(盛)했다 무측정으로 망했습니다. 김수현, 김경민, 변창흠, ... 박사 등. 이들 모두 계획계 인사입니다. 진보는 이들의 확장이고요. 경험과학의 pivotal concept인 측정과 분리해 진보의 신화(myth)를 상상할 수 없는 것은 이런 이유에서입니다. 경제학 박사 전강수(지도교수 안병직)는 경제학의 기본원리에 관한 질문(efficiency criterion of SMB>SMC or not)을 이해하지 못했는데, 그의 세계가 이 연장된 틀에 강하게 구속되었기 때문이라고 해석할 수 있습니다. 이준구 박사의 실토도 진보 계획가들 인식의 연장선 위에서 이해할 수 있습니다.
잘 아시다시피 제 시론은 엄밀한 실증적 근거 위에서 쓴 게 아니기 때문에 좀 더 정밀한 실증적 검증이 필요하다고 봅니다. 출처: 2023.2.28 이메일 <첨부 1>
이 말의 배경에 여러 가지 토론외적 고려사항이 있을 테지만, 이 언급은 사실적 자기평가이자 부동산분야 진보논설 일반의 한계에 대한 고백으로서 저자가 진보 계획가들의 인식 지평을 벗어나지 못했을 때 있을 법한 입장 표명입니다. 진보 계획가도 상상하지 못했던 것을 다른 분야 진보 인사가 지적 상상을 할 수 있었을까요?
따라서 진보의 부동산정책관과 진보 계획가의 인식 지평을 결합해 이해할 필요가 있습니다. 나중에 진보계획가의 인식 지평을 계획가 일반의 인식 지평과 연결해 이해하는 작업을 합니다.
다음 주에는 <표 2> 오른쪽 끝 마지막 칸을 채웁니다.
이혁주 드림
<첨부 1> 모형의 추정과 <표 1> 작성
data=read.csv(file.choose(),header=T) # 자료 읽어들이기. 시작점=2009.1. 자료: 여기
attach(data)
FRB_assets=read.csv(file.choose(),header=T) # 자료 내려받기, 시작점=2009.1
View(FRB_Assets)
BOP=read.csv(file.choose(),header=T) #[지표 3] 분석용 원자료 자료 내려받기(monthly level data), stationary. 시작점=2008.12
Inflow=BOP$FDI_liab+BOP$Portfolio_liab+BOP$OtherInvt_liab
Inflow=Inflow/1e4 # Scaling just in case
endo=cbind(P_old.d,Debt.d,Inflow[2:161])
colnames(endo)=c('Price','Debt','Inflow') # 시작점=2009.1
exo=cbind(Moon,Park,Pandemic,Asset0,Asset3,Asset4,Asset5,Asset6) # 시작점=2009.1
library(vars)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,0,1,1, 0,1,1,1,1, 1,1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),byrow=TRUE,nrow=3)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.83 Inflow --> Price
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1,
1,1,0,1,1, 0,1,1,1,1, 1,1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),byrow=TRUE,nrow=3)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.58 Inflow --> Debt
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 0,0,0,0,0,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),byrow=TRUE,nrow=3)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,5) # 0.00 Asset --> Price
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 0,0,0,0,0,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),byrow=TRUE,nrow=3)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,5) # 0.86 Asset --> Debt
C=matrix(c(1,1,1,1,1, 1,1,1,1,0, 1,1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),byrow=TRUE,nrow=3)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,5) # 0.526, Pandemic --> Price
<첨부 2> Capital inflow가 집값에 영향 측정
위 코드에 이어서 실행.
Bcoef(model)
Price.l1 Debt.l1 Inflow.l1 Price.l2 Debt.l2
Price 0.70553130 0.04897357 -0.002192334 -0.142813708 0.15692246
Debt 0.24762387 0.26509508 -0.054243319 0.001547802 0.02237194
Inflow 0.06840526 -0.04913705 0.081916374 -0.026121763 -0.17551913
Inflow.l2 const Moon Park Pandemic
Price 0.02498206 -0.09280638 0.18044434 0.0306505 0.11954986
Debt 0.00389260 0.22862207 0.02627083 0.1292214 -0.02926862
Inflow -0.01707197 0.41729310 -0.04888512 -0.1720488 0.47417417
Asset0 Asset3 Asset4 Asset5 Asset6
Price -0.028394534 0.067261198 -0.032677063 0.03196195 -0.02131143
Debt -0.002540693 -0.001795432 0.019717399 -0.01899147 0.02478389
Inflow 0.037752135 -0.052865909 0.004576572 -0.04042974 0.01887577
A1=Bcoef(model)[,1:3] # 계수 행렬 A1 만들기
A2=Bcoef(model)[,4:6] # 계수 행렬 A2 만들기
y=array(0,c(3,30))
impact=Inflow[160]-Inflow[101] # 0.724
y[,1]=array(c(0,0,impact),c(3,1))
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,]) # 0.017포인트. capital inflow의 영향은 사실상 제로.
<첨부 3> 양적 완화, Moon, Pandemic이 집값에 미친 영향 측정
(1) 양적 완화가 미친 영향
위 코드에 이어서 실행.
Step 1...2009.1 이후 2022.4까지 Asset 변수를 포함하고 '정상적인 집값 스케줄' 계산
Step 2...같은 기간 Asset변수를 제거한 새 수식을 이용해 '가상 집값 스케줄' 계산
Step 3...Asset변수의 영향=정상적인 집값 스케줄 – 가상 집값 스케줄
Bcoef(model)
Price.l1 Debt.l1 Inflow.l1 Price.l2 Debt.l2
Price 0.70553130 0.04897357 -0.002192334 -0.142813708 0.15692246
Debt 0.24762387 0.26509508 -0.054243319 0.001547802 0.02237194
Inflow 0.06840526 -0.04913705 0.081916374 -0.026121763 -0.17551913
Inflow.l2 const Moon Park Pandemic
Price 0.02498206 -0.09280638 0.18044434 0.0306505 0.11954986
Debt 0.00389260 0.22862207 0.02627083 0.1292214 -0.02926862
Inflow -0.01707197 0.41729310 -0.04888512 -0.1720488 0.47417417
Asset0 Asset3 Asset4 Asset5 Asset6
Price -0.028394534 0.067261198 -0.032677063 0.03196195 -0.02131143
Debt -0.002540693 -0.001795432 0.019717399 -0.01899147 0.02478389
Inflow 0.037752135 -0.052865909 0.004576572 -0.04042974 0.01887577
A1=Bcoef(model)[,1:3] # 계수 행렬 A1 만들기
A2=Bcoef(model)[,4:6] # 계수 행렬 A2 만들기
nu=Bcoef(model)[,7] # 절편 벡터 nu 만들기
Coef_Moon=Bcoef(model)[,8]
Coef_Park=Bcoef(model)[,9]
Coef_Pandemic=Bcoef(model)[,10]
Coef_Asset=Bcoef(model)[,11:15]
y=array(0,c(3,160)) # 추정할 모형의 y(t)=[Price(t),Debt(t),Inflow(t)]’, t=2009.1~2022.4 초기화
y[1,1]=endo[1,1] # Price[1], 2009.1
y[2,1]=endo[1,2] #Debt[1], 2009.1
y[3,1]=endo[1,3] # Inflow[1], 2009.1
y[1,2]=endo[2,1] # Price[2], 2009.2
y[2,2]=endo[2,2]
y[3,2]=endo[2,3]
level.with=array(0,c(3,160))
level.with[,1]=matrix(c(58.617,51.1998,0.27588),c(3,1)) #2009.1에 apt값 지수 58.6포인트, 가계대출 511.9조원, Inflow ...
level.with[,2]=matrix(c(58.518,51.47894,-0.05752),c(3,1)) #2009.2
for(n in 3:160){temp=array(c(exo[n,4:8]),c(5,1))
y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+Coef_Moon*exo[n,1]+Coef_Park*exo[n,2] +Coef_Pandemic*exo[n,3]+Coef_Asset%*%temp
level.with[,n]=level.with[,n-1]+y[,n]} # predicted level(t) 완성. level.with[2,n]는 무의미
level.with[,160]
[1] 98.37498 124.22399 53.47546 #Step 1 완성
#이어서 Asset=0일 때 집값 추정. Step 2 시작
y=array(0,c(3,160)) # 추정할 모형의 y(t)=[Price(t),Debt(t),Inflow(t)]’, t=2009.1~2022.4 초기화
y[1,1]=endo[1,1] # Price[1], 2009.1
y[2,1]=endo[1,2] #Debt[1], 2009.1
y[3,1]=endo[1,3] # Inflow[1], 2009.1
y[1,2]=endo[2,1] # Price[2], 2009.2
y[2,2]=endo[2,2]
y[3,2]=endo[2,3]
level.without=array(0,c(3,160))
level.without[,1]=matrix(c(58.617,51.1998,0.27588),c(3,1)) # 2009.1
level.without[,2]=matrix(c(58.518,51.47894,-0.05752),c(3,1)) #2009.2
for(n in 3:160){y[,n]=nu+A1%*%y[,n-1]+A2%*%y[,n-2]+Coef_Moon*exo[n,1]+Coef_Park*exo[n,2] +Coef_Pandemic*exo[n,3]
level.without[,n]=level.without[,n-1]+y[,n]}
level.without[,160]
[1] 94.69992 120.67142 56.47494
level.with[,101]-level.without[,101]
[1] 1.246293 1.440365 -1.196629 # 2009.1 이래 Asset변수의 집값 영향이 2017.5 기준 1.24포인트
level.with[,160]-level.without[,160]
[1] 3.675058 3.552572 -2.999475 # 2009.1 이래 Asset변수의 집값 영향이 2022.4 기준 3.67포인트
주택가격에 미친 영향=3.67-1.24=2.43포인트
가계대출에 미친 영향=-2.99-(-1.19)=-1.80
(2) Moon이 집값에 미친 영향 측정
A1=Bcoef(model)[,1:3] # 계수 행렬 A1 만들기
A2=Bcoef(model)[,4:6] # 계수 행렬 A2 만들기
Coef_Moon=Bcoef(model)[,8]
y=array(0,c(3,30))
y[,1]=Coef_Moon*1 # Moon's govt lasts one month. Initial shock.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} # 본문의 (식3)
sum(y[1,])*60 # +30.77 points
sum(y[2,])*60 # +133.23조원
(3) Pandemic이 집값에 미친 영향 측정
Coef_Pandemic=Bcoef(model)[,10]
y=array(0,c(3,30))
y[,1]=Coef_Pandemic*1 # Moon's govt lasts one month. Initial shock.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # +8.20 points
sum(y[2,])*26 # +8.59조원
김수현 박사님께
이번 주에는 문헌에 등장하는 변수를 최대한 포함했을 때도 여전히 과잉유동성 변수의 설명력이 무시할 만한 크기이고 문 정부 때 오른 집값이 대부분 정권요인 때문에 상승한 것인지 다시 확인합니다. 아래 표 마지막 열입니다.
출처...2024.5.14 토론문 <첨부 3>
<그림 1> 미국 중앙은행 총자산이 서울 집값에 미친 영향
<그림 1>은 지난 주까지 했던 논의의 결과를 보여주는데 이번 주에는 이 그림이 여전히 유효한지 확인합니다. <그림 1>에서 보듯이 여기 사이트에서는 이중차분법(difference in differences)의 원리에 따라 정부요인의 효과를 측정합니다. 이를테면 그림에서 곡선 AD는 미국 연준 자산의 규모가 불변이었을 때 관찰되는 서울 집값 추세입니다. 곡선 AB는 연준 자산 규모의 팽창과 더불어 관찰된 실제 서울 집값 추세입니다. 따라서 곡선 AB와 AD의 높이 차이는 2009.1 이후 오른 집값 가운데 연준 자산의 영향을 보여주고, 2022.4 기준 그 영향은 2009년 이래 3.67포인트가 됩니다. 그런데 2009.1~2017.5 시기 오른 집값이 1.24포인트이므로 연준 자산 때문에 오른 문 정부시기 집값은 3.67-1.24=2.43포인트로서 그림에서 BC가 됩니다.
<그림 2> R 자료 화면
지금까지 사용한 모형의 내생변수는 Price, Debt 등 두 가지뿐이었습니다. <그림 2>는 R 자료창인데, 여기에 있는 여러 가지 변수를 유의도에 관계 없이 모두 집어넣고 다시 측정해보겠습니다. 한국의 CD금리, 전세가격지수, 한국의 통화량 M2, 한국의 제조업생산지수 MPI 등. 과잉유동성 포함 해외요인도 당연히 검토대상입니다. 모형은 자유도를 고려해 개별 회귀계수의 유의도가 1.0 이하 되는 것은 버리고 모형을 구성했습니다(차이 없음). <첨부 1> 참고.
<그림 3> 추정한 모형의 회귀계수
<그림 3>은 추정한 모형의 회귀계수들인데 회귀계수의 t값이 1.0 이하로서 비유의한 계수들은 0으로 표시되었습니다. 새 모형을 이용해 추정한 결과는 <그림 4>, <그림 5>와 같습니다. 지난 주 결과와 차이가 없습니다. 문재인 정부시기 오른 집값은 대부분 정권요인 때문이지 과잉유동성 때문이 아닙니다.
출처: <첨부 1>, Pandemic 변수=비유의
<그림 4> Effects of Moon and Pandemic on Price
출처: <첨부 2>, Asset변수=유의. 즉 연준 자산 변수는 <그림 3>의 Pandemic 변수를 대체하는 역할을 함
<그림 5> Effect of the FRB's total assets on Price
분석결과를 좀 더 자세히 들여다 보겠습니다. <그림 4>는 기준모형의 내생변수 Price, Debt에 CD, Jeonse, M2, MPI, Inflow 순으로 내생변수를 하나씩 추가했을 때, Moon 정권요인과 팬데믹 Pandemic 요인이 주택가격 상승에 미친 영향을 측정한 것입니다. 2가지 모형을 이용했습니다.
Restricted model: 회귀계수의 t value가 1.0 이상 되는 회귀계수만 살려서 측정
Full model: 회귀계수의 유의도에 어떤 제약도 부과하지 않고 모형 추정
<그림 4> 윗 부분에 Moon 정권요인이 주택가격에 미친 영향을 보여주는 곡선이 있는데, 5년간 27.1~36.4포인트 집값을 올렸습니다. 변수의 갯수를 늘림에 따라 기여분은 더 커지는 것으로 나타납니다. 반면 그림 아래쪽에는 팬데믹 요인이 문재인 정부시기 집값에 미친 영향을 보여줍니다. 모형에 따라 약간 다르지만 -3 ~ +10포인트 정도 영향을 주었고, Full model의 경우 Moon의 영향 + Pandemic의 영향이 약 40포인트로서 일정한 크기인 것을 볼 수 있습니다(수직 높이의 합이 약 40포인트). 팬데믹의 영향 + 연준 총자산의 영향도 그 크기가 대체로 일정합니다. 전에 보았던 것입니다.
변수의 갯수와 종류에 따라 차이가 있지만, 팬데믹처럼 불가피한 요인을 제외하고 오른 주택가격이 대부분(혹은 변수의 갯수에 따라 모두) 문 정권요인 때문에 올랐다는 결론에는 변화가 없습니다. 여기서 검토한 변수 이외에 그간 보았던 다른 변수들을 집어 넣어도 변화는 없습니다. 물론 변수의 갯수를 늘리면서 모형의 품질은 자꾸 떨어집니다. Adequacy index에서 그렇고 각 equation이 따로 노는 경향이 증가합니다. 다중회귀식을 왜 돌려야 하는지 자꾸 회의가 들게 만듭니다. 무리해서 변수의 갯수를 늘릴 일은 아닌 것 같습니다.
한편 <그림 5>는 연준 자산규모가 주택가격에 미친 영향을 보여줍니다. Pandemic변수와 연준 자산변수가 한 모형에 공존할 때 두 효과의 합의 일정한 크기로 주어지고, 다중공선성이 관찰되는 것 같습니다. 팬데믹이 더 포괄적인 변수로서 당시 양적완화까지 내포하는 개념이라는 점, 그리고 연준 총자산의 2017년 이전까지 서울 집값에 미친 영향이 미미했다는 점, 연준 총자산의 영향을 팬데믹 변수가 잘 포착해 보여준다는 점(where and when did you see this?)에 착안해 다음과 같이 판단합니다.
[모형에 대한 시사] 연준자산 등 과잉유동성 변수 대신 Pandemic 변수를 이용해 서울 집값을 분석해도 별 문제가 없다.
출처: 김수현(2023) p.89
<그림 6> 문재인 정부에 적용되지 않는 노무현 대통령의 변(辯)
이상 분석결과를 토대로 <그림 6> 김수현(2023: 89)에서 한 말 "노무현 대통령이 .... 전세계 부동산 값이 다 올라도 한국은 올라서는 안 된다..."(2번째 문단)라는 항변은 문재인 정부에 적용되지 않습니다. 문 정부 때 오른 집값은 문 정부요인 때문입니다. 전강수 박사도 노무현 대통령을 함부로 인용하더니 여기서도 함부로 인용했습니다. 추종자가 똘똘해야 지도자도 면이 섭니다.
<표 2> 시스템 실패의 단계와 진행
----------------------------------------------------------------------------------------------------------------------------------------------
실패 지점
사례 ------------------------------------------------------------------------------------ System failure
1단계 2단계 3단계 4단계
----------------------------------------------------------------------------------------------------------------------------------------------
박진백 외(2021) 연구자 자신 국토연구원 부동산 국토연구원 『주택연구』 발생
시장정책연구센터 편집위원회
김수현, 김경민 연구자 자신 계획계 계획계 밖 --> 연구자 자신 발생
실패
----------------------------------------------------------------------------------------------------------------------------------------------
주...여기 표는 2024.3.11 토론문에서 옮겨 씀
과잉유동성 원인론을 주장한 김수현(2023)은 <표 2>에서 빨간색 화살표에 해당하는 단계에서 오류를 범했습니다. 여러 인사들이 주장한 것이고 이코노미스트들도 자주 하는 이야기입니다. 여러 사람들이 그렇게 이해하고 있으니 별 의심 없이 수용했고, 그림 몇 장으로 인과론에 관해 얘기할 수 있었습니다. 그걸 수립하라는 이혁주 박사의 요구 같은 것은 생뚱맞은 소리가 됩니다. 이런 맥락에서만이 김수현, 김경민, 이준구 박사(이 박사는 나중에 봄)의 논법을 이해할 수 있습니다.
<표 3> OECD국가의 소비자 물가지수 및 명목 주택가격 지수 변화
-----------------------------------------------------------------------------------------------
2017 Q1 2020 Q1 2022 Q2
-----------------------------------------------------------------------------------------------
소비자 물가지수 OECD 102.7 109.6 124.5
한국 102.8 105.5 113.4
주택가격 지수 OECD 109.0 125.6 165.1
한국 102.1 105.6 121.2
(72.8) (76.8) (100.7)
---------------------------------------------------------------------------------------------
주...기준년도는 2015년. 출처는 data.oecd.org(통계가 일부 조작된 것으로 보도된 한국부동산원 자료 같음). 괄호 안은 KB 전국 주택가격지수.
전에 보았던 <표 3>도 그런 추론의 현실적 배경이 되었습니다. 그러나 <표 3> 어디서도 정부실패와 불가항력적 상승분을 구분해 보여주지 않습니다. 박진백 외(2021)가 그랬던 것처럼 처음부터 정부요인을 제외한다거나 "정책신뢰" 운운하면서 시장 탓을 하고 빠져나갑니다. 그러고는 문 정부를 면책했습니다. 여기서 정부요인도 정책신뢰도 제대로 된 논의가 없습니다. 나중 참고용으로 아래와 수정해 정리합니다.
관행적 논법 = 측정 없이 인과론 얘기하기, 그런 걸 다른 말 마구 해서 독자 헤깔리게 하면서 타당성 논변하기(예=김수현(2023), 이준구(2023)), sample=population, correlation=causality, 자신의 입장과 일치하는 관찰만 이용하기, 그때그때 입장 바꾸고 유리한 관찰 인용해 포장하기 + 제대로 논한 바 없는 요인을 그것 때문은 아니라고 결론 짓기 ... 출처: 토론문 2024.4.29
다음 주에는 김수현(2023)에 나오는 10, 15년 집값 주기설에 대해 알아봅니다. 이 주기설에 따르면 노무현 정부 이후 이명박, 박근혜 정부를 지나 문재인 정부 때는 집값 상승주기에 속했다고 합니다. 이것이 사실이라면 보수정부는 운이 좋았고, 진보정부는 운이 나빴습니니다(이하 보수행운/진보불운론). 다른 말로 서울 집값은 대충 운수소관이고 하늘의 이치가 됩니다. 김 작가(作家)의 상상력이 한번 더 흥미로운 방향으로 전개되었습니다.
이혁주 드림
<첨부 1> 변수를 추가하고 다시 측정한 결과
data=read.csv(file.choose(),header=T) # 자료 읽어들이기. 시작점=2009.1. 자료: 여기
attach(data)
FRB_assets=read.csv(file.choose(),header=T) # 자료 내려받기, 시작점=2009.1
View(FRB_Assets)
BOP=read.csv(file.choose(),header=T) #[지표 3] 분석용 원자료 자료 내려받기(monthly level data), stationary. 시작점=2008.12
Inflow=BOP$FDI_liab+BOP$Portfolio_liab+BOP$OtherInvt_liab
Inflow=Inflow/1e4 # Scaling just in case
endo=cbind(P_old.d,Debt.d,CD.d, Jeonse.d, M2.d, MPI.d,Inflow[2:161])
colnames(endo)=c('Price','Debt','CD','Jeonse','M2','MPI','Inflow') # 시작점=2009.1
exo=cbind(Moon,Park,Pandemic,Asset0,Asset3,Asset4,Asset5,Asset6) # 시작점=2009.1
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(R_model)[,1:7]
A2=Bcoef(R_model)[,8:14]
b=Bcoef(R_model)[,16]
y=array(0,c(7,30))
y[,1]=b*1 # 1은 생략가능. 문재인 정부 1달의 영향을 측정. linear model이라 ok. 60달의 영향은 정확히 측정값의 60배.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,]*60 # 34.24포인트
Moon_full=0
Moon_restricted=0
Pandemic_full=0
Pandemic_restricted=0
for(n in 2:7){endo_loop=endo[,1:n]
model=VAR(endo_loop,p=2,exogen=exo)
x1=n
x2=n+1
x3=2*n
x4=2*n+2
A1=Bcoef(model)[,1:n]
A2=Bcoef(model)[,x2: x3]
b_Moon=Bcoef(model)[,x4]
y=array(0,c(n,30))
y[,1]=b_Moon
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
Moon_full[n]=sum(y[1,])*60 # full model에서 Moon의 영향 측정해 저장
b_Pandemic=Bcoef(model)[,x4+2]
y[,1]=b_Pandemic
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
Pandemic_full[n]=sum(y[1,])*26 # full model에서 Pandemic의 영향 측정해 저장
R_model=restrict(model, method ='ser', thresh = 1)
x1=n
x2=n+1
x3=2*n
x4=2*n+2
A1=Bcoef(R_model)[,1:n]
A2=Bcoef(R_model)[,x2: x3]
b_Moon=Bcoef(R_model)[,x4]
y=array(0,c(n,30))
y[,1]=b_Moon
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
Moon_restricted[n]=sum(y[1,])*60 # Restricted model에서 Moon의 영향 측정해 저장
b_Pandemic=Bcoef(R_model)[,x4+2]
y=array(0,c(n,30))
y[,1]=b_Pandemic
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
Pandemic_restricted[n]=sum(y[1,])*26 # Restricted model에서 Pandemic의 영향 측정해 저장
}
plot(x,Moon_restricted[2:7],type='l',ylim=c(-5,40),ylab='Effect on Price (points)',lwd=1.5,xlab='# Endogenous variables')
lines(x,Moon_full[2:7],type='l',col='red',lwd=1.5)
lines(x,Pandemic_full[2:7],type='l',lwd=1.5)
lines(x,Pandemic_restricted[2:7],type='l',col='red',lwd=1.5)
text(3,25,'Moon, Full model', cex=0.9)
text(5.5,30,'Moon, Restricted model', cex=0.9, col='red')
text(5,8, 'Pandemic, Full model', cex=0.9)
text(2.9,1, 'Pandemic, Restricted model', cex=0.9, col='red')
abline(h=0,lty='dotted')
abline(h=38.4,lty='dotted')
text(3,39,'38.4 points')
변수가 3개일 때 Moon+Pandemic 요인
Moon_full[2]+Pandemic_full[2] #39.1
Moon_full[3]+Pandemic_full[3] #40.9
Moon_full[4]+Pandemic_full[4] # 38.2
Moon_restricted[2]+Pandemic_restricted[2] #36.5
Moon_restricted[3]+Pandemic_restricted[3] # 37.0
Moon_restricted[4]+Pandemic_restricted[4] #34.7
<첨부 2> Asset 변수가 집값에 미친 영향
endo=cbind(P_old.d,Debt.d,CD.d, Jeonse.d, M2.d, MPI.d,Inflow[2:161])
colnames(endo)=c('Price','Debt','CD','Jeonse','M2','MPI','Inflow') # 시작점=2009.1
exo=cbind(Moon,Park,Pandemic,Asset0,Asset3,Asset4,Asset5,Asset6) # 시작점=2009.1
final=array(0,c(2,7))
for(no.model in 1:2){
model=VAR(endo[,1:2],p=2,exogen=exo)
if(no.model==2){R_model=restrict(model, method ='ser', thresh = 1)
model=R_model}
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
B=Bcoef(model)[,9:13]
y=array(0,c(2,30))
collect=0
effect=0
for(n in 101:160){y[,1]=B%*%exo[n,4:8]
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
effect=effect+sum(y[1,])
}
collect[2]=effect
for(no.var in 3:7){model=VAR(endo[,1:no.var],p=2,exogen=exo)
if(no.model==2){R_model=restrict(model, method ='ser', thresh = 1)
model=R_model}
x1=no.var+1
x2=no.var*2
x3=x2+5
x4=x3+4
A1=Bcoef(model)[,1:no.var]
A2=Bcoef(model)[,x1:x2]
B=Bcoef(model)[,x3:x4]
y=array(0,c(no.var,30))
effect=0
for(n in 101:160){y[,1]=B%*%exo[n,4:8] # Given the number of variables, we measure
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
effect=effect+sum(y[1,])
}
collect[no.var]=effect
}
final[no.model,]=collect
}
plot(x,final[1,2:7],xlab='#Endogenous variables',ylab='Effect on Price (points)',ylim=c(0,40),type='l',lwd=1.5)
lines(x,final[2,2:7],type='l',col='red',lwd=1.5)
text(5,3,'Full model')
text(5,12,'Restricted model')
abline(h=0,lty='dotted')
김수현 박사님 보시지요.
야래 표는 지난 주까지 했던 논의를 정리한 것입니다. 팬데믹과 과잉유동성은 일부이고 더 큰 나머지는 모두 혹은 대부분 정권요인 때문에 오른 것이다가 지금까지 결론입니다. 그림으로 보면 대충 이런 느낌이었습니다. 오늘은 이 느낌을 그대로 유지하지만, 세부적 뉘앙스와 subtlety에 변화가 조금 있습니다. 조망(鳥望)하되 현미경도 옆에 끼고 보셨으면 합니다.
자료는 2003.10 이후 2022년 4월까지 서울 집값입니다. 2003.10은 가계대출 자료가 available한 가장 이른 시기입니다. 노무현 정부시기 대부분을 포함하고 2008년 GFC까지 포함한 기간입니다. 지난 주까지는 GFC 이전 시기를 빼고 2009년 이후 시기만 포함한 자료를 이용했습니다.
내생변수: 재고주택가격 지수 Price, 가계대출 Debt, 전세가격 지수 Jeonse, 금리 CD
외생변수: 노무현 정부=기준정권, 이명박 정부 Lee, 박근혜 정부 Park, 문재인 정부 Moon, Pandemic, 미국 연준 총자산 asset
분석대상 기간: 2003.10 - 2022.4
종전과 달리 내생변수 몇 가지를 추가했습니다. 민감도 확인 의미도 있습니다. 외생변수 연준 총자산을 6달전까지 lag시켜서 사용했습니다. lag을 충분히 잡은 것을 두고 보수 쪽 인사라면 시비를 걸 수도 있습니다. 이렇게 하면 양적완화 변수의 가격 설명력을 높아질 수도 있습니다(정권변수 Lee, Park, Moon에 대해서는 이렇게 하면 안 됨. why?).
<표 1> 주택가격의 정권주기론 검정 절차와 결과
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Step 1 Step 2 Step 3 Step 4
노무현/문재인 정권을 이명박/박근혜 정권을 같은 정권으로 분류하고
같은 정권으로 분류하는 스텝 보수/진보 대결적 평가가 가능한지 통계검토하는 스텝
------------------------------------------------- ----------------------------------------------------------------------------------
회귀계수에 어떤 Moon 변수를 Price eq에서 Lee와 Park의 Lee, Park을 보수정권 더미
제약도 없는 모형 제거한 모형 회귀계수를 같게 놓은 모형 Converv로 대표하는 스텝
(모형 1) (모형 2) (모형 3) (모형 4)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
log likelihood 171.88 170.27 170.18 154.99
chi^2 test stat. 3.22 0.18 22.50
deg of freedom 4 1 4
p value 0.52 0.67 0.00
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
영가설 Moon의 회귀계수=0 Lee, Park 회귀계수 同 Conserv 변수의 설명력 = 0
판 정 영가설 채택 영가설 채택 영가설 기각
Moon 없어도 됨 가격식에서 Lee=Park 보수/진보로 각 정권 분류 가능
(노/문을 진보정권 (이/박을 보수정권 (집값 변수로서 보수정권 더미는
더미 하나로 대표 가능) 더미 하나로 대표 가능) 설명력 없고, 진보정권 더미만
설명력 있음. 따라서 앞으로 진보정권
더미 하나만 포함해 모형 구성 가능)
검정하는 방법 모형 1 이용해 수행 모형 2 이용해 수행 Converv변수 포함/미포함
모형의 로그 우도 비교해 판정
chi^2 계산식 2*(171.88-170.27) 2*(170.27-170.18) 2*(166.24-154.99)
=3.22 =0.18 =22.50
(여기 두 칸의 chi2가 매우 작다는 것은 (여기 chi2가 매우 크다는 것은 영가설을
영가설을 이용해 계속 탐구해도 ok라는 말) 기각하고 진보 vs 보수를 binary 변수
Conserv로 구분하고 분석가능하다는 말)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
출처 <첨부 1> <첨부 1> <첨부 1> <첨부 1>
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
<표 1>은 집값의 정권주기론을 수립하기 위한 통계절차와 검정결과를 담고 있습니다. 각 step을 따라가면 분석목적상 노무현/문재인 정부 및 이명박/박근혜 정부를 각각 같은 성격의 정권으로 통계 분류할 수 있다는 것을 알 수 있습니다. 이렇게 각 정부를 재분류할 수 있는 직관적 이유는 아래 <그림 1>에서 엿볼 수 있습니다. 이 그림은 모형 1에서 Price equation의 output을 보여주는데, 붉은색 box 안을 보면 Lee, Park 회귀계수의 크기가 비슷하고 매우 유의할 뿐 아니라 Moon 회귀계수도 p value가 지나치게 큽니다.
출처...<첨부 1>, 기준정권=노무현 정부
<그림 1> Price equation에서 각 정권더미의 회귀계수와 유의도
Lee, Park 회귀계수의 크기가 비슷하고 매우 유의(기준정권=노무현 정부) --> Lee, Park을 한 정권으로 분류할 수 있는 가능성 시사
Moon 회귀계수의 p value가 지나치게 크다 --> 문재인 정부를 기준정권인 노무현 정부와 같은 정권으로 분류가능함을 시사
이제 <표 1>의 검정결과에 따라 다음과 같이 말할 수 있습니다.
[정리] 김수현(2023)의 경기적 집값 주기론을 집값의 진보/보수 정권주기론으로 바꿀 수 있다.
김수현(2023)의 경기적 주기론은 그 근거가 visual inspection이었다는 점을 기억하세요. shady area는 창작의 토양이 되는 곳입니다. 경기적 주기론을 기술통계로 어떻게 설득력 있게 제시할 수 있는지 궁급하다면 Leamer(2007)을 참고하세요. Leamer(2007)는 "그래 그 정도라면 됐다"라는 말이 절로 나올 만큼 descriptive argument가 compelling합니다. 이 과정을 성공적으로 수행하고 나면, 다음 단계에서 그 설명력을 검증하는 과정을 거치게 됩니다. 여기 사이트에서 거론된 여러 가지 반대 논의가 김 박사의 설명에 대해 마찬가지로 전개됩니다. 인과론은 동네 똥강아지 이름이 아닙니다.
이제 <표 1>의 분석결과를 반영해 논의를 더 진행시킵니다. <표 1> 모형 1에서 Moon변수를 제거하고 Lee, Park 변수를 하나로 합쳐 Conserv로 놓습니다. 그리고 이 모형을 이용해 "보수정부, 진보정부에 대한 대결적 평가"(line 5)를 시행합니다.
새 모형
내생변수: 종전과 동일, Price, Debt, Jeonse, CD
외생변수: 보수정권 Conserv, Pandemic, 미국 연준 총자산 asset.1 ~ asset.6
새 모형에서 기준정권은 진보정권인 노무현/문재인 정부입니다. <표 2>가 측정결과입니다. 분석결과가 모형의 formulation에 따라 바뀌는지 확인하고자 분석대상 기간을 바꾸어 보기도 하고, 과잉유동성 변수를 넣다, 뺐다 해보았습니다.
<표 2> 변수의 유의도와 주요변수의 집값 영향 측정
-------------------------------------------------------------------------------------------------------------------------------------------
자료: 2003.10 - 2022.4 자료: 2009.1 - 2022.4
----------------------------------------- -----------------------------------------
연준 총자산 연준 총자산 연준 총자산 연준 총자산
포함 모형 미포함 모형 포함 모형 미포함 모형
(모형 A) (모형 B) (모형 C) (모형 D)
-------------------------------------------------------------------------------------------------------------------------------------------
Granger causality (p values)
Conserv --> Price 0.00 0.00 0.00 0.00
팬데믹 --> Price 0.53 0.41 0.69 0.09
(팬데믹,연준 총자산) --> Price 0.00 NA 0.00 NA
-------------------------------------------------------------------------------------------------------------------------------------------
문재인 정부시기 각 요인이 집값에 미친 영향(포인트)
문재인 정권요인 +24.9 +22.8 +28.6 +24.7
팬데믹 +6.5 +11.9 +2.2 +10.9
연준 총자산 +4.5 NA +2.6 NA
-----------------------------------------------------------------------------------------------------------------------------------
계 +35.9 +34.7 +33.4 +35.6
-------------------------------------------------------------------------------------------------------------------------------------------
출처 <첨부 2> <첨부 2> <첨부 3> <첨부 4>
-------------------------------------------------------------------------------------------------------------------------------------------
주...문재인 정부 때 38.4포인트 집값 상승
출처...<첨부 2>. <표 2> 모형 A를 이용해 그렸음. VAR 회귀계수의 교번 현상 때문에 양적완화가 집값에 미친 영향이 GFC와 팬데믹 발발 당시 deep dive + sudden reversal로 나타남.
<그림 2> 2003.10~2022.4 기간 과잉유동성과 팬데믹이 서울 집값에 미친 누적 영향
출처...<첨부 4>
<그림 3> 1986년 1월 이후 집값 추세
<표 2>에 따르면 모형 A에서 주요변수 모두 주택가격을 잘 설명합니다. <표 2> 나머지 모형에서는 변수와 분석대상 기간을 변화시키고 다시 측정했습니다. 스토리에 큰 변화는 없습니다. 참고로 <표 2>에 따르면 과잉유동성과 팬데믹 변수가 상호 보완적이고 그 합(合)이 그런대로 일정한 크기를 유지하는 경향이 발견됩니다. 전에 보았던 것입니다. 연준 총자산과 팬데믹 변수는 jointly significant하고 문 정부시기 상승한 집값 가운데 6.5+4.5=11포인트나 설명합니다(모형 A에서). 2020.3 팬데믹 발생 직후 양적완화+팬데믹의 sum effect는 전적으로 팬데믹이 결정했습니다. <그림 2>에서 2020년 초 deep dive에서 확인 가능.
<그림2>는 모형 A를 이용해 팬데믹/연준자산이 서울 집값에 미친 영향을 측정한 것인데 몇 가지 중요한 사실을 알 수 있습니다.
[관찰 1] 지금까지 보았던 모형 가운데 연준 총자산의 영향이 가장 큰 4.5포인트이다.
[관찰 2] 문재인 정부시기 오른 집값 38.4포인트 ≑ 팬데믹/과잉유동성 11.0포인트 + 정권요인 24.9포인트
[관찰 3] 문재인 정부시기 정부요인의 설명률 = 정권요인 설명분 24.9/(38.4 - 팬데믹/과잉유동성 설명분 11.0)
= 24.9/(38.4-11.0)
= 90.8%
[관찰 4] 2017.5 이전 2년, 이후 2년 도합 4년 동안의 수평구간 = 양적완화의 영향이 거의 없던 기간
(Be sure to check the presence of the flat interval in the figure.)
[관찰 4]는 문 정부 초 김수현 박사가 내렸던 시장진단에 무리가 있었다는 것을 시사합니다.
그는 “재작년 말부터 전세계적으로 수도와 주요도시를 중심으로 부동산 가격이 다시 오르는 현상이 발생하고 있다”며 “수요-공급의 문제를 떠나 다른 차원에서 과도한 양적완화에 따른 머니게임이 벌어지고 있다고 봐야 한다”고 진단했다. 지난 2008년 이후 과잉유동성 문제가 누적되며 부동산에 투기 자본이 몰려 가격 급등이 이뤄졌다는 분석이다. 출처...2017.8.3. 한겨레 신문 인터뷰
"재작년 말부터 전세계적으로 수도와 주요도시를 중심으로" 그 중 하나인 서울에서 "과도한 양적완화에 따른 머니게임이 벌어지고 있다"는 현재 진행형 평가는 통계적으로 무리입니다. 2008년 GFC 이후 시행된 양적완화의 영향 일체는 임기 시작 전에 이미 집값에 모두 반영되어 있던 상태였습니다. 어떤 변수가 다른 변수에 미치는 영은 여기 분석결과에 따르면 2년이면 총 영향의 95% 이상 다른 변수들에 반영됩니다. Plus <그림 2> 수평구간 참고. FRB의 total asset 통계도 당시 일정한 수준이었습니다. 2017.5 집권 후 2년 동안도 마찬가지입니다. <그림 2> 수평구간 참고. 요약하면 양적완화 변수(원인)도 일정, 서울 집값에 대한 영향(결과)도 일정했습니다. 이 점은 <그림 3>에서도 볼 수 있습니다. 그렇게 많이 풀린 돈이 이상하게도 보수정부 상당한 기간 동안 이렇다 할 영향이 없었던 것처럼 보이고(오히려 가격은 하락), GFC 당시 최고가격(2008.9)을 이후 시기에 본격 넘어선 것은 문재인 정부 출범 직전이나 되어서입니다. 주택가격 지수가 명목지수라는 점도 상기하시기 바랍니다. 측정에 무관심할 때 작가적 상상이 어느 정도로 막 나갈 수 있는지 보여주는 사례입니다.
[정리] <그림 2>에서 2017.5 전후 4년 동안 수평구간이 존재했다는 것은 이 기간 서울 집값이 "과도한 양적완화에 따른 머니게임"의 영향을 거의 받지 않았다는 점을 시사한다.
위 문단 초록색 글자들은 정책효과의 실현시기/지속기간에 관한 문제로서, 김수현(2023)의 인식은 정책의 실현시기/지속기간이 최초 정책시행 시점에서 4, 5년 혹은 길게는 10년까지 된다는 믿음에 기초하고 있는 것 같습니다. 아니면 많이 풀린 돈이 언제인가는 준동할 것이라는 믿음 뭐 그런 것... 물론 <그림 2>에 위배되는 주장인데, 정책효과의 실현시기/지속기간에 관한 이슈는 이준구(2023)에서 "정책시차"라는 이름으로 다시 등장하고, 경제학 입문서 이준구-이창용(2020)에도 나오는 개념입니다. 진보 논객들이 필요할 때 편리하게 가져다 쓰는 개념으로 이해가 되고, 그런 의미에서 일종의 recurring theme 같습니다. "정책시차"라는 말로 사람들 기 죽이고 전문가연하면서 현혹하는 논변으로서 기회가 되면 뒤에서 생생한 데모를 통해 얼마나 엉터리인지 보여주겠습니다.
김수현(2023)의 집값 주기설은 관행적 논법에서 보는 여러 가지 특징을 보여주고 있습니다. 연습문제입니다. 아래 목록에서 어느 것이 해당되는지 골라 보세요.
관행적 논법 = 측정 없이 인과론 얘기하기, 그런 걸 다른 말 마구 해서 독자 헤깔리게 하면서 타당성 논변하기(예=김수현(2023), 이준구(2023)), sample=population, correlation=causality, 자신의 입장과 일치하는 관찰만 이용하기, 그때그때 입장 바꾸고 유리한 관찰 인용해 포장하기 + 제대로 논한 바 없는 요인을 그것 때문은 아니라고 결론 짓기 ... 출처: 토론문 2024.5.20
위 [정리]는 controlled lab condition에서 관찰한 결과라는 점을 상기하세요. <표 1>, <표 2>, <그림 2>. '실험적 조작' 없이 얻을 수 없는 결과물이고, 여기 얘기가 작가적 산물이 아닌 이유가 됩니다. 어떻게 실험조작을 하느냐에 따라 실험결과가 달라지기는 해도... 이런 점이 바로 여기 이혁주 박사의 논변이 김수현(2023), 이준구(2023)와 본질적으로 다른 점입니다. 이혁주 박사 말이 다소 이치에 맞지 않더라도 귀 기울여야 하는 이유입니다.
[오늘 논의 요약] 김수현(2023)에서 visual inspection, descriptive statistics를 이용해 얻은 주택가격의 경기적 주기론은 정권의 보수/진보 주기론으로 대체가능하다. 집값의 정권주기론을 노무현 정부 이래 서울 집값 변동에 적용하면 잘 작동한다(explanatory power, formulation robustness). 정권주기적 관점에 따르면, 팬데믹/양적완화 요인이 1, 정권요인이 2 정도의 비율로 문재인 정부 때 오른 집값을 설명한다. 2008년 이후 2017.5까지 과잉유동성의 누적영향은 KB주택가격 지수 기준 5.0포인트 미만에 불과하다.
다음 주에 검토할 것을 안내합니다. 집값의 정권주기론을 2022년 5월 정권교체기에 적용한 것이 정권교체 전후 서울 집값의 평균회귀(mean reversion) 현상이라는 해석입니다. 장기 추세가격에서 이탈한 가격이 다시 장기 추세가격으로 돌아오는 현상입니다. <그림 3> 오른쪽 위를 주목하세요. 기술적으로 보면 지금까지 사용한 VAR모형의 predictive power check 정도 됩니다. Plus 평균회귀 현상을 정권요인으로 귀인시킬 수 있다는 것은 집값 경기적 주기론의 타당성을 부정하는 분석결과를 하나 더 얻었다는 의미이기도 합니다.
집값의 정권주기 현상과 mean reversion을 진보, 보수 부동산정책 차이로 귀인(歸因)시키는 작업은 이후 하고, 다른 경쟁적 설명방식을 비판합니다. 여기서도 경고 remind입니다. 이렇게 회귀한 가격추세가 과연 바람직한 수준인지 그 여부는 별개 문제입니다.
이혁주 드림
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
이준구-이창용. 2020. 경제학원론. 6판. 경기도 고양: 문우사.
Leamer, Edward E., 2007. Housing Is the Business Cycle. Working Paper 13428. Cambridge, Massachusetts: National Bureau of Economic Research.
<첨부 1> 모형 1과 모형 2
Assets=read.csv(file.choose(),header=T) # 자료 내려받기, data from 2003.1 to 2022.4
View(Assets)
attach(Assets)
library(dplyr)
tem=diff(Assets[,2],1)/1e5 # Data runs from 2003.2 to 2022.4.
asset.1=lag(tem,1)[10:231] # Take data from 2003.11 to 2022.4.
asset.2=lag(tem,2)[10:231]
asset.3=lag(tem,3)[10:231]
asset.4=lag(tem,4)[10:231]
asset.5=lag(tem,5)[10:231]
asset.6=lag(tem,6)[10:231]
data=read.csv(file.choose(),header=T) # 자료 읽기
attach(data)
library(urca)
Price=diff(Price_new) # 2003.11 to 2022.4
Debt=diff(Debt_new)/1e4
CD=diff(CD_new)
Jeonse=diff(Jeonse_new)
Lee=Lee_new[2:223] # 2003.11 to 2022.4
Park=Park_new[2:223]
Moon=Moon_new[2:223]
Pandemic=Pandemic_new[2:223]
t=ur.df(Debt,type='drift'); summary(t) #stationary
t=ur.df(Price,type='drift'); summary(t) #stationary
# Step 1
library(vars)
endo=cbind(Price,Debt,CD,Jeonse)
exo=cbind(Lee,Park,Moon,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
# Step 2
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,0,1, 1,1,1,1,1,1, # Moon --> all the endogenous variables
1,1,1,1, 1,1,1,1, 1, 1,1,0,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,0,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,0,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
logLik(model) # 171.8784 (df=76)
logLik(R_model) # 170.2693 (df=72)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.52. Moon변수를 빼고 변수 구성해도 설명력에서 차이가 없음. 즉 노무현 정권과 하나로 취급해 분석해도 됨.
# Step 3
Stata를 이용해 수행.
constraint 1 [price]lee=park
var price debt cd jeonse, exog(lee park pandemic asset1 asset2 asset3 asset4 asset5 asset6) constraint(1)
log likelihood=170.18
chi2=2*(170.27-170.18)
1-pchisq(chi2,1) # p value=0.6713. Price equation에서 Lee의 회귀계수 = Park의 회귀계수.
# Step 4
Conserv=Lee+Park
endo=cbind(Price,Debt,CD,Jeonse)
exo=cbind(Conserv,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
logLik(model) # 166.238
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 0,1, 1,1,1,1,1,1, # Conserve --> all the endogenous variables
1,1,1,1, 1,1,1,1, 1, 0,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 0,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 0,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
logLik(R_model) # 154.99 (df=72)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.00
<첨부 2> <표 2>에 있는 모형 1, 모형 2 추정하기
endo=cbind(Price,Debt,CD,Jeonse)
exo=cbind(Conserv,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 0,1, 1,1,1,1,1,1, # Conserve --> Price
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.00
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,0, 1,1,1,1,1,1, # Pandemic --> Price
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.53
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,0, 0,0,0,0,0,0, # (Pandemic,연준 자산) --> Price
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,7) # 0.00
endo=cbind(Price,Debt,CD,Jeonse)
exo=cbind(Conserv,Pandemic)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 0,1, # Conserve --> Price
1,1,1,1, 1,1,1,1, 1, 1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,
1,1,1,1, 1,1,1,1, 1, 1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.00
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,0, # Pandemic --> Price
1,1,1,1, 1,1,1,1, 1, 1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,
1,1,1,1, 1,1,1,1, 1, 1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.409
# 모형 1에서 각 요인이 문재인 정부시기 집값 상승에 기여한 크기 측정
endo=cbind(Price,Debt,CD,Jeonse)
exo=cbind(Conserv,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
B=Bcoef(model)[,12:17] # coef matrix for total assets
b=Bcoef(model)[,10] # coef of Conserv
y=array(0,c(4,30))
y[,1]=b # 보수 정권 1달 동안 지속
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # -24.89 points
b=Bcoef(model)[,11] # coef of Pandemic
y=array(0,c(4,30))
y[,1]=b # 팬데믹 1달 동안 지속
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # 6.50 point up
# 2003.11 이후 연준 총자산이 주택가격에 미친 영향 측정
Effect=array(0,c(222))
impact=array(0,c(4,222))
impact[,1]=B%*%matrix(c(asset.1[1],asset.2[1],asset.3[1],asset.4[1],asset.5[1],asset.6[1]),ncol=1)
# Total assets to be used as an initial impact as of 2003.11
y[,1]=impact[,1]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[1]=sum(y[1,]) # 이전 6달 동안의 연준 총자산이 2003.11 집값에 미치고 이후 sustained effect로 미친 영향
impact[,2]=B%*%matrix(c(asset.1[2],asset.2[2],asset.3[2],asset.4[2],asset.5[2],asset.6[2]),ncol=1)
# as of 2003.12
y[,1]=impact[,2]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[2]=sum(y[1,]) # 연준 총자산이 2003.12 집값에 미친 영향이 다시 이후 시기 집값에 미친 영향 합계
for(m in 3:222){impact[,m]=B%*%matrix(c(asset.1[m],asset.2[m],asset.3[m],asset.4[m], asset.5[m],asset.6[m]), ncol=1)
y[,1]=impact[,m] #여기 procedure는 2004.1 이후 시기에 대해 측정하는 스텝
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[m]=sum(y[1,]) # Effect on Price
}
sum(Effect[163:222]) # 4.54 points during the Moon govt by the FRB's total assets
cum_Effect=0
cum_Effect[1]=Effect[1]
for(n in 2:222){cum_Effect[n]=cum_Effect[n-1]+Effect[n]}
start_date <- as.Date("2003-11-01")
end_date <- as.Date("2022-04-01")
dates <- seq.Date(from = start_date, to = end_date, by = "month")
plot(dates, cum_Effect, type = 'l', xlab = 'Year-Month', ylab = 'Point',main = 'Montly effects on Price')
abline(v = as.Date("2020-03-01"), lty='dotted', lwd =3,col='red')
text(as.Date('2017-04-01'),6,'Pandemic-->')
# 팬데믹의 영향 포함하기
b=Bcoef(model)[,11] # coef of Pandemic
y=array(0,c(4,50))
y[,1]=b # 팬데믹 1달 동안 지속
y[,2]=A1%*%y[,1]
for(n in 3:50){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # 6.50 point up (위에서 이미 수행했던 것)
# 2020.3 이후 n월차 가격에 미친 영향
cum=0
cum[1]=y[1,1]
for(n in 2:50){cum[n]=sum(y[1,1:n])}
# 2020.3 이후 n월차 주택가격에 미친 누적 영향
cumul=0
cumul[1]=cum[1] # 2022.4 가격에 미친 누적영향
for(n in 2:25){cumul[n]=sum(cum[1:n])}
********* 시작, ChatGPT 제공 ********
# Generate or use the existing data for x and y
# Create a sequence of dates for x from November 2003 to April 2022
dates_x <- seq.Date(from = as.Date("2003-11-01"), to = as.Date("2022-04-01"), by = "month")
x=cum_Effect # Replace with your actual data for x
# Create a sequence of dates for y from April 2020 to April 2022
dates_y <- seq.Date(from = as.Date("2020-04-01"), to = as.Date("2022-04-01"), by = "month")
y <- cumul # Replace with your actual data for y
# Extract the overlapping period data from x
x_overlap <- x[dates_x %in% dates_y]
# Sum the corresponding values of x and y to create z
z <- x_overlap + y
# Plot the first time series x
plot(dates_x, x, type = "l", xlab = "Year", ylab = "Point",lwd=2,ylim=c(-2,15))
lines(dates_y, z, col = "red", lwd = 2)
abline(v = as.Date("2020-03-01"), col = "red",lty='dotted', lwd = 2)
abline(v = as.Date("2017-05-01"), lty='dotted', lwd = 2)
text(as.Date('2014-05-01'),5,'문 정부 출범 -->',cex=1.2)
text(as.Date('2020-03-01'),0,'팬데믹 발발',cex=1.2,col='red')
legend("topleft", legend = c("연준 총자산",'연준 총자산+팬데믹'), col = c('black', 'red'), lwd=2,cex=1.1) # <그림 2> 완성
********* 끝, ChatGPT 제공 ********
<첨부 3> 2009년 이후 자료를 이용해 연준 총자산이 있는 모형 3 추정하기
endo=cbind(Price,Debt,Jeonse,CD)
exo=cbind(Conserv,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
endo1=cbind(endo[63:222,])
exo1=cbind(exo[63:222,])
model=VAR(endo1,p=2,exogen=exo1)
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 0,1, 1,1,1,1,1,1, # Conserv --> Price
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.00
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,0, 1,1,1,1,1,1, # Pandemic --> Price
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.69
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,0, 0,0,0,0,0,0, # (Pandemic,total assets) --> Price
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1, 1,1,1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,7) # 0.00
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
B=Bcoef(model)[,12:17]
b=Bcoef(model)[,10] # coef of Conserv
y=array(0,c(4,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # -28.61
b=Bcoef(model)[,11] # coef of Pandemic
y=array(0,c(4,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # + 2.19
# 2017.5 이후 연준 총자산이 주택가격에 미친 영향 측정
Effect=array(0,c(60))
impact=array(0,c(4,60))
impact[,1]=B%*%matrix(c(asset.1[101],asset.2[101],asset.3[101],asset.4[101],asset.5[101],asset.6[101]),ncol=1)
# Total assets to be used as an initial impact as of 2003.11
y=array(0,c(4,30))
y[,1]=impact[,1]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[1]=sum(y[1,]) # 이전 6달 동안의 연준 총자산이 2003.11 집값에 미치고 이후 sustained effect로 미친 영향
impact[,2]=B%*%matrix(c(asset.1[102],asset.2[102],asset.3[102],asset.4[102],asset.5[102],asset.6[102]),ncol=1)
# as of 2003.12
y[,1]=impact[,2]
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]} #sustained effect의 측정
Effect[2]=sum(y[1,]) # 연준 총자산이 2003.12 집값에 미친 영향이 다시 이후 시기 집값에 미친 영향 합계
for(m in 3:60){impact[,m]=B%*%matrix(c(asset.1[100+m],asset.2[100+m],asset.3[100+m],asset.4[100+m], asset.5[100+m],asset.6[100+m]), ncol=1)
y[,1]=impact[,m] #여기 procedure는 2004.1 이후 시기에 대해 측정하는 스텝
y[,2]=A1%*%y[,1]
y[,3]=A1%*%y[,2]+A2%*%y[,1]
for(n in 4:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
Effect[m]=sum(y[1,]) # Effect on Price
}
sum(Effect) # 2.61 points during the Moon govt by the FRB's total assets
<첨부 4> KB 서울 아파트 가격 자료
KB=read.csv(file.choose(),header=T) # 내려받기
View(KB)
attach(KB)
x=array(1:457)
x2=x^2
y=lm(Seoul~x+x2)
pred=predict(y)
dates <- seq(from=as.Date("1986-01-01"), by="month", length.out=length(x))
plot(dates,Seoul,xlab='Year',ylab='KB price index',type='l',lwd=1.5)
lines(dates,pred,col='red',lwd=1.5)
abline(v=as.Date('2008-09-01'),lty='dotted')
abline(v=as.Date('2017-05-01'),lty='dotted')
abline(v=as.Date('2022-05-01'),lty='dotted')
abline(h=60.84,lty='dotted')
text(as.Date('2009-01-01'),80,'2009.1')
text(as.Date('2020-01-01'),30,'문재인',cex=1.1)
text(as.Date('2020-01-01'),23,'정부',cex=1.1)
text(as.Date('2017-02-01'),90,'2017.5') # <그림 3> 완성
김수현 박사님 보시지요.
지금까지의 분석결과에 따르면 서울 집값은 누가 집권하느냐에 따라 그 높낮이가 결정되었습니다. 보수가 집권하면 서울 집값은 낮았고, 진보가 집권하면 서울 집값은 높았습니다. 서울 집값의 정권주기론입니다. 오늘은 이 정권주기론을 (1) 2003년 노무현 정부 이래 주택가격과, (2) 2022년 5월 정권교체기 전후 주택가격 변동에 적용합니다. 만약 정권주기론이 empirical regularity를 잘 식별해 낸 것이라면, (1) 보수가 2003년부터 계속 집권에 성공했을 때 2022.5 서울 집값은 현재의 서울 집값과 많이 다를 것이고, (2) 2022.5 정권교체 후 집값 변화를 잘 예측할 것입니다. 이제 확인합니다.
집값의 정권주기론을 노무현, 문재인 두 진보정권에 적용하면 <표 1>과 같은 평가가 나옵니다. 처참합니다. 노무현 정부는 문재인 정부보다 더했습니다. 130% vs. 66%. "이명박 정부와 박근혜 정부"를 "주택 투기를 부추기는 것이 ... 정책 기조"(이준구, 2023: 9)라고 비난했던 진보의 성적표입니다. 여기 수치는 통계적 정제(refinement)과정을 거쳐 생산된 수치로서, <표 1>은 투기꾼이 판을 쳤던 보수 토건족이 당시 집권했다면 그만큼 주택가격이 낮았을 것이라는 counterfactual analysis입니다.
<표 1> 집값의 정권주기론에 따른 주택가격 상승분
----------------------------------------------------------------------------------------------------------
노무현 정부 때 문재인 정부 때
----------------------------------------------------------------------------------------------------------
분석에 포함된 기간 52달 60달
보수정권 대비 상승분 21.8포인트 25.2포인트
(=0.42포인트/월*52달) (=0.42포인트/월*60달)
실제 상승 16.8포인트 38.4포인트
정권요인의 집값 상승 130% 66%
설명률 (= 21.8/16.8) (= 25.2/38.4)
----------------------------------------------------------------------------------------------------------
주...2003.11 ~ 2022.4 자료를 이용해 구한 VAR모형을 이용. 지난 주 <표 2> 모형 A 이용. 월간 상승률 0.414포인트 적용. 지난 주 <첨부 2>에서 원단위 0.42 추출 가능. 여기 수치는 보수정권 대비 값(why?).
미리 말씀 드리면, 문재인 정부시기 투기 요인을 고려해도 문 정부는 면책되지 않고 정부요인의 집값 설명률에 별다른 변화가 없습니다. 자료 제한 때문에 노무현 정부에 대해 직접 계산할 수 있을 지 잘 모르겠으나, 문 정부 분석결과를 노 정부에 적용해도 같은 결과를 얻을 것으로 예상합니다.
한편, 진보정권에서 매월 올린 주택가격 지수 0.42포인트를 진보정부 때의 주택가격에서 매월 감하고 보수정권의 가격지수 곡선을 그대로 하향 이동시키면 아래 <그림 0>를 만들 수 있습니다. 아래쪽 곡선이 2003년부터 2022년까지 보수만이 집권했을 때(노무현, 문재인 후보 모두 낙선) 보았을 서울 집값 스케줄입니다.
출처...<첨부 3>, 미 연준자산 포함 모형 이용. 보수정권 더미 Conserv를 사용한 VAR모형.
<그림 0> 2003년부터 보수가 계속 집권했을 때 보았을 서울 집값
(=아래쪽 곡선)
이 그림에 따르면 2003년부터 2022년까지 보수가 집권했다면
2022.5 집값 ≑ 2003년 말 가격 + 팬데믹 인상분
으로 주어집니다(명목값). 이 결과가 아주 비현실적인 것만은 아닙니다. 왜냐하면 박근혜 정부 말 (명목) 주택가격은 노무현 정부 말과 비슷했기 때문입니다. 놀랍습니다. 빚내서 집 사라고 비난 받던 박근혜 정부의 성적이자 세칭 토건세력 출신 이명박 정부의 성취입니다. 진보=투기억제라는 진보의 주장과 다른 결과입니다. 이 그림이 의심스러운 분은 이 그림의 의미도 떠올리면서 찬찬히 생각해 보세요.
집값의 정권주기론을 2022년 5월 정권교체 시기에 적용하면 주택가격 평균회귀(mean reversion)가 됩니다. 이 시기는 구축한 모형의 predictive power를 검증할 수 있는 natural test bed가 됩니다. <그림 1>에서 2022.5 이후 서울 집값이 장기 추세가격으로 되돌아왔습니다. 2022.5 직후 가격의 급락을 유발할 만한 요인은 정권교체 말고 눈에 띄는 것이 없습니다. 팬데믹도 그대로고. 금리로 attribute하기엔 문제가 많았고... 과잉유동성이 감소세였지만 그런 정도의 크기는 아니었고(guess how much)...
출처: 지난 주 토론문 <첨부 4>. 자료는 KB 데이터센터에서
<그림 1> 주택가격 시계열
출처...<첨부 1>
<그림 2> 추정한 Price equation
추정한 VAR모형에서 Price equation(주택가격 회귀식)은 <그림 2>와 같습니다. Moon 정권더미의 회귀계수가 +0.26포인트/월로서 윤석열 정부로 바뀌게 되면 Moon=0이 되어 집값이 매월 -0.26포인트씩 하락합니다(직접효과). 즉 김수현(2023)의 경기적 집값 주기론의 예측과 달리 추세가격이 서서히 완만하게 변하지 않고 급하게 하락할 것이라는 점을 시사합니다. <그림 1> 오른쪽 끝을 보면 서울 집값은 2022년 5월 정권교체와 더불어 급락했습니다. 전국 집값도 마찬가지입니다(KB 지수). 이걸 실연(實演)해 봅시다.
출처...<첨부 1>
<그림 3> First-differenced Price data: Actual (black dots) vs. Predicted (red dots)
출처...<첨부 1>
<그림 4> 서울 집값의 평균회귀 실연
실연은 가장 간단한 모형을 이용해 합니다. 의도적입니다. 최대한 모형을 단순하게 가져갈수록 데모의 결과가 핵심 동인(動因) Moon이 생성한 결과라는 점을 보기 쉽습니다. 따라서 내생변수는 Price, Debt, 자료는 2009년 이후 것을 이용하고, 외생변수는 Park, Moon, Pandemic 변수를 이용합니다. 연준자산 같은 외생변수는 생략. <그림 3>, <그림 4>가 그 결과입니다.
single equation regression model에서 어떤 주어진 실측치의 predicted value를 구하는 원리를 이용합니다. y(t)^=a0^ + a1^*x(t) + 0.26*Moon(t)에서 x, Moon은 실측치, y(t)^은 예측치, a0^, a1^은 추정한 회귀계수입니다. 2022.5 이후 회귀식
y(t)^=a0^ + a1^*x(t) + 0.26*Moon(t) (식1)
은
y(t)^=a0^ + a1^*x(t) <-- Moon(t)=0 (식2)
이 됩니다. 따라서 (식2)의 예측치는 (식1)보다 0.26*Moon(t)=0.26*(1)=0.26만큼 문 정부에 비해 매월 작습니다(직접효과 기준). 실제 예측은 VAR 다방정식 체계를 이용하는데, (식2)의 y(t)^이 <그림 3> 빨간색 점들이고 검은색 점들은 문재인 정부 때 실측치입니다. 전체적으로 툭 떨어지는 모습을 볼 수 있습니다(0.64 --> -0.07). 이들 예측치를 2022.4 실측 level값에 하나씩 더해서 미래로 전개하면, 2022.5 이후 어떤 달 집값 예측치를 구할 수 있습니다. <그림 4>에서 "Predicted" 곡선이 그것입니다. 정권교체 후 집값 추세는 differenced time series 기준 shift down하고(<그림 3>), level time series 기준 증가세가 감소세로 전환합니다(<그림 4>의 "Predicted"). Differenced time series 기준 shift down한다는 것, 주택가격의 변동기제가 바뀌었다는 점에 주목하여, 앞으로 '단절적' 평균회귀라는 표현을 쓰기도 하겠습니다. <그림 3>의 낙차는 정권교체와 더불어 Moon(t)가 1에서 0으로 변해서 발생한 현상입니다. Moon(t) 변수의 영향이 사라졌다는 말은 집값의 항구 감소(permanent shift-down)를 의미합니다. 즉 정권교체와 더불어 집값이 툭 떨어졌다가 다시 상향추세로 진행합니다. 진보/보수 정권주기론의 실현으로서 집값 변동에 구조전환(structural break)이 발생했다는 의미입니다.
<그림 5> 정권교체 전후 서울 집값과 금리
출처...<첨부 2>
<그림 6> 서울 주택가격 지수 vs. shadow rates
<그림 4>에서 prediction이 정밀하지는 않지만, 정권교체 후 집값 추세가 꺽이는 모습이 잘 드러납니다(predictive power를 올리는 일은 나중에). <그림 1> 오른쪽 끝에서는 정권교체 후 집값이 '과도'하게 하향조정된 후에 다시 장기추세가격으로 상향 수렴하는 모습도 볼 수 있습니다. <그림 4> "Predicted" 곡선에서도 이런 두 가지 특징을 모두 볼 수 있습니다. 평균회귀 현상에서 흔히 보는 패턴이고, 동시에 역사상 반복되었던 price bubble/bust에서 보는 급락 후 fundamental price를 회복했던 현상을 닮았습니다(fundamental price 얘기는 나중에).
<표 2> 자산가격이 정점에 도달한 후 정점 6달전 가격으로 하락하기까지 걸린 시간
--------------------------------------------------------------------------------------------------------------------------------------
사 례 달 사 례 달
--------------------------------------------------------------------------------------------------------------------------------------
2022.5 서울 KB 주택가격 지수 6
South Sea Co. 주가 6 미국 대공황 2
British Railways 주가 25 1991년 일본 지가 지수 2
Australian land boom 9 2000년 미국 dot com 8
당시 Melbourne 주택가격 bubble
British bicycle mania 3 2007년 상해 주식시장 지수 6
2008 GFC 당시 전국 집값 지수*
아일랜드 5 미국 14
영국 6
--------------------------------------------------------------------------------------------------------------------------------------
주 * data.oecd.org (nominal data). 나머지는 모두 Quinn and Turner(2020)에서 추출
위 <표 2>는 동서양에서 지난 몇 백년간 일어났던 자산가격의 폭등/폭락 사태에서 본 가격변동 사례를 기록한 표입니다. 자산가격이 정점에 도달한 후 정점 6달 전 가격으로 하락하기까지 걸린 시간이 기재되어 있습니다. 서울의 경우 6달이 걸렸는데, 가격의 상승 및 하락 속도에서 표의 다른 사례들과 비슷한 크기입니다. 서울 주택가격에서 보는 여타 bubble/bust적 특성은 나중에 자세히 알아봅니다.
평균회귀는 통계현상으로서 finance 포함 광범위하게 관찰되는 현상입니다. 아래는 미국 집값에서 보는 평균회귀 얘기입니다.
Despite the enormous size of this sector, economists’ understanding of many features of the housing market remains incomplete. For example, in the sample of 115 metropolitan areas from 1980 to 2005 for which we have Office of Federal Housing Enterprise Oversight (OFHEO) constant quality house price series, a $1 increase in real house prices in one year is associated with a 71 cent increase the next year. A $1 increase in local market prices over the past five years is associated with a 32 cent decrease over the next five year period. This predictability of price changes seems to pose a challenge for an efficient markets view. 출처: Glaser and Gyourko (2006: 1).
관찰 몇 가지입니다.
집값 상승과정의 behavioral foundation
이혁주 박사의 정권주기론은 조만간 집값의 급등, 급락을 설명하는 micro이론으로 보완해 elaborate합니다. 이 micro이론은 진보논객들이 입에 달고 사는 투기에 관한 이론이자 정책요인이 결합된 설명방식이 될 것입니다. micro이론을 이용하면 문 정부 때 투기는 문 정부에서 조장했다는 것, 그리고 문 정부의 투기조장 기제가 어떻게 작동했는지 이해할 수 있습니다. 이 경우 정권이 교체되면 주택시장의 주요 투기장 지표가 전반적으로 일시에 안정화되는 모습을 보여야 합니다. 그것도 일부 확인 가능합니다.
한국의 CD금리 vs. 미국의 연방금리 vs 서울 집값
김수현(2023:8)에 나오는 내용입니다.
"...그러다 2021년 하반기부터 유동성을 축소하기 시작하고, 특히 2022년 미국 발 금리 인상이 본격화되자 집값은 뚝뚝 떨어지고 말았다". 출처: 김수현(2023: 81)
그러나 <그림 5>에서 보듯 2022년 정권교체기 한국의 CD금리, 미국의 연방금리, 서울 집값 사이의 관계는 김수현 박사의 주장과 달리 그렇게 명쾌하지 않습니다. 이를테면, FRB rate가 0의 하한에서 벗어나 상승하기 여러 달 전 서울 집값은 이미 안정화 추세를 보였음. 2022년 들어 FRB rate가 급하게 상승할 때 서울 주택가격이 하향 안정화추세를 유지한 것은 맞지만, 이때 CD금리는 오히려 떨어졌음. CD 금리가 떨어지면 서울 집값은 그 영향으로 올라야 함. KB 전국 주택가격 지수도 마찬가지. 그럼에도 불구하고 CD금리가 아니고 연방금리를 선택적으로 써야 한다면 왜 그래야 하는지 설명해야 함. 물론 설명 없음.
FRB rates vs. shadow rates
FRB 기준금리를 이용할 때는 우선 편향(bias)에 주의해야 함(2024.4.24 토론문 <그림 2>). 그러나 그 대안으로 shadow rate를 쓴다고 해서 문제가 해결되는 것은 아님. <그림 6>에서 파란색 점들과 집값 사이의 관계는 우리의 예상과 딴판. 금리에 변화가 없는 데 집값은 수직 상승하고(KB지수 90-->100), 파란색 점들을 대상으로 전체적으로 다시 보면 금리가 오르는데 집값은 90포인트에서 100포인트까지 치솟음. 김수현(2023)은 <그림 6>에서 여러 점들 가운데 빨간 점만 취하고 금리가 떨어질 때 집값이 100에서 90으로 하락했다고 주장한 것이 됨. 만약 상충된 지수의 등장이 동적 조정과정에서 나타난 일시적 현상이었다면, 그에 대한 설명이 있어야 함. 물론 없음. 그래서 독자는 김수현 박사가 무슨 말하는지 이해 불가. Plus, <그림 6>에서 fitted line의 기울기는 거의 zero. 즉 FRB의 금리(shadow rates)는 서울 집값에 과연 영향을 미치는지 불분명. 바로 이것이 2024.4.22 <표 1>에서 FRB rates와 shadow rate의 집값 영향이 서로 그렇게 많이 차이가 났던 이유.
한국과 미국의 기준금리
문재인 정부 임기 말 한국과 미국의 기준금리는 문 대통령 임기 초 대비 각각 0.5%p, 0.14p 차이에 불과. 따라서 문재인 정부 말 주택가격은 임기초 대비 물가상승률 10.3%와 많이 다르면 됨. 그러나 같은 기간 서울의 주택가격은 62.1% 상승. 설명 불가. 과잉유동성과 같은 해외요인도 설명력이 없었음. 따라서 노무현 정부 이래 지난 수십년 동안뿐만 아니라 2022년 봄 정권교체 전후 주택가격 변동을 설명하기 위해서는 통상의 경제변수와 가격변동 방식 대신 다른 변수와 변동기제가 필요함. 그것이 바로 진보-보수 정권교체이고 정책의 차이이고(to be validated), <그림 0>은 그런 정권주기론의 결과물.
문재인 정부는 임기말이 가까워지면서 거의 정책휴면기라고 해도 좋을 만큼 '조용한' 시기를 거쳤고(이후 집값의 정책주기론으로 validate), 대선 시즌으로 접어들면서 부동산가격 앙등에 대한 집권당의 정치적 부담과 정권의 향방에 대한 시장의 희망적 기대가 집값 안정에 도움이 되었던 것 같습니다. 현재 가격이 장래 예상가격에 영향을 받는다는 것은 rational expectation 쪽 이론뿐 아니라("equilibrium dynamics with learning" in Adam et al. 2012: 103-104), 통계학적 자유도(degree of freedom) 문제에서 자유로운 simulation 분야에서 fitting을 중시하는 일반적 practice를 고려하면(Piazzesi and Schneider, 2016), 지난 주 <그림 2> flat interval은 설명가능합니다.
이렇게 중요한 정부요인을 제외한 채 경제변수에만 집중하고, 그런 집중도 경쟁적 지수 가운데 적절한 설명 없이 마음에 드는 것을 골라서 설명했으며, 임기 초 대비 임기 말 금리 차이가 한국, 미국 모두 거의 없었는데 이건 생략하고 금리 때문에 2022년 집값이 급락했다고 주장했습니다. 통계적 검정과정을 거쳐서 배제한 경우가 아니고 기술통계를 이용하는 경우, 확장된 경쟁적 지수와 분석대상 기간 등을 고르게 보면서 설명했어야 합니다. 설명이 막히면 하지 말았어야 하고, 꼭 해야 한다면 추정이라는 말을 분명히 해서 독자들한테 qualified signal을 보냈어야 합니다. 박진백 외(2021)에서도 정작 중요한 정부요인은 빼고 추론상 결함이 많은 논법을 동원해 금리 탓하면서 『주택연구』 편집위를 상대로 연구부정이 의심되는 행위를 저질렀습니다. 그 위장(僞裝)된 권위 덕에 김수현(2023)에 인용되기도 했고요. 비슷한 이들의 cross citation입니다.
쓰레기가 모여 산이 되고 그 쓰레기 산이 substitute reality가 되는 과정입니다. 그렇게 여러 사람이 그렇게 말하면 그렇게 믿고 그게 현실이고 진실이 됩니다. 엉터리 cross citation은 이러한 consensual process를 실제로 진행시키는 중요 방식이자 pseudo science를 일반으로까지 확산시키는 학계발 시원이 됩니다. 아직 검토해 보지 않았지만 최근 출간한 문재인 대통령의 회고록에도 그 쓰레기가 퇴적되어 있는 것은 아닌지 우려가 됩니다.
오늘 알아본 김수현(2023) 사례는 아래 <표 3> 3단계에 "계획계 밖"을 기입할 수 있는 근거가 됩니다. 4단계에서 김수현 박사가 금융요인(양적완화, FRB 금리)을 당연시할 수 있었던 것은 계획계 밖에서 너무도 당연시했기 때문입니다. 심사자 B(line 76-77)의 자연스럽고 즉각적인(spontaneous) 반응은 오늘 보았던 김수현(2023) 사례의 연장선 위에 있습니다.
<표 3> 시스템 실패의 단계와 진행
----------------------------------------------------------------------------------------------------------------------------------------------
실패 지점
사례 ------------------------------------------------------------------------------------ System failure
1단계 2단계 3단계 4단계
----------------------------------------------------------------------------------------------------------------------------------------------
박진백 외(2021) 연구자 자신 국토연구원 부동산 국토연구원 『주택연구』 발생
시장정책연구센터 편집위원회
<--
김수현, 김경민 연구자 자신 계획계 --> 계획계 밖 --> 연구자 자신 발생
(0)실패 (1)실패 (2)실패
----------------------------------------------------------------------------------------------------------------------------------------------
주...2024.3.11 토론문에 이 표 처음 등장
다음 주부터는 정책신뢰의 상실 때문에 집값이 올랐다는 김수현(2023)의 주장을 검토합니다. 이제 분석의 중심에 '정권' 대신 '정부대책'을 둡니다. 평균회귀 현상을 설명하면서 정권이라는 black box를 사용했지만, 이제 이 black box를 풀어 쓴 개념 즉 '정부대책'이라는 측도(measure)가 필요합니다. 계획대로 진행되면 집값의 정권주기론은 보수-진보 정권교체에 따른 집값의 정책주기론으로 바뀝니다. 그러면 아래 주장에서 보는 보수행운/진보불운론, 보수 투기조장/진보 투기억제론의 진위를 판정할 수 있고, 정권주기론도 substantiate할 수 있으며, 앞서 본 <표 1>, <그림 0>이 단숨에 후려쳐도 되는 넌센스, statistical artifact만은 아닌 관찰이 됩니다.
이명박 정부와 박근혜 정부의 부동산정책이 주택가격 안정에 초점이 맞춰져 있지 않았다는 것은 주지의 사실입니다. ... 오히려 주택 투기를 부추기는 것이 그들의 정책 기조였습니다. 그들의 부동산정책 덕분에 주택가격 안정이 이루어진 것이 아니고, 그들의 부동산정책에도 불구하고 주택가격 안정이 이루어진 것이었습니다. 아마도 주택 경기의 하강 국면에서 정권을 잡았던 행운이 크게 작용한 결과였을 것이라고 봅니다. 이 점에서는 윤석열 정부도 똑같다고 말할 수 있습니다. 출처: 이준구(2023: 9-10)
이런 류의 bold stroke은 전강수 박사 등 토지+자유연구소 관련자들에게서나 볼 법한 사례로서 흔하지 않지만, 그럼에도 이준구 박사의 주장은 그의 교육배경과 영향력/권위 등 양 측면에서 주목해야 합니다.
(1) 교육배경...아래 <그림 7>에서 보듯이 이준구 박사는 근대 철학의 전통에 강하게 영향을 받은 미국의 분석적 연구환경에서 교육받았습니다. 경험과학에서 입증의 책임을 지지 않으면서 ghost proposition을 이렇게 자신 있게 주장할 수 있는 것은 이준구 박사 개인의 예외적 성향이라고 치부할 일이 아니고 그가 진보 일반과 공유하는 hegemonic view와 관련이 깊다고 보아야 합니다. 물을 것도 따질 것도 없이 디볼트로 맞다는 믿음. factually and morally. 이준구(2023)에 있는 다른 글들도 비슷합니다. "바깥 세계로 향한 경험적 탐구 없이도 내면적 관조(觀照)만으로 우주적 지혜에 도달할 수 있다는 “동양철학”의 득도(得道) 문화"가 부동산정책 분야에서 격물(格物) 없는 pseudo 치지(致知)로 시현된 사례입니다. 그런데 주택공급은 전통적으로 도시공학/계획과에서 개설한 '토지이용계획'에서 토지의 용도배분과 주거용지의 밀도계획에서 다루는 주제였습니다. 1970, 80년대 한양대학교 도시공학과 학부 '토지이용계획'의 교재 Chapin and Kaiser(1979) 참고. 토지이용계획 단계에서 뭉텡이로 결정되면 이후 과정은 조금 과장해서 잔챙이 작업입니다. 이런 핵심과정의 (near) rationality에 대한 계획계의 합의는 확고합니다. 토지이용계획에 대한 계획계 내 합의 강도가 높을수록 계획계 밖 인사가 계획계 집단지(集團知)의 정당성에 대해 의문을 가질 가능성은 줄어듭니다. 이준구 박사의 글쓰기는 <표 3>에서 빨간색 화살표의 존재를 시사합니다.
출처: 한국연구자정보시스템. https://www.kri.go.kr
<그림 7> 이준구 박사의 전공과 학위
(2) 영향력과 권위...<그림 7>에서 보듯이 이준구 박사는 경기고등학교, 서울대학교, 미국 Princeton대학교를 거쳐 귀국 후 모교 경제학과에서 교수를 지낸 인사입니다. 이 박사는 현재도 그렇지만 당시 한국 주류 엘리트의 이력을 고루 갖춘 인사입니다. 그의 평판은 비전문가 집단뿐 아니라 같은 진보 인사에게도 최소 암묵지를 공유하는 방식으로 영향을 준 것으로 보입니다. 여기 논쟁 사이트에서 관찰했던 진보 연구자의 스칼라십과 연구 norm에 비추어 보았을 때 이준구 박사의 스칼라십은 진영내 수용성에서 큰 문제가 없습니다. 그 결과 이 박사의 진보불운/보수행운론, 경기적 집값 주기론은 김수현(2023)에서 반복되었습니다. <표 3>에서 초록색 화살표의 근거입니다. 진보 계획가는 진보 일반과 교호하고 정서를 공유합니다. 당연한 말씀이지만 그건 행정학 분야도 마찬가지입니다. 김수현-박진백 외에서 보던 cross citation이 이준구-김수현한테서 관찰됩니다. 세계 변방 출신 연구자가 세계 지식의 중심지에서 진짜 배워야 할 것은 뒤로 하고, 변방 주류의 지적 권위를 활용해 경험과학의 외피로 치장한 유사과학을 자신의 주변으로 한껏 발산했습니다. 어떤 개인의 학문적 충실도와 별개로 그 개인의 지위와 결합해 부여되는 사회적, 비학술적 권위 덕에 어떤 개인의 견해가 주목을 받는 사례는 일상적으로 겪는 일입니다. 김경민 박사 사례가 이준구 박사 사례와 비슷하다면 비슷하고, 박진백 외(2021)는 소속기관과 학술지의 권위를 이용했고, 김수현 박사는 패거리의 정치적 위세를 등에 업었습니다. 아무튼 같은 패거리에서 듣고 싶어하는 얘기니까.
끝으로 한마디 더하면, 김수현 박사의 스칼라십이 어떤 수준인지 지금까지 있었던 논의에서 명확해 졌을 것입니다. 김경민 박사도 마찬가지이고. 이 검토결과를 토대로 <표 3>에서 보라색 글자 (0)실패를 삽입합니다.
오늘 토론 요약은 <첨부 4> 이메일 발송문 참고.
이혁주 드림
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
박진백 외, 2021. 금리의 주택가격 상승 기여도 추정. 주택연구 29(4): 75-100.
Adam, Klaus, Pei Kuang and Albert Marcet, 2012. House Price Booms and the Current Account. Working paper 17224. Cambridge, Massachusetts: National Bureau of Economic Research.
Chapin, Jr., F. Stuart and Edward Kaiser, 1979. Urban Land Use Planning. Illinois, Chicago: University of Illinois Press.
Glaeser, Edward L. and Joseph Gyourko, 2006. Housing Dynamics, NBER Working Paper 12787. Cambridge, MA: National Bureau of Economic Research.
Piazzesi, Monika and Martin Schneider, 2016. Housing and Macroeconomics. Chapter 19 of Handbook of Macroeconomics, Volume 2. New York: Elsevier. Also available as the NBER working paper.
Quinn, William and John D. Turner, 2020. Boom and Bust: A Global History of Financial Bubbles. Cambridge, UK: Cambridge University Press.
<첨부 1> VAR모형 추정
Data=read.csv(file.choose(),header=T) # # 자료 내려받기. 여기서
View(Data)
attach(Data)
remove(Price,Debt,Moon,Park,Pandemic) # Just in case
endo=cbind(Price,Debt)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo) # <그림 1>은 Price equation
A1=Bcoef(model)[,1:2]
A2=Bcoef(model)[,3:4]
nu=Bcoef(model)[,5]
B=Bcoef(model)[,6:8]
pr_level=array(c(100.092,100.1466631,100.2562984,100.4689667,100.6032851,100.6381353,100.4918613,100.2972065,99.62692713,98.21647968,96.80952136,94.78404736,93.6495438,92.55291811,91.65568645,90.85414053,90.59537961,90.38963268,90.33858458,90.57788476,90.78696527,90.82149118,90.72548663),c(23,1))
pr=diff(pr_level) # 22 entries from 2022.3 to 2023.12
debt=array(0.6337,c(22,1))
# Prepare the time series of actual values to simulate the predicted time series from 2022.3 to 2023.12.
endo_var=cbind(pr,debt) # Dataset of actual values starting from 2022.3
colnames(endo_var)=c('price','debt')
exo_var=array(0,c(22,3)) # Time series for Park, Moon, and Pandemic from 2022.3 to 2023.12
exo_var[1:18,3]=1 # Pandemic ends on August 31, 2023.
exo_var[1:3,2]=1 # Moon ends on 2022.5.
colnames(exo_var)=c('Park','Moon','Pandemic') # Starts from 2022.3
# Now, we simulate the mean reversion.
# Predict the 1st differenced values y[,] for 2022.5 to 2023.12.
y=array(0,c(2,22))
# 2022.4 2022.3 2022.3
y[,1]=nu+A1%*%endo_var[2,]+A2%*%endo_var[1,]+B%*%exo_var[3,] # Prediction for 2022.5
y[,2]=nu+A1%*%endo_var[3,]+A2%*%endo_var[2,]+B%*%exo_var[4,] # Prediction for 2022.6
for(n in 3:20){y[,n]=nu+A1%*%endo_var[n+1,]+A2%*%endo_var[n,]+B%*%exo_var[n+2,]}
plot(Price[102:161],xlim=c(0,80),ylim=c(-0.5,3),ylab='Monthly price change (points)', xlab='Months elapsed since 2017.5')
x_values<-61:82
points(x_values,y[1,],col='red')
segments(x0 = 1, y0 = avg1, x1 = 60, y1 = avg1,lty=2, lwd=1.5)
segments(x0 = 61, y0 = avg2, x1 = 80, y1 = avg2,lty=2, lwd=1.5)
text(30,0.8,round(avg1,2))
text(72,0.1,round(avg2,2)) # <그림 5> 완성
accumulate=array(0,c(22))
accumulate[1]=y[1,1] # From 2022.5
for(n in 2:22){accumulate[n]=sum(y[1,1:n])}
predicted=array(0,c(8)) # From 2022.5
for(n in 1:22){predicted[n]=pr_level[3]+accumulate[n]}
plot(pr_level[4:23],type='l',xlab='Months elapsed since 2022.4',ylab='KB Price index',ylim=c(80,102),lwd=1.5)
# Starting from 2022.5
lines(predicted,col='red',lwd=1.5) # Starts from 2022.5
text(15,89,'Actual')
text(15,97,'Predicted') # <그림 3> 완성
<첨부 2> Price level vs shadow rates
shadow_rates=read.csv(file.choose(),header=T) # 내려받기
KB_price=read.csv(file.choose(),header=T) # 내려받기. KB 월간 아파트매매가격지수.
FRB_rates=read.csv(file.choose(),header=T) #내려받기
#2020.1 - 2023.12의 shadow rate와 KB price 모으기
x1=shadow_rates[134:161,3] # shadow rates from 2020.2 to 2022.4.1, 28 months
x2=FRB_rates[29:48,2] # FRB rates from 2022.5.1 to 2023.12, 20 months
rates=x1
for(n in 1:20){rates[n+28]=x2[n]}
price=KB_price[409:456,3]
regression=lm(price~rates)
dates <- seq(as.Date("2020-01-01"), as.Date("2023-12-01"), by = "month")
x <- rates
y <- price
# Define the threshold dates
start_blue <- as.Date("2021-05-01")
end_blue <- as.Date("2022-02-01")
start_red <- as.Date("2022-05-01")
# Create a color vector based on the threshold dates
colors <- ifelse(dates >= start_red, "red",
ifelse(dates >= start_blue & dates <= end_blue, "blue", "darkgray"))
# Plot the data.
plot(x, y, col = colors, pch = 19, main ='', xlab = "Shadow rates", ylab = "주택가격 지수")
abline(regression,col='red',lwd=1.5)
abline(v=0,lty='dotted',lwd=1.5)
text(2.3,77,'2020.1')
text(4.8,89,'2023.12')
text(2,92.5,'Fitted',col='red') # <그림 6> 완성
<첨부 3> 2003년부터 보수가 계속 집권했을 때 서울 주택가격
Assets=read.csv(file.choose(),header=T) # 자료 내려받기, data from 2003.1 to 2022.4
View(Assets)
attach(Assets)
library(dplyr)
tem=diff(Assets[,2],1)/1e5 # Data runs from 2003.2 to 2022.4.
asset.1=lag(tem,1)[10:231] # Take data from 2003.11 to 2022.4.
asset.2=lag(tem,2)[10:231]
asset.3=lag(tem,3)[10:231]
asset.4=lag(tem,4)[10:231]
asset.5=lag(tem,5)[10:231]
asset.6=lag(tem,6)[10:231]
data=read.csv(file.choose(),header=T) # 자료 읽기
attach(data)
library(urca)
Price=diff(Price_new) # 2003.11 to 2022.4
Debt=diff(Debt_new)/1e4
CD=diff(CD_new)
Jeonse=diff(Jeonse_new)
Lee=Lee_new[2:223] # 2003.11 to 2022.4
Park=Park_new[2:223]
Moon=Moon_new[2:223]
Pandemic=Pandemic_new[2:223]
library(vars)
Conserv=Lee+Park
endo=cbind(Price,Debt,CD,Jeonse)
exo=cbind(Conserv,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
B=Bcoef(model)[,12:17] # coef matrix for total assets
b=Bcoef(model)[,10] # coef of Conserv
y=array(0,c(4,30))
y[,1]=b # 보수 정권 1달 동안 지속
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
k=abs(sum(y[1,])) # k=-0.4209743
노무현 정부: 2003.2.25 - 2008.2.25 --> data[1:53]
이명박-박근혜 정부: data[54:163,]
문재인 정부: 2017.5 - 2022/5 -->data[164:232]
rho=0
rho[1]=data[1,2]
for(n in 2:53){rho[n]=data[n,2]-n*k}
lee_park=0
lee_park=Price_new[54:163]-53*k
moon=0
moon[1]=lee_park[119]
for(n in 2:60){moon[n]=Price_new[163+n]-n*k-53*k}
rho_ts <- ts(rho, start = c(2003, 10), frequency = 12)
lee_park_ts <- ts(lee_park, start = c(2008, 3), frequency = 12)
moon_ts <- ts(moon, start = c(2017, 5), frequency = 12)
Price_new_ts <- ts(Price_new, start = c(2003, 10), frequency = 12)
plot(rho_ts, type = "l", lty=2,xlab = '연도', ylab = "KB 지수(포인트)", xlim = c(2003, 2022.4), ylim = c(0, 105),lwd=3,col='green')
lines(lee_park_ts, lwd=3,col='blue')
lines(moon_ts, col = "red",lwd=3)
lines(Price_new_ts, col = "black", lwd = 2.5)
text(2014.10,63,'실제 지수',cex=1.2)
text(2014.10,30,'2003년 이후 보수가',cex=1.2)
text(2014.10,23,'계속 집권했을 때',cex=1.2)
text(2005.3,30,'노무현',cex=1.2)
text(2020.3,35,'문재인',cex=1.2)
abline(h=41.949,lty='dotted',lwd=1.5)
abline(h=52.68,lty='dotted',lwd=1.5)
text(2020.10,56,'52.7')
text(2004.10,45,'41.9')
text(2021.9,105,'100.3') # <그림 0> 완성
<첨부 4> 이메일 발송문
김수현 박사님께
지난 주에 노무현 정부 이래 집권 정당의 이념적 지향에 따라 서울 집값의 높낮이가 결정된다는 집값의 정권주기론을 통계적으로 수립했습니다. 이 논설은 김수현(2023), 이준구(2023)에 등장하는 집값의 경기적 주기론을 대체합니다. 경기적 주기론은 통계적으로 검증된 바 없습니다. 이 정권주기론을 2003년 노무현 정부 이후 서울 집값에 적용했을 때, 즉 2003년부터 2022년까지 보수가 집권했다면 대략
2022.5 서울 집값 ≑ 2003년 말 집값 + 팬데믹 때문에 오른 집값
으로 주어집니다. 충격적입니다. 이 정도면 서울 집값에 존재하는 막대한 비율의 피구세율도 그 정책적 의미가 거의 없을 정도로 서울 집값은 세계 주요도시 가운데서도 모범적인 도시가 되었을 것 같습니다.
한편 주택가격의 정권주기론을 2022년 5월 정권교체기 서울 집값에 적용하면 집값이 빠르게 하락해야 하는데, 당시 집값은 실제로 그런 모습을 보입니다. 이른바 통계 및 finance 분야에서 광범위하게 관찰되는 평균회귀 현상이자 price bubble/bust문헌에 등장하는 자산가격의 collapse 현상입니다. 그러한 의미에서 2022년 5월 정권교체는 서울 주택가격 변동기제에 변화가 생겨 발생한 평균회귀 현상이고, 추정한 모형이 좋은 모형이라면 실연(實演)해 보일 수 있어야 합니다.
여기서 사용한 정부요인은 외생변수로서 보수정권을 나타내는 Conserv라는 변수입니다. 여러 가지 설명변수를 함께 사용해 얻은 결과이므로 진보정권에서 오른 집값은 진보/보수 정권의 상이한 부동산정책 때문이라고 추정할 수 있습니다. 이를 직접 확인하는 일은 다음 주부터 합니다. 이것이 잘 확인될 수록 이전에 정권더미 Moon을 이용해 얻은 결과가 이후 논의로 carry-over됩니다.
자세한 내용은 주택논쟁 사이트를 참고하세요.
이혁주 드림
오늘 주제는 두 가지입니다.
(1) 정권주기론의 변수의존성 검토
(2) 정책신뢰 상실론 검토를 위한 정부정책의 계량변수화
시장의 신뢰를 얻지 못해 집값을 잡지 못했다는 주장은 다음 주에 본격 검토합니다.
아래 <그림 1>은 지난 주에 사용했던 모형을 이용해 진보 정권요인 때문에 오른 집값을 2003년부터 실제 주택가격 지수에서 빼주었을 때 보았을 집값 추세입니다. 위쪽에는 실제 주택가격 추세가 있습니다. 서울의 집값 올리는데 진보정권의 기여는 결정적이었습니다. 그런데 이 그림은 특정 변수군을 이용해 도출한 결과입니다. 중요한 주제이므로 변수군을 달리 해도 똑같은 결론을 얻는지 지금부터 검토합니다.
출처...<첨부 1>. 기간: 1986.1 이후 최근까지, 과잉유동성 변수 포함. 보수/진보를 구분하는 Conserv 사용. KB국민은행 서울 아파트 매매가격 지수
<그림 1> 2003.10부터 보수가 계속 집권했을 때 서울 집값: 정권주기론
<그림 1>을 그릴 때 사용한 모형의 변수는 아래와 같습니다.
내생변수: Price, Debt, Jeonse, CD
외생변수: Lee, Park, Moon, Pandemic, 미국 연준 총자산 asset.1 ~ asset.6(과거 6달 전까지 자료 사용)
기간: 2003년부터 2022.5까지 KB국민은행 자료
<표 1> 주택가격 정권주기론의 강화된 검정절차
--------------------------------------------------------------------------------------------------------------------------------------------------------
Step 1 Step 2 Step 3 Step 4 Step 5
노+문을 합치는 단계 이+박을 합치는 단계
----------------- ---------------------------------------- ----------------------------------------------------------------
Base model Price eq에서 모든 식에서 Price eq에서 모든 회귀식에서 Lee,
(모형 1) Moon 계수=0 Moon 계수=0 Lee계수=Park Park을 Converv로
검정 (모형 2) 검정 (모형 3) 계수 검정 대표하는 모형
--------------------------------------------------------------------------------------------------------------------------------------------------------
영가설 기각시 Moon 변수 좌동 Price eq에서 Step 5 포함 좌측 모든
없어도 됨 Lee, Park를 검정 통과시, 2003년
Conserv로 이후 모든 정권을 보수/진보
대표 가능 로 분류 가능
검정하는 방법 모형 1,2 이용 모형 1,3 이용 Price eq Converv변수 포함/미포함
t 검정# 모형의 로그 우도 비교해 판정
판정 기준 t값이 작다면 p값이 크다면 t값이 작다면 p값이 작다면 보수 vs 진보
Moon변수를 Moon변수 Price eq에서 로 각 정부를 분류해서
없어도 됨 없어도 됨 Lee, Park변수의 분석하는 것이 acceptible
매월 집값 기여 같음
---------------------------------------------------------------------------------------------------------------------------------------------------------
<표 1>에 따라 모형의 변수를 변화시키고 안정성을 알아봅니다. Step 2는 지난 주에 없던 step인데 추가했습니다. 구체적으로, 검토할 모형의 변수구성은 모두 8가지로서 <표 2>와 같습니다. 이를테면 모형 1은 정권더미를 포함해 모든 변수를 포함해 Step 2 ~ Step 5의 검정을 실시하고, 모형 2의 경우는 모형 1에서 연준 총자산 변수를 제외하고 다시 구성한 모형을 이용해 검정합니다. 검정통계량은 p value를 이용하는 것이 가독성이 높아 좋지만, 이용하는 소프트웨어 R이 제공하는 메뉴와 통계조작상의 번거로움을 고려해서 t 검정통계량도 이용했습니다. 제대로 분석해도 같은 결과가 나올 것입니다.
<표 2> 정권주기론의 대(對) 변수구성 강건성 검토
--------------------------------------------------------------------------------------------
내생변수 외생변수
--------------------------------------- -----------------------------------
(Price,Debt) CD Jeonse Pandemic 연준 총자산
-------------------------------------------------------------------------------------------
모형 1 O O O O O
모형 2 O O O O X
모형 3 O O O X O
모형 4 O X X O O
모형 5 O X O O O
모형 6 O O X O O
모형 7 O X X O X
-----------------------------------------------------------------------------------------
주...O 변수 포함, X 변수 미포함. Lee, Park, Conserv 변수는 검정의 종류에 따라 각 모형에서 선별적으로 추가됨
출처...<첨부 2>
<그림 2> 노무현, 문재인 정권을 동일한 성격의 진보정권으로 분류가능한지 검정한 결과
출처...<첨부 2>
<그림 3> 이명박, 박근혜 정권을 동일한 성격의 정권으로 분류하고 2003년 이래 각 정부를 진보-보수로 분류가능한지 검정한 결과
위 <그림 1>은 Step 2, Step 3의 검정결과이고, <그림 2>는 Step 4, Step 5의 검정결과입니다. <표 1>의 "판정 기준"에 따라 노무현, 문재인 정부를 분석목적상 하나의 정권으로 분류할 수 있고(즉 진보정권), 이명박, 박근혜 정부를 진보정권과 구분되는 동일 성격의 정권(즉 보수정권)으로 분류하는 것이 통계적으로 타당하다는 결론입니다.
여기서 모형 7도 주목할 필요가 있습니다. 이 모형은 변수구성이 가장 간단한 모형인데 full model인 모형 1과 유의도 측면에서 차이 없습니다. 설명(rationalize)이 필요한 현상이라서 나중을 위해 아래와 같이 [정리]로 남겨 놓습니다.
[정리] 정권주기론은 소수의 변수만을 이용한 모형에서도 그 통계적 규칙성이 확인이 된다(유의도 측면).
지금까지 Moon 정권더미를 이용해 문재인 정부의 성과를 평가했습니다. 그런데 이 성과는 문 정부 부동산정책의 성과이기도 합니다. 따라서 각 정권의 정책을 일정한 지향을 갖는 totality로 보고 정권더미를 totality로서 파악한 정부대책 변수를 이용해 대표하고자 합니다. 좀 더 자세히 그 이유를 살펴보면 다음과 같습니다.
첫째, 각 정부의 부동산정책을 세부적으로 나누는 것은 그 자체 분류와 조작 과정에서 기술적, 개념적, 정치적 논란을 불러 일으킬 가능성이 높다.
둘째, 정책수용자인 보통의 시장참여자 입장에서 보았을 때, 매번 작지 않은 분량의 대책 문건이 담은 전문적 내용을 이해하는 일은 쉬운 일이 아니다. 이때 보통의 이해도와 자원을 가진 시장참여자는 정부대책이 담은 정보부하(information load)를 줄이도록 무시하거나 선별하고(Lor et al., 2023), 자신의 사전지식과 성향에 준해 정부대책을 하나씩 구분해 인식하기보다 전체 묶음(package)으로 인식하는 경향이 증가하게 되며(Stroud, 2008), 시장의 결과(market outcome)는 이러한 인식의 산물로 주어지게 된다.
셋째, 여기 분석이 진보 대 보수간 대결적 평가를 위한 것이므로 정부정책을 세부적으로 나누어 파악하기보다 총체로서 보고 분석하는 것이 분석결과를 해석하기 용이하다.
이렇게 정부대책을 단일 총체로 파악하는 방식은 통계적 관점에서도 타당합니다. 왜 그런지 설명하겠습니다. Park과 Moon의 계수는 해당 정권에서 정권요인이 설명하는 월간 주택가격 변화량 ‘평균’을 말합니다. Park과 Moon 변수를 수준변수로 바꾸면 경과월 t가 되고 이들 정권변수의 회귀계수는 t의 회귀계수가 됩니다(show this by algebra). 이 회귀계수는 정권요인 때문에 오른 서울 집값 월간 평균 상승분으로서 여러 변수를 통제하고 얻은 결과물이 됩니다.
이제 이들 정권더미를 각 정부에서 매월 발표한 정부대책을 누적한 횟수(수준변수)의 일차 차분 D(t)를 이용해 측정합시다. D(t)는 t월 정부대책 발표 횟수가 되고 누적횟수는 ∑D(t)가 됩니다. 정부가 대책을 t월에 1회 발표하면 D(t)=+1이 되고 2회 발표하면 D(t)=+2가 됩니다. 그런데 D(t)를 일정 시점 이후 더해서 구한 누적횟수 ∑D(t)와 정권더미를 누적한 t 사이의 상관계수는 0.97이 넘습니다. 따라서 통계적 관점에서 ∑D(t)는 정권더미 누적변수 t의 훌륭한 대체변수가 되고, 일차차분한 정권더미 Park, Moon 대신 ∑D(t)를 일차 차분한 D(t)를 이용해 Park, Moon의 회귀계수 즉 그 level변수 t의 회귀계수를 근사적으로 구할 수 있습니다. 이렇게 추정한 D(t)의 회귀계수는 Park정권의 경우 Park 정권더미의 회귀계수를 측정하는 것이 되고, Moon정권의 경우 Moon 정권더미의 회귀계수를 측정하는 것이 됩니다(Be sure to convince yourself).
이렇게 만든 모형을 이용해서 각 정권에서 정부대책 --> 주택가격 방향의 인과검정을 실시함으로써 정권별 주택가격의 차이가 totality로서 정권간 정책의 성격 차이 때문인지 검정할 수 있습니다. 검정결과에 따라 집값의 정권주기를 정책 차이 때문에 발생한 정책주기로 파악할 수 있게 됩니다. 뿐만 아니라 이 대체변수는 정권더미 Park, Moon과 달리 내생변수로 취급할 수 있어서, 주택가격 --> 정부대책 방향의 인과검정도 실시할 수 있습니다(지금까지 사용했던 모형에서 주택가격 --> Moon 인과검정은 불가능). 좋은 점은 이것 말고도 많습니다. 물론 이런 작업을 문재인 정부의 경우 전후반기로 세분화해 추가 검토할 수도 있고, 원한다면 시기별 투기적 특성의 차이 같은 것도 검토할 수 있습니다. 요약하면 통계적으로 타당하고 분석적 관점에서도 득이 작지 않은 조작적 measure가 D(t)입니다. 이것이 정부대책 변수를 마땅히 사용해야 하는 이유입니다. 여기 설명은 대단히 중요하므로 가슴으로도 느낄 만한 수준으로 이해하는 노력이 있어야 합니다.
<그림 4> 정부대책 누적 발표 횟수 ∑D(t)의 영향을 측정하는 방식 두 가지
<그림 4>는 정부대책이 집값에 미친 영향을 측정하는 방식 두 가지를 보여줍니다. <그림 4> (a)에서 보수정권은 기준사례로서 그 가격추세에 더해 기울기 차이만큼 문재인 정권에서 집값의 월간 상승폭이 큰 것으로 표시되었습니다. 오른쪽 그림에서 진보, 보수 정권 집값의 공통의 기울기를 빨간선 즉 기준사례로 놓고 진보는 더하고 보수는 감하는 방식으로 각 정권의 정책이 집값에 미친 영향을 측정합니다. 방식 2는 방식 1에 비해 진보정책의 집값 상승효과를 과소평가하는 편향 있습니다. 이전에 보았던 정권요인 Park, Moon은 왼쪽 그림에 대응하는 측정방식입니다.
그림에서 명확하게 볼 수 있듯이, 정부요인 변수 Park, Moon, D 등은 marginal effect 즉 집값의 기본 time trend에 부가적으로 작용하는 영향을 측정합니다. 즉 level변수 기준 다음과 같이 기술할 수 있습니다.
방식 1에서 보수정권의 경우: 집값 = a*t, t: 월 (이명박 정권=기준정권) (식1)
진보정권의 경우: 집값 = (a+b)*t <-- b가 추가됨=부가적 효과 (식2)
방식 2에서 보수정권의 경우: 집값 = (공통 추세 - a)*t <-- 공통추세에서 감하여 효과 측정 (식3)
진보정권의 경우: 집값 = (공통 추세 + a)t <--공통추세에 부가해 효과 측정 (식4)
(식2)는 (식1) 보수정권의 연장선 위에서 부가적 효과 b를 진보만의 기여로 보고 진보정책의 효과를 측정합니다. <그림 1> (a)에서 두 곡선의 기울기 차이가 (식2)에서 b로서 이 값은 이중차분법의 원리에 따라 측정한 것이 되므로 부가적 효과가 됩니다. 행정학 분야에서는 program evaluation에 나오는 평가법으로서 행정조사방법론, 정책분석기법 등에서 나오는 고전적 방법입니다. 심사자 B의 아래 심사평(line 29-33)은 여기 정부대책 변수의 사용원리를 이중차분법의 측정원리와 연결시켜 이해하지 못함으로 인해 생긴 오해입니다.
계량분석은 사실상 더미변수에 의존하고 있고, 더미변수를 넣고 빼는 것으로 문재인 정부의 정권요인에 의해 가격이 상승했고, 만약 정책을 하지 않았다면 가격이 오르지 않았을 것임을 시사하였음. 이를 토대로 판단해볼 때, 저자는 정권이 바뀌면 경제에 영향을 미치는 정책의 연속성이 존재하지 않는다고 가정하고 있다고 생각됨. 그러나 정책은 연속적이며, 과거의 토대위에서 현재의 정책이 수정 보완되는 것임.
한편 아래 <표 3>은 <그림 4> 방식 1, 방식 2에 따라 추정한 모형에서 변수들의 설명력을 검증한 결과입니다.
방식 1을 이용한 모형
내생변수: 주택가격 지수 Price, 가계대출 Debt, 정부대책 D(보수=-1, 문재인 정부=+1)
외생변수: 팬데믹 Pandemic
분석대상 기간: GFC 이후 시기이면서 국토부 실거래가 자료가 제공되는 시기
= 2009.1 ~ 2022.4
(2006 이후 실거래가 전수통계에 투기시장의 특징을 엿볼 수 있는 정부가 있음)
방식 2를 이용한 모형
내생변수: 주택가격 지수 Price, 가계대출 Debt, 정부대책 D(정부대책 발표시 보수/진보 가릴 것 없이 모두 +1 부여)
외생변수: 팬데믹 Pandemic, D*Moon lag 1, D*Moon lag 2 (p=2인 모형 사용)
분석대상 기간: 위와 같음
<표 3> 정부대책 누적 발표 횟수를 변수로 이용한 모형에서 변수들의 설명력 검증
--------------------------------------------------------------------------------------------------------------------------
방식 1을 적용하고 측정한 모형에서 방식 2를 적용하고 측정한 모형에서
---------------------------------------------------------- -----------------------------------------------------------
원인변수-->결과변수 p value 원인변수-->결과변수 p value
--------------------------------------------------------------------------------------------------------------------------
(D,D*Moon) --> Price # 0.00 D --> Price 0.00
D*Moon --> Price # 0.02 Price --> Debt 0.06
Pandemic --> Price 0.00 Price --> D 0.66
D --> Price 0.95 Debt --> Price 0.01
Price --> Debt 0.08 Pandemic --> Price 0.00
--------------------------------------------------------------------------------------------------------------------------
출처...<첨부 3>
여기 분석대상 기간은 경험적 완결성(completeness, 즉 정권요인=정책요인)이 관측된 기간으로서 그 자체 의미가 있습니다. 분석적 관점에서 중요한 foothold를 하나 확보했습니다. 분석대상 기간 등 일반화 작업은 필요한 때 필요한 방향으로 향후 진행합니다.
<표 3>에서 보듯이 정부대책은 방식 1, 2 어디에서나 주택가격을 잘 설명합니다(빨간색 숫자). '보수정부'에서 정부대책은 집값의 유의한 설명변수가 아니지만(초록색 숫자; why?), 문재인 정부에서는 유의한 설명변수입니다(# 표시). 특히 방식 1에서 문재인 정부의 부동산대책(파란색)은 집값을 설명하는 부가적 요인으로서 그 설명력이 통계적으로 유의합니다. 방식 2에서 보듯이 가격은 정부대책을 잘 설명하지 못합니다(보라색 숫자). 즉 D --> Price는 유의해도 Price --> D는 유의도가 떨어진다는 것으로서 각 정부의 부동산대책이 시장가격의 영향을 많이 받아 채택되는 것은 아니라는 의미입니다.
<표 4> 문재인 정부시기 주택가격에 미친 요인별 영향
------------------------------------------------------------------------------------------------------------------------------------------
방식 1을 이용해 측정할 때 방식 2를 이용해 측정할 때
-------------------------------------------- --------------------------------------------
주택가격에 임기중 상승분 주택가격에 임기중 상승분
미친 영향 38.4포인트 대비 미친 영향 38.4포인트 대비
(포인트) (%) (포인트) (%)
-----------------------------------------------------------------------------------------------------------------------------------------
정부대책(28회) +27.5 71.5 +24.4 63.5
팬데믹 +13.4 34.9 +18.4 47.9
합계 +40.9 106.4 +42.8 111.4
-----------------------------------------------------------------------------------------------------------------------------------------
출처...<첨부 4>. 방식 1, 2는 <그림 4> 참고.
한편 문재인 정부시기 주택가격은 부동산대책이 전체 상승분의 60% 이상을 설명하고 나머지는 팬데믹이 설명합니다. 그런데 방식 2는 <그림 4>에서 이미 보았듯이 문재인 정부대책의 주택가격 상승효과를 측정하면서 하향 편향이 발생합니다. 편향 없이 추정하는 방식 1의 추정결과를 살펴보면, 정부대책은 당시 집값 상승분의 70% 이상을 설명하고 팬데믹 요인 상승분 13.4포인트를 제하고 상승한 나머지 집값 모두(좀 더 정확히는 그 이상)의 상승원인이 되었습니다.
문재인 정부시기 정부대책의 집값 설명률
= 정부대책으로 오른 집값 27.5/(문 정부 오른 집값 38.4 - 팬데믹 때문에 오른 집값 13.4)
= 27.5/(38.4 - 13.4)
= 1.10
<표 3>, <표 4>를 결합하면 문재인 정부에서 부동산대책이 집값 상승 사이클을 추동했다는 것을 알 수 있습니다.
유의 비유의 유의
문 정부에서: 대책발표 --> 집값 상승 --> 추가대책 발표 --> 집값 상승 ... --> 정부주도 가격 상승 사이클
(보수 대비) (보수 대비)
지금까지 했던 논의를 토대로 다음과 같이 말할 수 있습니다.
[집값의 보수/진보 정책주기론] 김수현(2023)에 등장하는 10년, 15년 경기적 집값 주기는 이명박 정부 이래 각 정권의 상이한 부동산정책이 낳은 가격 사이클이었다. 정책주기론을 노무현 정부까지 확장하는 일은 나중에.
문재인 정부 공식 문건의 표현을 빌려서 부연하면,
[시사] 문재인 정부시기에 "실수요 보호와 단기 투기수요 억제를 통한 주택시장 안정화"기조에서 탈피했을수록 주택시장은 안정되었을 것이다.주1
좀 더 elaboration이 필요한 결론이지만 통계분석 결과에 따르면 이렇습니다. 이런 결론을 sense-making하는 것이 연구자가 하는 일이고, 앞으로 할 일입니다.
진보 인사들은 멘붕이 와야 정상입니다. 그러나 기억하세요. 이런 일이 과학에서는 일상적이라는 것을. 진보 여러분의 논설은 기술통계, 회계분석, visual inspection을 토대로 한 주장이고, 과학의 기본을 지키지 않은 작가적 상상력의 산물이자 치열한 경험적 천착 없이 관념적 전통의 강한 영향하에서 출현한 산물이라는 점 등. 이때 그런 (유사) 지식체계는 total failure의 가능성이 높은데 그 이론적 가능성이 지금 여기서 확인되었을 뿐입니다. 그 이상도 그 이하도 아닙니다.
이 바닥에서 보는 '관행적 논법'이 가져온, 불운한 결말입니다.
[관행적 논법] 측정 없이 인과론 얘기하기, 그런 걸 다른 말 마구 해서 독자 헤깔리게 하면서 타당성 논변하기(예=김수현(2023), 이준구(2023)), sample=population, correlation=causality, 자신의 입장과 일치하는 관찰만 이용하기, 그때그때 입장 바꾸고 유리한 관찰 인용해 포장하기 + 제대로 논한 바 없는 요인을 그것 때문은 아니라고 결론 짓기 ... 출처: 토론문 2024.5.20
다음 주에는 연준 자산 포함 여러 가지 요인들을 추가하고 정책주기론에 관해 오늘 얻은 결론을 똑같이 얻는지 추가 검토합니다. 이후 문재인 정부시기를 전후반기로 나누고 시기별로도 똑 같은 결과를 얻는지도 검토합니다. 김수현(2023)에 등장하는 주장에 따르면, 처음엔 잘 하다가 나중에 좀 문제가 생겼는데, 그게 임기 후반 신뢰를 못 얻어서였다고 말했던 걸로 기억합니다. 아무튼 정확한 phrasing이야 어떠하든, 진보가 수십년간 지켜온 믿음에 반하는 측정 결과를 제시하는 만큼 찬찬히 진행합니다.
오늘 토론 요약은 <첨부 5> 이메일 발송문 참고.
이혁주 드림
주1...이를테면 2024.8.19 토론문에 실린 micro기제 참고. 이 micro 기제는 이후 논의에서 중요하게 다룰 주제.
Lor, Z., Oh, H. and Choi, J., 2023, To Excluding and Including: News Tailoring Strategies in an Era of News Overload. Digital Journalism, 11(6): 943-961.
Stroud, N., 2008, Media Use and Political Predispositions: Revisiting the Concept of Selective Exposure. Political Behavior, 30(3): 341-366.
<첨부 1> 2003년 10월부터 보수가 집권했을 때 보았을 서울 집값 추세
KB=read.csv(file.choose(),header=T) # 내려받기
View(KB)
attach(KB)
dates <- seq(from=as.Date("1986-01-01"), by="month", length.out=length(Seoul))
plot(dates,Seoul,xlab='Year',ylab='KB index in points',type='l',lwd=1.5)
Assets=read.csv(file.choose(),header=T) # 자료 내려받기, data from 2003.1 to 2022.4
View(Assets)
attach(Assets)
library(dplyr)
tem=diff(Assets[,2],1)/1e5 # Data runs from 2003.2 to 2022.4.
asset.1=lag(tem,1)[10:231] # Take data from 2003.11 to 2022.4.
asset.2=lag(tem,2)[10:231]
asset.3=lag(tem,3)[10:231]
asset.4=lag(tem,4)[10:231]
asset.5=lag(tem,5)[10:231]
asset.6=lag(tem,6)[10:231]
data=read.csv(file.choose(),header=T) # 자료 읽기
attach(data)
Price=diff(Price_new) # 2003.11 to 2022.4
Debt=diff(Debt_new)/1e4
CD=diff(CD_new)
Jeonse=diff(Jeonse_new)
Lee=Lee_new[2:223] # 2003.11 to 2022.4
Park=Park_new[2:223]
Moon=Moon_new[2:223]
Pandemic=Pandemic_new[2:223]
library(vars)
Conserv=Lee+Park
endo=cbind(Price,Debt,CD,Jeonse)
exo=cbind(Conserv,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
B=Bcoef(model)[,12:17] # coef matrix for total assets
b=Bcoef(model)[,10] # coef of Conserv = Marginal effect, NOT total effect of D(t) which is nu+coeff of Conserv
y=array(0,c(4,30))
y[,1]=b # 보수 정권 1달 동안 지속시 진보정부 대비 효과 측정
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
k=abs(sum(y[1,])) # k=-0.4209743
remove(Seoul,rho,lee_park,moon)
Seoul_ts <- ts(Seoul, start = c(1986, 1), frequency = 12)
rho=0
rho[1]=Seoul[214]
for(n in 2:53){rho[n]=Seoul[213+n]-(n-1)*k}
lee_park=0
lee_park[1]=Seoul[267]-53*k # 2008.3. 이명박 정부 사실상 첫 달
for(n in 2: 110){lee_park[n]=Seoul[265+n]-53*k}
moon=0
moon[1]=Seoul[377]-k*53 # 2017.5
for(n in 2: 60){moon[n]=Seoul[376+n]-k*53-k*n}
rho_ts <- ts(rho, start = c(2003, 10), frequency = 12)
lee_park_ts <- ts(lee_park, start = c(2008, 3), frequency = 12)
moon_ts <- ts(moon, start = c(2017, 5), frequency = 12)
plot(Seoul_ts, type = "l", xlab = '연도', ylab = "KB 지수(포인트)", ylim = c(0, 105),lwd=1.5)
lines(rho_ts, lwd=2,col='darkgray')
lines(lee_park_ts, lwd=2,col='blue')
lines(moon_ts, col = "red",lwd=2)
text(2015.1,27,'2003.10부터 보수가',cex=1.3)
text(2015.1,19,'집권했다면',cex=1.3)
abline(v=2022.5,lty='dotted',lwd=1.5)
text(2022.5,5,'2022.5')
text(2003.10,45,'2003.10')
text(2010.10,68,'실제',cex=1.3)
abline(h=100.46,lty='dotted',lwd=1.2)
text(2010.10,95,'100.5')
abline(h=52.685,lty='dotted',lwd=1.2)
text(1987.1,58,'52.7')
abline(h=41.94,lty='dotted',lwd=1.2)
text(1987.1,45,'41.9')
text(2005.5,31,'노')
text(2020.1,44,'문') # <그림 1> 완성
<첨부 2> 각 정부를 동일한 성격을 갖는 진보, 보수정권으로 분류가능한 지 검정
Assets=read.csv(file.choose(),header=T) # 자료 내려받기, data from 2003.1 to 2022.4
View(Assets)
attach(Assets)
library(dplyr)
tem=diff(Assets[,2],1)/1e5 # Data runs from 2003.2 to 2022.4.
asset.1=lag(tem,1)[10:231] # Take data from 2003.11 to 2022.4.
asset.2=lag(tem,2)[10:231]
asset.3=lag(tem,3)[10:231]
asset.4=lag(tem,4)[10:231]
asset.5=lag(tem,5)[10:231]
asset.6=lag(tem,6)[10:231]
data=read.csv(file.choose(),header=T) # 자료 읽기
attach(data)
library(urca)
Price=diff(Price_new) # 2003.11 to 2022.4
Debt=diff(Debt_new)/1e4
CD=diff(CD_new)
Jeonse=diff(Jeonse_new)
Lee=Lee_new[2:223] # 2003.11 to 2022.4
Park=Park_new[2:223]
Conserv=Lee+Park
Moon=Moon_new[2:223]
Pandemic=Pandemic_new[2:223]
library(vars)
# Data preparation
t.Step2=array(0,7)
p.Step3=array(0,7)
t.Step4=array(0,7)
p.Step5=array(0,7)
endo1=cbind(Price,Debt,CD,Jeonse)
exo1=cbind(Lee,Park,Moon,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
endo2=cbind(Price,Debt,CD,Jeonse)
exo2=cbind(Lee,Park,Moon,Pandemic)
endo3=cbind(Price,Debt,CD,Jeonse)
exo3=cbind(Lee,Park,Moon,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
endo4=cbind(Price,Debt)
exo4=cbind(Lee,Park,Moon,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
endo5=cbind(Price,Debt,Jeonse)
exo5=cbind(Lee,Park,Moon,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
endo6=cbind(Price,Debt,CD)
exo6=cbind(Lee,Park,Moon,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
endo7=cbind(Price,Debt)
exo7=cbind(Lee,Park,Moon,Pandemic)
for(n in 1:7){if(n==1){endo=endo1;exo=exo1}
else if(n==2){endo=endo2;exo=exo2}
else if(n==3){endo=endo3;exo=exo3}
else if(n==4){endo=endo4;exo=exo4}
else if(n==5){endo=endo5;exo=exo5}
else {endo=endo7;exo=exo7}
No.endo=dim(endo)[2]
No.exo=dim(exo)[2]
model=VAR(endo,p=2,exogen=exo)
t.Step2[n]=coef(model)$Price[(No.endo*2+4),3] # t values at Step 2
C=array(1,c(No.endo,(No.endo*2+1+No.exo)))
C[,(2*No.endo+1+3)]=0 # Set the coefficients of Moon = 0 in every equation.
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p.Step3[n]=1-pchisq(chi2,No.endo) # p values at Step 3
from=1+2*No.endo+1
to=from+1
A=vcov(model)[from:to,from:to] # variance-covariance matrix of Lee and Park coefficients
coef.Lee=coef(model)$Price[from,1]
coef.Park=coef(model)$Price[to,1]
t.Step4[n]=(coef.Lee-coef.Park)/sqrt(sum(A)) # t values at Step 4
exo1=cbind(Conserv,exo[,4:No.exo])
model1=VAR(endo,p=2,exogen=exo1)
C=array(1,c(No.endo,(No.endo*2+1+dim(exo1)[2])))
C[,(2*No.endo+1+1)]=0 # Set the coefficients of Conserv = 0 in every equation.
R_model=restrict(model1,method='manual',resmat=C)
chi2=2*(logLik(model1)-logLik(R_model))
p.Step5[n]=1-pchisq(chi2,No.endo) # p values at Step 5
}
Model=1:7
plot(Model,t.Step2,type='b',ylim=c(0,0.7),ylab='')
lines(Model,p.Step3,type='b',col='red')
text(4.5,0.5,'p values of Step 3',col='red')
text(4.5,0.05,'t statistics of Step 2') # <그림 2> 완성
plot(Model,t.Step4,type='b',ylim=c(-0.4,0.1),ylab='')
lines(Model,p.Step5,type='b',col='red')
text(4.5,-0.02,'p values of Step 5:',col='red')
text(4.5,-0.05,'진보 vs 보수 구분모형 타당',col='red')
text(4,-0.27,'t statistics of Step 4:')
text(5,-0.32,'coef of Lee=coef of Park in Price eq.') # <그림 3> 완성
<첨부 3> 모형 추정과 정권요인에 의한 집값 상승 측정
data=read.csv(file.choose(),header=T) #Price변수는 여기 자료에서 온 주택가격
attach(data)
library(vars)
#방식 1 이용할 때
library(dplyr)
D=abs(SumD)
remove(Moon,Moon_new)
D_Moon=D*Moon # Interaction term. This term adds slope to the base line at Figure 2(a).
D_Moon.1=lag(D_Moon,1)
D_Moon.2=lag(D_Moon,2)
D_Moon.1[1]=0
D_Moon.2[1:2]=0
endo=cbind(Price,Debt,D)
exo=cbind(Pandemic,D_Moon.1,D_Moon.2)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,0, 1,1,0, 1, 1,0,0, # D --> Price
1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.00
C=matrix(c(1,1,1, 1,1,1, 1, 1,0,0, # D*Moon --> Price
1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.017
C=matrix(c(1,1,0, 1,1,0, 1, 1,1,1, # D --> Price
1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.95 --> 보수의 정부대책은 유의한 집값 설명변수가 아님
C=matrix(c(1,1,1, 1,1,1, 1, 1,1,1, # Price --> Debt
0,1,1, 0,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.075
C=matrix(c(1,1,1, 1,1,1, 1, 0,1,1, # Pandemic --> Price
1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.00
C=matrix(c(1,1,1, 1,1,1, 1, 1,1,1, # Price --> D
1,1,1, 1,1,1, 1, 1,1,1,
0,1,1, 0,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.08
C=matrix(c(1,1,0, 1,1,0, 1, 1,1,1, # D --> Price
1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.95 --> 보수의 정부대책은 유의한 집값 설명변수가 아님
C=matrix(c(1,1,1, 1,1,1, 1, 1,1,1, # D --> Debt
1,1,0, 1,1,0, 1, 1,0,0,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 'log Lik.' 0.4331366 (df=30)
# 방식 2를 이용할 때
remove(Price,Debt,SumD,Pandemic)
endo=cbind(Price,Debt,SumD)
exo=cbind(Pandemic)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,0,1,1, 0,1,1, # SumD --> Price
1,1,1,1,1, 1,1,1,
1,1,1,1,1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.00
C=matrix(c(1,0,1,1,0, 1,1,1, # Debt --> Price
1,1,1,1,1, 1,1,1,
1,1,1,1,1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.01
C=matrix(c(1,1,1,1,1, 1,1,1, # Price-->Debt
0,1,1,0,1, 1,1,1,
1,1,1,1,1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.06
C=matrix(c(1,1,1,1,1, 1,1,1, # Price-->SumD
1,1,1,1,1, 1,1,1,
0,1,1,0,1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.66
C=matrix(c(1,1,1,1,1, 1,1,0, # Price-->SumD
1,1,1,1,1, 1,1,1,
1,1,1,1,1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.00
C=matrix(c(1,1,1, 1,1,1, 1,1, # SumD --> Debt
1,1,0, 1,1,0, 1,1,
1,1,1, 1,1,1, 1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.757
<첨부 4> 정부대책, 팬데믹이 주택가격에 미친 영향 측정
#방식 1 이용할 때
D=abs(SumD)
remove(Moon,Moon_new)
D_Moon=D*Moon # Interaction term. This term adds slope to the base line at Figure 2(a).
D_Moon.1=lag(D_Moon,1)
D_Moon.2=lag(D_Moon,2)
D_Moon.1[1]=0
D_Moon.2[1:2]=0
endo=cbind(Price,Debt,D)
exo=cbind(Pandemic,D_Moon.1,D_Moon.2)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
b1=Bcoef(model)[,8] # coef of Pandemic
b2=Bcoef(model)[,9] # coef of D_Moon.1
b3=Bcoef(model)[,10] # coef of D_Moon.2
A1[,3]=A1[,3]+b2 # new coef matrix for the Moon govt, lag=1;
A2[,3]=A2[,3]+b3 # new coef matrix for the Moon govt, lag=2;
# Price(t)=(a1,13+b21)*D(t-1)+(a2,13+b31)*D(t-2)
impact=array(c(0,0,1),c(3,1)) # Moon lasts for one month.
y=array(0,c(3,30))
y[,1]=impact
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*28 # 27.45 points up for the 60 months in the Moon govt.
y=array(0,c(3,30))
y[,1]=b1 # Pandemic lasts for one month.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # 13.41 points up for the 60 months in the Moon govt.
# 방식 2를 이용할 때
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
y=array(0,c(3,30))
y[,1]=array(c(0,0,1),c(3,1)) # SumD increased by +1.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*28 # 24.43 points up
y=array(0,c(3,30))
b=Bcoef(model)[,8]
y[,1]=b # Pandemic lasts one month.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # 18.46 points
<첨부 5> 이메일 발송문
김수현 박사님 보시지요.
분석 결과는 이렇습니다.
1. 지난 주에 수립했던 서울 집값의 정권주기론을 변수군을 변화시켜가면서 그 강건성을 점검해보았습니다. 점검 결과, VAR모형에 어떤 변수들을 사용했는지와 관계 없이 노무현/문재인 정부는 이명박/박근혜 정부에 비해 집값이 높았고, 임기 중 상승한 집값의 작지 않은 부분이 정권요인 때문이었습니다. 좀 더 구체적으로, 팬데믹처럼 불가피하게 오른 집값을 제하고 오른 나머지 모두(정확히는 그 이상) 문재인 정권요인 때문에 올랐습니다.
2. 정권요인 level변수와 정부대책 누적 발표 횟수 간 상관계수는 0.97 이상으로서, 이들을 1차 차분 월간 정부대책 발표횟수는 정권더미의 훌륭한 대체변수가 됩니다. 분석결과, 정부대책 변수는 집값 변동을 잘 설명합니다. 이 분석결과를 김수현(2023)에 등장하는 주택가격의 10년, 15년 경기적 주기론에 적용하면, 이 경기적 집값 주기는 진보 및 보수정권의 상이한 부동산정책이 낳은 가격 사이클이 됩니다.
3. 정부대책 변수는 문재인 정부시기 팬데믹 때문에 불가피하게 오른 집값을 제외하고 오른 나머지 대부분 혹은 전부 집값을 설명합니다. 정권더미를 이용했을 때 얻은 결론과 같습니다.
다음 주는 정책신뢰를 얻지 못해 집값을 잡지 못했다는 김수현(2023)의 주장을 검토합니다.
여기 논쟁 사이트에서 거명된 인사들에게서 보는 공통적인 논법을 충실하게 따르고 있습니다. 주장의 empirical validation이라는 어려운 방식 대신 작가적 상상력으로 새로운 추측을 연이어 내놓으면서 자신의 입장을 옹호합니다. 부동산 분야에서 진보가 지금까지 생존해온 비법 같습니다. 과학자다운 냉철함도 없고, 그렇다고 학력(學力)이 뒷받침되는 것도 아니어서 지식의 회색지대 해소에 기여하기보다 이를 활용하는데 집중했습니다.
자세한 내용은 오늘자 주택논쟁 사이트를 참고하세요.
이혁주 드림
김수현 박사님 보시지요.
지난 주에 정권더미를 정부대책 변수(대책 발표 횟수로 측정=정책 개입 빈도)를 이용해 훌륭하게 대표할 수 있었습니다. <그림 1>에 따르면 정권더미와 정부대책 발표 횟수간 상관계수가 level변수 기준 0.97이 넘을 만큼 높습니다. 수준변수간 선형 상관성(linear statistical association)이 이렇게 높다는 것은 정책개입 빈도변수가 정권더미처럼 정권이 집값에 미친 균질적(homogeneous)인 월간 영향을 측정한다는 의미입니다. 다른 말로 정책개입이라는 차분 값(differenced data) 이용 intervention analysis가 정권더미 모형의 대안 모형이라는 의미입니다. 두 모형을 이용해 측정한 결과에 따르면 정부요인이 집값에 미친 영향이 비슷한 크기였습니다.
출처...<첨부 1>. 종축은 ∑D(t), 횡축은 경과월 t
<그림 1> 정부대책 누적횟수와 정권더미 level변수간 상관계수
이번 주 주제는 2가지입니다.
주제 1: VAR모형에서 변수구성을 달리 할 때 집값에 미치는 정부대책의 영향이 안정적인지 검정(=정부대책 영향의 변수 의존성 검정). 지난 주 모형은 특정 변수군을 이용했을 때 정부대책이 집값에 미친 영향을 측정.
주제 2: 문재인 정부를 전후반기로 나누어 정책신뢰 상실론의 타당성 추가 검정. 지난 주는 문재인 정부 전후반기를 동질적 기간으로 간주하고 검증.
정권더미 level변수와 정부대책 누적 발표횟수간 상관계수가 사실상 1.0이라는 점은 정부대책 누적 발표횟수를 이용해 각 정권의 주택가격 월간변동 평균을 사실과 가깝게 측정할 수 있다는 말이 됩니다. 이때 정권더미의 회귀계수와 정부대책 변수 회귀계수는 비슷한 크기를 보일 것이고, 정부요인의 주택가격 상승기여분을 측정하면 비슷한 값을 얻을 것입니다. 특히 2024.6.10 토론문 <그림 2> 방식 1을 이용하면 더욱 그럴 것입니다(why?).
2024.6.10 토론문 <그림 2> 방식 1을 사용해 내생변수의 갯수를 증가시킬 때 정부대책 및 팬데믹 변수가 문 정부 시절 집값을 얼마나 올렸는지 측정합니다. 이제 지금까지 다루었던 여러 가지 변수를 하나씩 추가하면서 가설을 다시 검정하고, 정부대책의 집값 설명력(p value)과 상승기여를 측정해 보겠습니다.
내생변수: 주택가격 지수 Price, 가계대출 Debt, 정부대책 D
추가=전세자격 지수, Jeonse, 단기 금리 short, 장기 금리 long, Inflow_GDP,Outflow_GDP, 실효환율 REER
외생변수: Pandemic, D*Moon, 연준자산 Asset(t-1) ~ Asset(t-6)
분석기간: 2009.1 ~ 2022.4
아래 <그림 2>는 변수를 하나씩 위 순서대로 추가했을 때 문재인 정부 5년간 정부대책과 팬데믹이 올린 주택가격입니다.
출처...<첨부 2>, 지난 주 <그림 2>의 방식 1 이용. 집값 정책주기론의 변수 의존성 검증 결과(영향의 크기)
<그림 2> 변수의 개수를 늘릴 때 정부대책이 설명하는 문 정부시기 서울 집값
출처...<첨부 2>, 지난 주 <그림 2>의 방식 1 이용. R2 increases only by 0.03 point. 집값 정책주기론의 변수 의존성 검증 결과(유의도)
<그림 3> 변수들의 설명력(Granger causality의 p value)
<그림 2>에 따르면 정부대책은 문재인 정부 5년간 팬데믹/과잉유동성을 제외하고 오른 나머지 집값 대부분 혹은 모두 그 이상을 설명하고, 이러한 설명력은 누락변수 편향에서 자유로우며, <그림 3>에 따르면 그 영향이 통계적으로 매우 유의합니다. <그림 2>는 Moon 정권변수를 이용했을 때 얻은 결과(2024.5.20 토론문)와 기본적으로 같은 결과입니다.
지난 주에는 문재인 정부시기 정부대책이 집값에 미친 영향이 일정하다고 보고 정책신뢰 상실론을 검토했습니다. 그러나 서울의 주택가격은 임기 후반에 더 빠른 속도로 증가했습니다. 이제 임기를 전후반으로 이등분하는 더미 변수를 도입해서 분석대상 기간인 2009.1~2022.4를 3시기로 나누어 분석합니다.
First_half(t)=1 if t is in [2017.5, 2020.10], 0 otherwise
Seond_half(t)=1 if t is in [2020.11, 2022.4], 0 otherwise
문재인 정부 이전...위 변수 모두 0
지난 주에 검토했던 가설검정 대신 아래와 같이 가설을 다시 설정하고 검정합니다.
영가설: 문재인 정부 전반기(후반기) 정부대책은 서울 주택가격에 영향을 미치지 않았다.
연구가설: 문재인 정부 전반기(후반기) 정부대책은 서울 주택가격의 상승요인으로 작용했다.
시장의 신뢰를 얻으려면 정부가 집값을 올린 당사자가 되어서는 안됩니다. 뺨을 잔뜩 때린 사람이 자기를 믿어 달라고 하는 것과 같습니다. VAR모형의 Price equation은 이렇습니다.
Price(t)=(a1+a2*First_half(t)+a3*Second_half(t))*D(t-1)
+ (a4+a5*First_half(t)+a6*Second_half(t))*D(t-2) + 여타 변수
위 식에서 문재인 정부 임기 전기, 후기 더미 변수 First_half, Second_half가 D와 상호작용 항으로 들어갑니다. 따라서 Price(t)는 전기와 후기에 각각 아래 식에 따라 전개됩니다.
문 정부 전반기... Price(t) = (a1+a2)*D(t-1) + (a4+a5)*D(t-2) + 여타 변수
문 정부 후반기... Price(t) = (a1+a3)*D(t-1) + (a4+a6)*D(t-2) + 여타 변수
보수정권에서... Price(t) = a1*D(t-1) + a4*D(t-2) + 여타 변수
정책변수가 주택가격에 미친 영향이 유의한지 검정하는 방식은 두 가지가 있는데 여기서는 손쉬운 방식을 이용합니다(또 다른 방식은?). 이 식을 이해하는 것이 대단히 중요합니다. 문 정부 전반기 정부대책이 집값 상승요인으로 작용했다면 a1+a2, a4+a5이 회귀식 체계를 전반적으로 잘 설명해야 하고(significanct Granger causality), D(t)=+1이 주택가격을 올린 것으로 판명이 나야 합니다. 따라서 causality 검정할 때 제약식은 4개가 되고 chi2 분포의 자유도 역시 4가 되며, 2단계 검정을 모두 통과해야 합니다. 이 설명을 이해하지 못하면 D변수가 임기 전반기와 후반기에 Price에 유의한 영향을 주었는지 통계검정하고, 정부대책의 집값 상승효과를 측정할 때 그 과정을 이해할 수 없습니다.
출처...<첨부 3>
<그림 4> Price equation
<표 1> 문재인 정부 시기별 정부대책의 주택가격 인상 효과와 유의도
----------------------------------------------------------------------
오른 집값(포인트) p value
----------------------------------------------------------------------
전반기 14.01 0.03
후반기 15.30 0.00
----------------------------------------------------------------------
출처: <첨부 3>
<그림 4>는 추정한 모형의 Price equation입니다. 그리고 <표 1>은 검정결과입니다. Pandemic이 연준자산의 효과를 반영하므로 단촐하게 변수를 꾸미고 검증했습니다. <표 1>에 따르면 문재인 정부시기 정부대책은 시기에 관계 없이 유의하게 집값을 올렸고, 그렇게 오른 집값은 팬데믹 요인에 의한 상승분 12.1포인트를 제외하고 오른 나머지 모두를 설명합니다. 임기 전반, 후반 가릴 것 없이 정부대책이 주택가격 상승의 직접적 원인이었고, 그 원인이 임기 중 오른 집값을 대부분(75%=(14.01+15.30)/38.4) 설명합니다. 시장이 정부를 믿지 않아서 집값이 오른 것이 아니라 정부가 집값을 올린 당사자였습니다. 문 정부는 그런 선택을 28회 했습니다.
문재인 정부의 부동산정책 --> 집값 대폭 상승 --> 시장의 신뢰 상실
문재인 정부가 시장의 신뢰를 얻지 못했던 것은 문재인 정부 government failure의 종속변수(=산물)였습니다. 종속변수는 선행변수의 변화 없이 변하지 않습니다.
이상 분석결과를 정리하면 아래와 같습니다.
[집값의 보수/진보 정책주기론] 김수현(2023)에 등장하는 10년, 15년 경기적 집값 주기는 이명박 정부 이래 각 정권의 상이한 부동산정책이 낳은 가격 사이클로서, 가격 진폭의 높낮이 대부분은 국내외 경제요인이 아니라 진보/보수간 부동산정책의 성격차이가 좌우했다.
"부동산 규제의 신뢰를 잃었다"(김수현, 2023: 67)는 논설과 관련해 오늘 분석이 주는 시사입니다.
[정리: 정책신뢰 상실론] 문재인 정부 때 집값은 팬데믹 요인 때문에 오른 집값을 제외하고 오른 나머지 집값 대부분 혹은 그 이상 정부대책이 실패해서 초래된 결과이다. 정책신뢰 상실론이 성립하려면, 최소한 정부대책이 주택가격 상승을 직접 유발하는 일은 없어야 했다. 집값 상승도 정책신뢰 상실도 모두 문재인 정부 부동산정책 실패의 산물이었고, 임기 전후반기를 가리지 않고 관찰되는 현상이었다.
--> 김수현(2023)이 원했던 시나리오 즉 당시 시장의 신뢰를 획득했을 때 과연 집값이 하락했을 것인지 나중에 검토(counterfactual analysis).
부연하면, 문재인 정부는 얼마든지 자신의 선택을 취소함으로써 보수정권의 집값변동 스케줄을 replicate할 수 있었습니다(2024.6.10 <그림 4>의 방식 1). 다른건 몰라도 도저히 보수적 부동산정책을 따라 할 수 없었다면 정책의 강도(强度)를 줄이는 선택을 함으로써 정부대책의 폐해를 줄일 수 있었습니다. 이런 소극적/부작위의 선택만으로도 임기 중 오른 집값의 상당 부분을 억제할 수 있었습니다(2024.6.10 토론문 <표 4> 우단 방식 2를 이용한 측정치 +24.4포인트). 이것 역시 선택하지 않았습니다. 이런 정부의 정책에 대해 시장의 신뢰를 기대하는 것은 무리입니다.
[정리: 변수의 갯수] 서울 집값의 정책주기론은 소수의 변수만을 이용한 모형에서도 성립하는 경향이 있다(영향의 크기 측면).
cf. 2024.6.10 토론문에 유의도 측면에서 관찰했던 유사 결과가 [정리]에 요약되어 있음.
다음 주에는 집값의 정책주기론을 노무현 정부까지 확장할 수 있는지 알아봅니다. 기간이 늘어나면서 subperiod간 이질성이 증가해서 분석이 매우 지저분해 집니다. 아무튼 오늘의 분석결과는 정권-정책이 등치(等値)임을 보여주는 중요한 결과물입니다.
이혁주 드림
김수현, 2023. 부동산과 정치. 서울: 오월의 봄.
<첨부 1> <그림 1> 그리기
data=read.csv(file.choose(),header=T) #Price변수는 여기 자료에서 온 주택가격
attach(data)
abs_SumD=abs(SumD)
c_abs_SumD=c(0,161)
for(n in 2:161){c_abs_SumD[n]=abs_SumD[n]+c_abs_SumD[n-1]}
t1=seq(1,51)
t2=seq(52,101)
t3=seq(102,161)
x=0; for(n in 1:51){x[n]=c_abs_SumD[n]}
y=0; for(n in 1:50){y[n]=c_abs_SumD[(52+n-1)]}
z=0; for(n in 1:60){z[n]=c_abs_SumD[(102+n-1)]}
x1=c(1:51)
cor(x1,x) # 0.97
y1=c(1:50)
cor(y1,y) # 0.97
z1=c(1:51)
cor(z1,z) # 0.98
plot(t1,x,type='l',xlim=c(0,161),ylim=c(0,50),lwd=2,xlab='2009.1 이후 경과월',ylab='누적 정부대책 횟수',cex.lab=1.5)
lines(t2,y,type='l',col='red',lwd=2)
lines(t3,z,type='l',col='blue',lwd=2)
text(max(t1)+20, tail(x, 1), "이명박 정부, 0.97", pos = 1, cex=1.5)
text(max(t2)+20, tail(y, 1), "박근혜 정부, 0.98", pos = 1, cex=1.5)
text(max(t3)-10, tail(z, 1), "문재인 정부, 0.99", pos =2, cex=1.5)
<첨부 2> 변수의 개수를 늘려가면서 다시 검증하고 영향 측정하기
remove(Price,Debt,CD,SumD,Pandemic,D_Moon.1,D_Moon.2,D) # 이전 흔적은 최대한 지우고 실시. 실행 결과가 엉뚱하게 나올 수 있음.
D=abs(SumD)
D_Moon=D*Moon
library(dplyr)
D_Moon.1=lag(D_Moon,1)
D_Moon.2=lag(D_Moon,2)
D_Moon.1[1]=0
D_Moon.1[1:2]=0
endo=cbind(Price,Debt,D,Jeonse,short,long,Inflow_GDP,Outflow_GDP,REER)
exo=cbind(Pandemic,D_Moon.1,D_Moon.2,Asset1,Asset2,Asset3,Asset4,Asset5,Asset6)
collect=array(0,c(6,7))
R2=0
for(n in 1:7){No.endo=n+2 # number of endogenous variables to use in the VAR model
model=VAR(endo[,1:No.endo],p=2,exogen=exo)
R_model=restrict(model,method='ser',thresh=.3)
A1=Bcoef(R_model)[,1:No.endo]
A2=Bcoef(R_model)[,(No.endo+1):(2*No.endo)]
b1=Bcoef(R_model)[,(No.endo*2+3)] # coef of D_Moon.1
b2=Bcoef(R_model)[,(No.endo*2+4)] # coef of D_Moon.2
A1[,3]=A1[,3]+b1
A2[,3]=A2[,3]+b2
y=array(0,c(No.endo,30))
y[,1]=Bcoef(R_model)[,(No.endo*2+2)] # coefficient of Pandemic
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
collect[1,n]=sum(y[1,])*26 # Store the impact of Pandemic.
B=Bcoef(R_model)[,(No.endo*2+5):(No.endo*2+10)] # coeff matrix of the FRB's total assets
y=array(0,c(No.endo,30))
effect=0
for(k in 101:160){y[,1]=B%*%exo[k,4:9] # Given the number of variables, we measure
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
effect=effect+sum(y[1,]) # effect measured of a particular month
} # effect measures the effect of the FRB's total assets on Price for the Moon's 60 months.
collect[2,n]=effect # Total assets' impact on Price
impact=array(0,c(No.endo))
impact[3]=1 # impact of D=+1 in the D equation
y[,1]=impact
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
collect[3,n]=sum(y[1,])*28 # Store the impact of D=+1.
C=array(1,c(No.endo,(No.endo*2+10)))
C[1,3]=0 # coef of D(t-1) in the Price equation
C[1,(No.endo+3)]=0 # coef of D(t-2) in the Price equation
C[1,(2*No.endo+3):(2*No.endo+4)]=0 # coef of D_Moon.1 and D_Moon.2
RR_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(RR_model))
collect[4,n]=1-pchisq(chi2,2) # Significance of D --> Price
C=array(1,c(No.endo,(No.endo*2+10)))
C[1,(2*No.endo+2)]=0
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
collect[5,n]=1-pchisq(chi2,1) # Significance of Pandemic --> Price
C=array(1,c(No.endo,(No.endo*2+10)))
C[1,(2*No.endo+2)]=0 # coef of Pandemic=0 in the Price equation
C[1,(2*No.endo+5):(2*No.endo+10)]=0 # coeff of Total assets=0 in the Price equation
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
collect[6,n]=1-pchisq(chi2,7) # Significance of (Pandemic,Total assets) --> Price
R2[n]=lapply(summary(R_model)$varresult, "[", "r.squared")$Price$r.squared
}
x=c(3:9)
plot(x,collect[3,],type='l',ylim=c(0,42),lwd=2,xlab='내생변수의 개수', ylab='포인트',cex.lab=1.3)
lines(x,(collect[1,]+collect[2,]),type='l',lwd=2,col='red')
abline(h=38.3,lty=2,lwd=2)
text(7,41, labels='임기중 상승분=38.3포인트') # 문재인 정부시기 상승한 주택가격(=100.3 - 61.9 포인트)
text(6,10, labels='Pandemic+과잉유동성의 영향',col='red',cex=1.3)
text(6,25, labels='정부대책의 영향',cex=1.3)
lines(x,(collect[1,]+collect[2,]+collect[3,]),lty='dotted',col='red',lwd=1.2)
text(4,35,'Sum of the effects',col='red') # <그림 1>완성
x=3:9
plot(x, collect[4,], type = 'b', col = 'red',xlab ='내생변수의 갯수', ylim = c(0,0.01),cex.lab=1.3,ylab='p value')
lines(x,(10*collect[6,]),type='b')
text(5,0.003, 'Pandemic+Total assets-->집값',cex=1.2,col='red') # <그림 2> 완성
text(6,0.001, '정부대책-->집값',cex=1.2) # <그림 2> 완성
<첨부 3> <표 1> 작성용
data=read.csv(file.choose(),header=T) #Price변수는 여기 자료에서 온 주택가격
attach(data)
View(data)
library(vars)
library(dplyr)
remove(Price,Debt,D,SumD,Pandemic)
D=abs(SumD)
First_half=array(0,c(161))
First_half[102:131]=1
D1=First_half*D # Interaction term
D1.1=lag(D1,1)
D1.2=lag(D1,2)
D1.1[1]=0
D1.2[1:2]=0
Second_half=array(0,c(161))
Second_half[132:161]=1
D2=Second_half*D # Interaction term
D2.1=lag(D2,1)
D2.2=lag(D2,2)
D2.1[1]=0
D2.2[1:2]=0
endo=cbind(Price,Debt,D)
exo=cbind(Pandemic,D1.1,D1.2,D2.1,D2.2)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,0,1,1, 0,1,1,0,0, 1,1, # D --> Price in the 1st half of the Moon govt.
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.029
C=matrix(c(1,1,0,1,1, 0,1,1,1,1, 0,0, # D --> Price in the 2nd half of the Moon govt
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.002
round(Bcoef(model),2)
Price.l1 Debt.l1 D.l1 Price.l2 Debt.l2 D.l2 const Pandemic D1.1 D1.2 D2.1 D2.2
Price 0.55 0.03 -0.01 -0.05 0.13 0.01 -0.08 0.25 0.12 0.16 0.21 0.19
Debt 0.23 0.33 -0.06 -0.01 0.12 0.08 0.31 -0.12 -0.08 -0.09 -0.03 0.11
D -0.17 -0.02 -0.19 -0.02 0.12 -0.21 0.27 0.00 0.52 0.31 0.34 0.48
y=array(0,c(3,30))
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
b1=Bcoef(model)[,9] # coef of D1.1, First_half(t)*D(t-1)
b2=Bcoef(model)[,10] # coef of D1.2, First_half(t)*D(t-2)
A1[,3]=A1[,3]+b1
A2[,3]=A2[,3]+b2
y[,1]=array(c(0,0,1),c(3,1)) # initial impact of D=+1 in the D equation in the 1st half of the Moon govt
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*sum(D[102:131) # 14.01 points up by the 17 D's in the 1st half of the Moon govt
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
b1=Bcoef(model)[,11] # coef of D2.1, Second_half(t)*D(t-1)
b2=Bcoef(model)[,12] # coef of D2.2, Second_half(t)*D(t-2)
A1[,3]=A1[,3]+b1
A2[,3]=A2[,3]+b2
y[,1]=array(c(0,0,1),c(3,1)) # initial impact of D=+1 in the D equation in the 2nd half of the Moon govt
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*sum(D[132:161]) # 15.30 points up by the 11 D's in the 2nd half
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
y[,1]=Bcoef(model)[,8] # Pandemic lasts for one month.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # 12.90 points up by Pandemic
<첨부 4> 이메일 발송문
김수현 박사님 보시지요.
지난 주 분석에 따르면, 김수현(2023)에 등장하는 10년, 15년 경기적 집값 주기는 '이명박' 정부 이래 각 정권의 상이한 부동산정책이 낳은 가격 사이클이었습니다. 여기서 정권요인을 정부대책 발표 누적횟수로 바꾸어 정부요인(=정권요인 or 정책요인)의 영향을 측정할 수 있었던 것은 두 변수간 매우 높은 상관관계가 존재하기 때문이었습니다. 그 결과, 집값의 정권적 주기현상이 정부정책 주기현상으로 관측되었습니다. 그런데 지난 주에 관측했던 이 정책주기 현상은 특정변수군을 전제로 하고 관측한 것이었습니다. 이번 주에는 분석모형의 변수 구성을 바꾸고 여전히 집값의 정책주기 현상이 관측되는지 검토합니다. 검토 결과, 집값 정책주기의 변수 독립적 규칙성이 관측됩니다.
이들 분석결과에 따르면 단일 총체로서 문재인 정부의 부동산정책은 집권 기간 내내 반복적 시장개입을 통해 집값의 유의한 상승을 추동했고, 그 결과 임기 중 주택가격을 대폭 올렸습니다. 반복적 시장개입이 어떤 방식으로 가격을 올렸는지는 추가분석에서 좀 더 명료하게 할 일이지만, 아무튼 당시 28회 정부대책이 집값 상승의 직접적 원인으로 작용했습니다. 여기서 팬데믹처럼 불가피한 요인은 그 비중이 낮았고, 과잉유동성, 금리 등등 이들의 집값 상승기여는 눈에 띄지 않았습니다.
따라서 "집값 상승기에 문재인 정부가 집권하게 된 것"(김수현, 2023: 60) 때문에 집권 기간 내내 집값이 올랐던 것이 아니고, "부동산 경기 하강기에 들어선 윤석열 정부"(김수현, 2023: 68)가 운이 좋아 집값이 떨어졌던 것도 아닙니다. 문 정부의 부동산정책이 문제였고, 이 때문에 시장은 정부를 신뢰하지 않았으며, 문제의 원인이 사라진 2022년 5월 정권교체는 곧 집값의 하향 안정화를 의미하는 평균회귀(mean reversion)였습니다. 이때 집값을 올린 정부를 시장이 신뢰하리라 기대하는 것은 연목구어(緣木求魚)입니다. 집값 상승과 신뢰 상실 모두 문 정부가 자초했습니다. 집권기간 내내 원인변수가 영향을 미치는 방식에서 통계적 변화가 관찰되지 않았는데, 이제 와서 종속변수인 집값이 어떠니 시장의 신뢰가 어떠니 하는 것은 핵심을 찌르는 논설이 아닙니다.
다음 주에는 정책주기론의 성립기간을 이명박 정부 이후 기간에서 노무현 정부 이후 기간으로 확장해 보겠습니다('x 이후'라는 말은 시점 x까지 포함하는 개념. 수학에서도 그렇게 씀). 다만 분석상의 messiness라는 대가를 치러야 합니다.
자세한 내용은 주택논쟁 사이트를 참고하세요.
이혁주 드림
김수현 박사님 보시지요.
김수현(2023)은 단편소설집입니다. 소설책을 내고, "이 책이 건강한 토론과 논쟁의 촉발제가 될 것인지는 여전히 자신 없다"(9쪽)라고 말하면 안 됩니다. 여기 소설집은 과학자들이 하는 "건강한 토론과 논쟁"(9쪽)의 소재가 될 수 없습니다. 인문학도가 아닌 사회과학도의 글로서 나쁜 글쓰기의 본보기로 남을 것 같습니다. 글의 내용, 글쓴이의 비중, 글의 성격.
"건강한 토론과 논쟁"은 어떤 것일까요? 지금 이혁주 박사가 벌이고 있는 이런 류일 겁니다.
청와대에서 물러난 후 시간이 많았을 텐데 무엇했나요? 책을 쓰기까지 여러 해 동안 핵심 주장을 검토할 시간이 많았습니다. 그런데 그렇게 안 했습니다. 과잉유동성 얘기는 벌써 2017년 용 머리 위에서 세상을 내려보던 때 나온 얘기입니다. 통계분석 능력이 없어서 그랬나요? 만약 그렇다면 다른 사람의 도움을 받거나 다른 방식을 택했어야 합니다.
그럼에도 글을 써야 했다면, 과잉유동성론, 정책신뢰 상실론, 보수행운/진보불운론, 주택가격의 경기순환론과 같은 얘기들은 피했어야 합니다. 이렇게 유령명제 여러 개를 성격을 분명하게 밝히지 않은 채 나열하면, 명색이 교수인데 뭐가 있으니 저러겠지 라고 생각해서 청와대 김상조 박사처럼 경제학 전공자 중에도 넘어가는 사람이 있고, 정치인, 일반인은 '실험실'에서 나온 신뢰할 만한 finding이라고 이해합니다. 지지층 위로용, 정치적 동원용으로는 효과가 있지만, 과학자의 글쓰기는 아닙니다.
학회 동료 연구자들과 사석에서 이런저런 얘기하다 보면 이 바닥의 문제로 이런 문제에 대해 실토하는 일을 심심하지 않게 목격합니다. 그러면서 서로 우습게 보지요. 경멸하기도 하고. 건강한 경쟁심리, 비판적 태도만으로 이해하기 힘든... 우리만 아는 open secret. "관행적 논법"은 실재하는 현상으로서, 이유야 어떠하든 진보와 계획계가 공유하는 특징입니다.
Human...A scholar deeply involved in policy-making in a government has published a book which reviewed the policy outcomes. Many of his claims are based on conjectures. What is the proper basic stance of his writing when he writes about the evaluation of the market outcomes? More emphasis on the point of how he is supposed to write. In 100 words.
ChatGPT... 대답
"실패의 원인이나 대안에 대한 진지한 논의가 없는 현 상황이 안타깝다"(11쪽)고 했지만, 책 출간 1년여 전에 김 박사님은 이미 여기 사이트에 초대된 바 있습니다. <그림 1> 참조.
<그림 1> 2021.12.17 토론문 참조인 목록에 포함된 김수현 박사 이름
이 박사의 논설은 논변의 엄격함(rigor)과 mind-blowing한 내용 그리고 새로운 담론을 이끌어 낼 만한 seminality를 동시에 담고 있습니다. 한국 부동산정책분야에서 오랜만에 보는 논설입니다. 여기 거론된 인사들이 수모에도 불구하고 침묵하는 것은 이 박사의 논설에 "'부동산 실패' 프레임만 있을 뿐, 그 구조와 대안에 대한 고민은 단선적이고 상투적이다"라고 치부할 수 없는 내용이 담겨 있다는 증표입니다. 엮이기 싫어서 무대응이 아닙니다. 3년 전 전강수 박사의 반응(2021.8.19 이메일)을 참고하세요. 그런 소소한 것에 그리 반응했다면 지금은 침묵하면 안 됩니다. 인생과 학문과 커리어, 진보의 자존심이 걸린 문제입니다.
즉 다른 진보 인사들은 김수현 박사의 진단 "실패의 원인이나 대안에 대한 진지한 논의가 없는 현 상황이 안타깝다"와 다르게 해석했다는 말입니다. 김 박사님이 한 말은 그냥 해 본 소리가 됩니다.
이혁주 박사가 개설한 여기 "주택논쟁" 사이트는 그 자체 '현상'입니다. 그런데 눈치조차 채지 못했다면, 쉽게 말해 헛소리 취급한 박은철, 김경민, 전강수 박사 정도의 안목이라는 것입니다. 그리고 그 안목은 한쪽 눈을 가린 것이었습니다. 난이도와 주제가 비슷한데 박진백 외(2021)는 인용하고 김원중-이혁주(2022), 여기 논설은 인용하지 않았습니다. 그런데 인용한 것이 하필 엉터리 논문이었습니다. 박사 김수현의 학력(學力), 균형감 모두 문제가 있습니다.
"'부동산 실패' 프레임만 있을 뿐, 그 구조와 대안에 대한 고민은 단선적이고 상투적이다"라는 말이 김수현의 소설에는 적용되지 않는데 반해, 이혁주 박사의 empirics에는 적용된다고 주장했습니다. 그럼 오늘도 연구실에서 씨름하는 다른 연구자들을 모두 바보 멍청이 취급한 것이 됩니다. 재직 중인 대학에서 배출한 제자, 그런 제자 양성에 힘쓴 동료 교수들의 노고도 부정했습니다. 이들 모두 소설 쓸 줄 몰라서 그랬던 것이 아닙니다. 세종대학교 공공정책대학원은 문예창작학과가 아닙니다. 김원중 외(2021)에 실린 이혁주 박사 글도 참조하세요. 상상력도 없고 딱딱하고. 과학자는 해석(interpertation) 이전에 사실에 대한 기술(記述)이 먼저라서 그랬습니다.
반론하세요. 현재의 진보는 미래의 권력입니다. 자기들끼리 위로하고 최면에 걸리고 할 일이 아닙니다.
이혁주
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
김원중 외, 2021. 서울 집값, 진단과 처방. 서울: 박영사.
김원중·이혁주. 2022. 서울 아파트가격 급등 원인에 대한 통계적 검토. 국토계획 57(7): 69-90.
박진백, 이태리, 오민준, 2021. 금리의 주택가격 상승 기여도 추정. 주택연구, 29(4): 75∼100.
이준구, 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양 : 문우사.
지난 주까지 규명한 바에 따르면, 2009년 이후 서울 주택가격 변동의 주기와 진폭을 좌우한 것은 국내외 경제요인이 아니라 진보와 보수의 대조적 부동산정책이었다. 이번 주에는 이러한 정책주기론을 자료가 허락하는 범위내에서 2003년 노무현 정부까지 확장가능한지 검토한다. 2008년 있었던 글로벌 금융위기(GFC)가 경제변수에 작지 않은 충격을 주었다는 점을 고려해서 통시(通時)모형을 구축하고 검토한 결과에 따르면, 2003년 이후 서울의 주택가격 변동도 보수/진보 정권의 부동산정책이 그 주기와 진폭을 결정했다. 좀 더 구체적으로 살펴보면, 보수-진보간 차별화된 정부대책 변수(=월간 정부대책 발표 횟수)는 정권더미와 마찬가지로 주택가격의 변동을 유의하게 설명하고 이 설명력은 다양한 변수군에서 안정적으로 관찰된다. 이는 가격주기 측면에서 정권더미 모형과 정부대책 모형이 등치(equivalent)라는 의미이다. 한편 정부대책 변수는 진보정권 가격 상승분의 절반 이상(노무현 정부시기 58.5% 이상, 팬데믹 요인 공제시 문재인 정부시기 대부분 혹은 그 이상)을 설명한다. 정부대책 변수의 주택가격 설명력은 정권더미보다 낮지만 가격 사이클 진폭의 상당 부분을 같은 정부요인으로서 설명한다. 따라서 2003년 이후 서울 주택가격의 변동은 진보/보수 정부요인(정권요인 및 부동산대책) 때문에 발생했다고 말할 수 있다. 과잉유동성, 글로벌 금융위기, 정책신뢰의 상실 등 때문에 발생한 것이 아니다.
주기: 실제 주기 = 정권주기론의 주기 = 정책주기론의 주기
진폭: 실제 진폭 ≑ 정권주기론이 설명하는 진폭 ≑ 정책주기론이 설명하는 진폭
이러한 분석결과에 따르면, 2003년 노무현 정부 이래 주택가격의 주기적 변동이 보수/진보 정권주기와 일치했고 그 결과 진보불운/보수행운으로 귀결되었다는 김수현(2023), 이준구(2023)의 주장은 성격이 다른 부동산정책이 교번하면서 발생한 정책주기가 정권주기와 일치해 나타난 현상을 오해한 것이다. 정권주기와 주택가격의 경기적 주기간 일치를 보고한 경험연구는 지금까지 발견되지 않는다.
한편 정부대책 변수는 월간 정부대책 발표회수로서 그 누적치는 정부개입 빈도를 나타낸다. 개입빈도는 정권더미와 상관계수가 1.0에 가까우면서도(수준변수 기준, 수준변수는 누적치), 여타 시계열 자료와 달리 정책발표 시점에 관한 정보를 담고 있다(예컨대 개입한 달, 개입하지 않은 달). 그래서 그 회귀계수는 정부요인에 의한 월간 평균 집값 변동뿐 아니라 정부대책이 유발한 가격변동의 시계열적 패턴에 관한 정보도 담고 있다. 또한 정부대책 변수는 다른 변수와 상호작용하는 변수이다. 이러한 특징 덕에 정부대책 변수를 집권당의 성격에 따라 차별화하면 통계적으로 정권변수의 훌륭한 대체변수가 될 뿐만 아니라, 그 자체 정권별로 정부부문과 시장이 어떻게 차별적으로 상호작용했는지 연구가능하게 하는 정부요인의 척도가 된다.
다음 주에는 주택시장의 투기적 특성을 명시적으로 고려해서 모형을 구축하고 서울 집값과 정부요인간 관계에 대해 다시 살펴본다.
김수현 박사님 보시지요.
지난 몇 주 동안 김수현(2023), 이준구(2023)에 등장하는 경기적 집값 주기론을 검토했습니다. 검토결과에 따르면, 이들 주장과 달리 '이명박' 정부 이래 서울 집값의 사이클이 보수/진보 정권의 집권 사이클과 일치했고(정권주기론), 더 나아가 이명박 정부 이래 집값 사이클의 경우 보수/진보 정권의 상이한 정책이 만들어낸 사이클(정책주기론)이라는 점을 확인했습니다. 그리고 이 정부요인발 집값의 순환변동은 모형을 구성하는 변수의 종류, 개수와 관계 없이 주기와 진폭이 관측되었고, 윤석열 정부의 등장은 이런 정부요인의 일시적 소멸을 의미했으며 서울 집값의 급락은 그 결과라고 했습니다(단절적 평균회귀). 오늘은 이명박 정부 이래 성립하는 서울 집값의 진보/보수 정책주기론이 노무현 정부시기까지 확장한 기간에도 성립하는지 알아보겠습니다. 결론은 Yes입니다.
현재 가용 자료를 살펴 보면 분석기간을 최대 2003년까지 확장가능합니다. 그럼 2008년 글로벌 금융위기(GFC)가 자료생성과정(data generating process)에 미친 영향을 명시적으로 고려해야 합니다.
출처...<첨부 1>
<그림 1> 리먼브라더스 파산 시기 전후 서울 아파트가격지수
<표 1> GFC로 인한 주요 변수 변동기제 변화 가능성 검증
----------------------------------------------------------------------------
p value
----------------------------------------------------------------------------
GFC --> Price 0.014
GFC --> Debt 0.103
GFC --> CD 0.005
GFC --> 정부대책 D 0.886
GFC --> 모든 내생변수 0.002
----------------------------------------------------------------------------
출처...<첨부 1>
<그림 1>은 2008.9 리먼브라더스 파산 전후 서울 아파트값 지수인데, 2008.9 이후 지수가 급락했다가 1년 후에야 종전 가격을 회복했습니다. 글로벌 금융위기를 다루기 위해 GFC(t)라는 새로운 더미 변수를 도입하고, 2008.9 리먼브라더스 파산 이후 2022.4까지 모든 달에 값 1을 부여합니다(일부 기간에 대해 부여하는 방식은 나중에 다시 논의). 분석에 사용할 모형은 아래와 같고 물론 1차 차분해 만든 정상자료(stationary time series)를 이용합니다.
내생변수... KB아파트가격 지수 Price, 가계대출 잔액 Debt, CD금리 CD, 정부대책 누적 발표 횟수 ∑D(t) (식1)
외생변수... 팬데믹, Conserv와 D 상호작용항 Conserv_D, 미국 연준자산, GFC와 내생변수 상호작용항
분석기간... 2003.1 ~ 2022.4 (기준정권 = 진보정권)
여기서 관심변수는 빨간색 변수입니다. 기존모형과 달리 내생변수의 기울기가 2008.9 이후 변하도록 허용했습니다. 이런 원리입니다.
Price(t)=(a1+b1*GFC(t-1))*Price(t-1) + (a2+b2*GFC(t-2))*Debt(t-1) + lag=2인 내생변수 + 외생변수 (식2)
Debt(t)=(c1+d1*GFC(t-1))*Price(t-1) + (c2+d2*GFC(t-2))*Debt(t-1) + lag=2인 내생변수 + 외생변수 (식3)
나머지 다른 변수들 ...
빨간색 계수가 2008.9 이후 GFC의 영향으로 각각 a1, a2 및 c1, c2에 부가된 Price(t-1), Debt(t-1)의 영향입니다. 이들 회귀계수가 통계적으로 유의하다고 판명이 나면, GFC가 내생변수들의 시계열적 변동에 변화를 일으켰다는 것을 말합니다.
<표 1>에 검정결과가 있는데 흥미롭습니다. 관심변수인 집값 변수뿐 아니라 변수 전반에 걸쳐 변동기제상의 변화가 관측되었습니다. 정부대책 변수에는 GFC가 별다른 영향을 주지 않았는데, 이것 역시 흥미롭습니다. 정부대책의 성격은 정권의 성격이 결정하는 것이지 경제변수는 별 영향을 미치지 않습니다. 한국의 부동산정책은 이념편향성이 두드러진다는 통계적 증상으로 보아도 좋을 같습니다.
<표 2> 노무현 정부 이래 주택가격의 정책주기론을 검정하는 절차
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Step 1 Step 2 Step 3 Step 4 Step 5 Step 6
개별정권 수준에서 정권의 동질성을 검정하는 단계 4개 정권을 진보/보수로 나누어
분석가능한지 검정하는 단계
--------------- ----------------------------------------------------------------------------------------------- -------------------------------------------------------
Price eq에서 모든 식에서 Price eq에서 모든 회귀식에서 Price eq에서 모든 회귀식에서
영가설 Moon*D의 Moon*D의 Lee*D의 계수 Lee*D의 계수= Converv*D의 Converv*D의
계수=0 계수=0 =Park*D의 계수 Park*D의 계수 회귀계수=0 회귀계수=0
--------------- ---------------------------------------------------------------------------------------------- ------------------------------------------------------
로그 우도 7.40/7.25 7.40/-9.49 7.40/6.74 7.40/0.89 -13.92/-17.07 -13.92/-23.10
자유도 2 8 2 8 2 8
chi^2 0.31 33.80 1.32 13.02 6.30 18.35
p value 0.856 0.000 0.516 0.111 0.042 0.018
--------------- --------------------------------------------------------------------------------------------- -------------------------------------------------------
검정 결과 영가설 채택 영가설 기각 영가설 채택 영가설 채택 영가설 기각 영가설 기각
(보수 대책의 (왼쪽 판정이
집값 영향이 진보 모든 변수에
대책과 다름) 적용됨)
의미 Price eq에서 모든 식에서 Price eq에서 모든 식에서 모든 회귀식에서 각 정권의 부동산
노/문의 정부 왼쪽처럼 Lee, Park을 Step 3처럼 정책을 보수/진보로 구분하고 단일
대책을 동질 하는 것은 같은 정권으로 할 수 있음. 총체로서 분석가능. Step 1~4에서
적인 것으로 불가 보고 정책분석 (다만 p value 분석단위=개별 정권. 정책을
간주할 수 가능 가 조금 애매) 보수적 정책, 진보적 정책으로 분류
있음 하고 분석할 수 있다는 말
-------------- ---------------------------------------------------------------------------------------------- ------------------------------------------------------
검정에 사용 ++++++++ 정권변수 Lee, Park, Moon을 +++++++++++++++++++++ +++ Lee, Park을 Conserv로 놓고 +++
한 모형 +++++++++ 이용한 모형 +++++++++++++++++++++ +++ 나머지는 진보로 놓은 모형 +++++
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
출처...<첨부 2>. 로그 우도 앞의 숫자는 unrestricted model의 로그 우도, 뒤의 숫자는 restricted model의 로그 우도. Step 3, 4는 Stata를 이용해 수행. 여기 모델 모두 GFC 더미 변수, 연준 총자산 변수 포함.
<표 2>는 서울 아파트가격 지수의 주기적 변동이 대립적 성격의 보수/진보 부동산정책에 따라 결정되었는지 검증한 결과입니다. 결과는 yes이고 특히 빨간색 부분을 주목하세요. 이제 정권주기론 대신 정책주기론으로 주택가격의 순환변동을 대신하고 이 현상을 동일정권내 동질적 총체로서 정책이라는 콘텐츠로 substantiate할 수 있게 되었습니다. 자세히 설명드립니다.
먼저 GFC의 영향에 관한 1절의 평가결과를 반영해 모형을 만들었습니다. 노 정권을 기준정권으로 삼고 이-박-문 정권을 정권더미로 각각 잡은 후, 각 정권의 정부대책이 주택가격 등 내생변수의 변동에 미친 영향을 평가했습니다. Step 1에서 Step 4입니다. Price equation의 경우, 노무현/문재인 정부의 정책은 동질적 정책으로서 가격에 영향을 미치고(Step 1), 이명박/박근혜 정부도 마찬가지라는 말입니다(Step 4). 노/문, 이/박의 정책이 각각 동질적 정책으로서 주택가격에 영향을 준다는 말은 주택가격이 진보/보수 정권의 정책과 연동되어 변한다는 말입니다. 진보/보수정권의 정책이 교번하면 이와 연동되어 주택가격도 상승/하락을 반복하게 됩니다. 정책주기론을 뒷받침하는 증거 1입니다.
증거 2는 Step 5, 6에 있습니다. 여기 step에서는 기준정권을 진보정권으로 놓고, 이명박/박근혜 정부를 보수정권 Conserv로 분류했을 때 주택가격 등 내생변수가 진보-보수라는 대립적 구도에서 이해할 수 있는지 검증했습니다. 결과는 Yes로서 Step 1~Step4와 달리 unqualified yes입니다. 진보와 보수 부동산정책이 내생변수 전반에 걸쳐 차별적으로 영향으로 미쳤습니다. <표 3>은 Step 6에서 수행한 검정을 내생변수 하나하나에 대해 시행한 결과를 보여줍니다. 보수정권 더미 Conserv는 관심변수인 Price와 D(t)에 유의한 영향을 주고 잘 설명합니다. 그 결과 Debt, CD 금리에 미치는 영향이 유의하지 않음에도 전체 VAR모형의 변수 변동을 잘 설명하는 것으로 검정되었습니다. 즉 Conserv=1(보수정권의 정책)일 때 이와 연동되어 가격 등 내생변수가 전체적으로 변하고, Conserv=0(진보정권의 정책)일 때 이와 연동되어 가격 등 내생변수가 전체적으로 변하게 됩니다. 이때 진보/보수 부동산정책의 교번에 따라 주택가격이 상승/하락하는 현상이 관찰될 것입니다. 정책주기론을 뒷받침하는 증거 2입니다.
<표 3> 보수정권을 Conserv로 대표한 모형에서 보수 부동산정책이 내생변수 각각에 대한 설명력
-----------------------------------------------------------------------------
보수 부동산정책 Granger causality 비 고
p value
-----------------------------------------------------------------------------
--> Price 0.042 <표 2>에서
--> Debt 0.467
--> CD 금리 0.381
--> 정부대책 0.001
--> 모든 내생변수 0.018 <표 2>에서
-----------------------------------------------------------------------------
출처...<첨부 2> 맨 뒤. <표 2>에서 Step 5, Step 6에서 사용한 모형을 이용한 결과물.
<그림 2> Step 5에서 구한 Price 회귀식
중요한 검정이므로 좀 더 자세히 보겠습니다. <표 2> Step 5는 아래 수식에서 빨간색 회귀계수가 0인지 검정한 결과였습니다.
Price(t)=(a1+a2*Conserv(t-1))*D(t-1) + (b1+b2*Conserv(t-2))*D(t-2) + 여타 변수 (식4)
만약 a2, b2가 0과 다르다면 보수 부동산정책은 진보 대비 집값 Price에 부가적 효과를 미치는 것이 됩니다. 검정 결과 a2, b2는 유의하게 0과 다릅니다(joint test의 p value=0.042). (식2)의 full regression equation이 <그림 2>에 있습니다. 빨간색 표시를 보면 (식4)의 a2=-0.092, b=-0.155 모두 음수로서 진보 대비 보수 부동산대책은 집값을 낮추었습니다. a+b=-0.24포인트/월로서 이전에 보았던 수치와 비슷한데, 직접효과로서 보수정권은 진보 대비 매월 집값을 0.24포인트, 집권 5년 동안 0.24*60=15포인트 낮춥니다. 간접효과까지 고려하면 이보다 더 떨어지겠지요.
<그림 2>에서 몇 가지 더 흥미로운 관찰입니다.
[관찰 1] Price*GFC(t-1)의 계수 = -0.248, Price*GFC(t-2)의 계수 = +0.248로서 크기가 비슷하면서 반대 부호입니다. 따라서 GFC가 서울 집값 '변동'을 잘 설명하지만(<표 1> GFC-->Price 0.014), GFC 변수를 생략한 모형을 만들어 분석해도 어쩌면 그로 인한 왜곡이 크게 나타나지 않을 가능성도 있다.
[관찰 2] 비슷한 일이 미국 연준 total assets 변수 asset.1 ~ asset.6에서도 관찰이 됩니다. 부호가 교번합니다. 그 결과, 미국 연준자산이 서울 집값을 이해하는데 도움이 되지만 이 변수의 영향은 최소화되었습니다. GFC변수에서도 비슷한 일이 발생할 것으로 예상된다.
[Remark] 이 변수는 그 중요도에 비해 지나치게 많은 자유도를 잡아 먹고 있음. 그럼에도 이렇게 변수를 많이 포함하는 이유는 과잉유동성에 대한 진보측 여러 사람들의 확고한 믿은 때문에 그리 한 것임. 마음 같아서는 대폭 간소화하고 싶음.
여기 주택논쟁 사이트에서 거론했던 변수들을 최대한 (식1) 모형에 추가하고 정책주기론의 변수의존성을 다시 검정합니다. 추가한 변수는 아래 빨간색 변수들입니다.
내생변수... KB아파트가격 지수 Price, 가계대출 잔액 Debt, CD금리 CD, 정부대책 누적 발표 횟수 ∑D(t) (식3)
추가: 전세가격, 장기 금리, 자본유입 규모 inflow/GDP, 환율 REER
(모두 8가지 변수)
외생변수... 팬데믹, 미국 연준자산, GFC와 내생변수 상호작용항
3종의 정권더미와 정부대책간 상호작용항 --> <그림 3>에서
Conserv와 D 상호작용항 Conserv_D --> <그림 4>에서
분석기간... 2003.1 ~ 2022.4 (기준정권 = 진보정권)
출처...<첨부 3>
<그림 3> 정책주기론의 변수의존성 검정: Step 1, 3
출처...<첨부 4>
<그림 4> 정책주기론의 변수의존성 검정: Step 5, 6
<그림 3>, <그림 4>가 검정결과인데, 변수를 추가해도 결과는 <표 2>와 비슷한 결과를 얻습니다. 즉 변수의 개수와 관계 없이 Price equation에서 노무현, 문재인 정부를 동일 성격의 정권으로 분류해 분석할 수 있고(<그림 3> 아래쪽 곡선), 이명박, 박근혜 정부를 동일 성격의 정권으로 분류해 분석할 수 있습니다(<그림 3> 위쪽 곡선). 마찬가지로 변수의 개수와 관계 없이 2003년 이후 역대 정부를 보수, 진보로 분류해 주택가격뿐 아니라 관련 변수들의 변동을 분석하는 것이 통계적으로 뒷받침됩니다(<그림 4> 두 곡선).
논의를 요약하면, 2003년 이후 서울 집값에서 보는 주기현상은 상이한 성격의 보수-진보 부동산정책 때문에 관측된 통계적 규칙성이 정권주기와 일치해서 발생한 현상입니다. 주택경기의 순환변동이 정권주기와 우연히 일치해서 보수행운/진보불운이 되었던 것이 아닙니다. 그러나 여기서도 주의가 필요합니다. 집값의 주기=정권주기=정책주기과 관측되었다는 것은 주택가격의 순환주기 즉 period에 대한 이야기로서 진폭은 또 다른 얘기입니다. 이를테면 이렇습니다(가상).
실제 집값: Price(t) = sin(t), 주기= 3.14
집값의 정권주기: Price(t) = 2*sin(t), 주기= 3.14
집값의 정책주기: Price(t) = 0.5*sin(t), 주기= 3.14
여기서 t는 시간입니다. 주기가 모두 3.14로 같지만 이들 3가지 가격변동 곡선의 진폭은 1, 2, 0.5 등 제각각이고, 정책주기론은 실제 주택가격 변동의 절반밖에 설명하지 못합니다.
(1) 노무현 정부 부동산대책 발표 횟수를 세는 방식: 월간 정부대책 발표 회수 D(t) 스케줄의 누적횟수와 정권더미의 level변수 t간 상관계수는 0.94이고, 방식을 달리해 다시 정부대책 발표 횟수를 count해 계산해도 상관계수가 0.95에서 거의 변하지 않습니다. 좀 더 자세한 검토는 연습문제로 남겨 놓습니다.
(2) Overparameterization문제: <그림 3>, <그림 4>를 그릴 때 변수의 수가 지나치게 많음에 따라 overparameterization 문제가 발생할 우려가 있습니다. 이를 통제하기 위해 R에서 회귀계수의 유의도가 일정 수준 이하인 경우 0으로 놓고 추정하는 메뉴 thresh를 제공합니다. thresh=0.3이라고 specify하면 회귀계수의 t값이 0.3 이하인 회귀계수는 버리고 추정합니다. 이 기능을 이용해 <그림 4>를 그렸는데, thresh 값을 변화시키고 다시 그린 그림이 아래 <그림 5>입니다.
출처...<첨부 5>. 회귀계수의 유의도를 관리해 모형을 구성할 때
<그림 5> 정책주기론의 변수의존성 추가 검정
위 그림을 그리면서 thresh=0.1, 0.3, 0.7, 1.0,1.3을 이용했습니다. 점선은 thresh=1.3인 경우인데 overparameterization문제에 대해 이렇게 lax하게 대처한 경우를 제외하면, 나머지 경우에 보수/진보 정권을 구분해 부동산정책을 단일 총체로 놓고 주택가각 변동을 분석할 수 있습니다. 변수의 개수와 관계 없이. <표 2> Step 1, Step 3는 연습문제로 남겨 놓습니다.
(3) 미국 연준자산 total assets 및 GFC변수를 제외한 모형에서: 연준자산 변수와 GFC변수의 포함여부에 따라 4가지 조합의 데이터셋을 구성할 수 있습니다.
자료 1: 연준자산 포함, GFC 변수 포함 모형
자료 2: 연준자산 포함, GFC 변수 미포함 모형
자료 3: 연준자산 미포함, GFC 변수 포함 모형
자료 4: 연준자산 미포함, GFC 변수 미포함 모형
출처...<첨부 6>
<그림 6> Step 5 검정
출처...<첨부 6>
<그림 7> Step 6 검정
4가지 종류의 자료 각각을 이용해 <표 2> Step 5, Step 6 검정의 변수 의존성을 검토한 결과가 <그림 6>, <그림 7>에 있습니다. 각 종류의 자료는 그림에서 곡선 하나에 대응합니다. 8사례 가운데 한 사례를 제외하고 Step 5, Step 6 검증결과는 변수 구성과 별 관계가 없습니다. 특히 Step 6에서는 이러한 패턴이 명확합니다. 그림에서 circle tick을 포함한 곡선은 자료 1에 대응하는 곡선입니다. 이들 그림이 주는 메세지는 또 이런 것입니다.
2003년 이후 자료를 통시모형으로 돌리기보다 GFC 이후 자료만 따로 떼어 분석하는 것이 현명해 보인다. overparameterization문제(Long, 1995: 54).
전에 정권주기론을 수립하면서 이용한 모형에 GFC변수는 없었습니다. 이제 GFC변수를 모형에 추가하고 정권주기론을 다시 검정합니다. GFC를 고려해 다시 추정한 모형에서 보수정권 더미변수 Conserv의 설명력(Granger causality)을 측정해 그림으로 그린 것이 아래 <그림 8>에 있습니다. 정권주기론은 여전히 타당합니다.
출처...<첨부 9>
<그림 8> GFC와 정권주기론
또한 보수정권이 1달 지속되었을 때 진보정권에 비해 서울 집값은 0.40포인트가 낮습니다. 문재인 정부 때 0.4*60=24포인트가 보수정권에 비해 더 높았습니다. 이전에 보았던 수치보다 작습니다만, 주목할 만하지는 않습니다.
지금까지 정책주기론의 통계적 유의성을 확인했습니다. 그러나 그래서 얼마나 집값이 영향을 받았는지 크기 문제는 또 다른 문제입니다. 이용한 모형은 Step 6에서 사용한 모형으로서 (식3)은 Step 6 모형의 Price equation이 됩니다. 보수정권 더미 Conserv와 정부대책 변수 D의 상호작용 항을 포함한 모형입니다.
<표 4> 진보정권의 부동산정책이 올린 집값(보수정권 대비)
--------------------------------------------------------------------------------------------------
노무현 정부 때 문재인 정부 때
--------------------------------------------------------------------------------------------------
기간(달) 52 60
실제 오른 집값(포인트) 17.08 38.4
정책요인 때문에 9.99 50.71
오른 집값(포인트)
--------------------------------------------------------------------------------------------------
출처... <첨부 7> 참고할 것. thresh=0.3 사용. 여기 보고하지 않은 제3의 방식은 <첨부 8>을 볼 것.
<표 4>가 결과물입니다. 노무현 정부 때 오른 집값의 9.99/17.08=58.5%가 보수정부와 다른 진보정책 때문에 올랐고, 문재인 정부 때는 실제 오른 집값보다 더 많이 정책요인 때문에 올랐습니다. 이들 상승분은 보수적 부동산정책을 펼쳤다면 피할 수 있었던 값들입니다. 다만 문재인 정부시기 인상분 50.71포인트는 비현실적인 수치로 판단됩니다. 2003년 이후 최근까지 경제시스템의 변화를 단일시스템으로 포착해 그려내면서 발생한 문제 같습니다. 대안은 데이터셋을 GFC 전후로 나누고 각 부분기간에 대해 분석하는 것입니다(최근까지 이렇게 했음). 그러나 노무현 정부 때 집값 추정은 현재 우리가 가진 최선의 정보를 이용해 분석한 결과입니다. 2008년 이전치 자료만 떼어내 분석할 때 표본이 작아서 분리해 측정할 수 없습니다.
또 다른 대안으로서 2008.9 이후 일정 수의 월에 대해 GFC(t)=1을 부여하고 분석하는 방식입니다. <첨부 8> <그림 A1>에 따르면 2008.9~2009.2까지 GFC(t)=1을 부여할 때 VAR모형의 로그 우도가 가장 큰 값을 취합니다. 이러한 GFC(t) 스케줄을 가지고 다시 구한 측정결과에 따르면 측정결과가 대단히 비현실적으로 더 크게 나옵니다. 이 방식은 버리고 <표 4>의 결과물을 정책주기론에 따른 노무현 정부시기 주택가격 상승분으로 이용하겠습니다(보수적 추정치가 됨).
지금까지 논의를 한 마디로 정리하면 이렇습니다.
[집값의 보수/진보 정책주기론] 2003년 이래 서울 집값에서 보는 주기현상은 상이한 성격의 보수-진보 부동산정책이 낳은 집값 사이클이다.
이를 부연하면 이렇습니다.
[집값의 보수/진보 정책주기론: Elaboration] 김수현(2023), 이준구(2023)에 등장하는 집값 주기론, 즉 10년, 15년 경기적 집값 주기와 보수/진보 집권시기의 일치현상은 노무현 정부 이래 각 정권의 상이한 부동산정책이 낳은 가격 사이클 때문에 발생했다. 집값의 정책주기는 과잉유동성, 글로벌 금융위기, 정책신뢰의 상실 등과 관련이 없다.
정책주기론은 다음과 같이 predict합니다.
[Prediction] 2022년 5월 윤석열 정부의 등장은 진보 부동산정책이 추동했던 집값 변동기제의 단절적 변화를 의미하고 정권교체 후 서울 집값은 평균회귀할 것이다. (나중에 확인)
다음 주에는 분석모형에 투기요인을 반영하고 서울 주택가격을 다시 분석하겠습니다. 이를테면 문 정부 때 "보증금의 형태로 차입이 이루어지는 갭투자가 크게 성행"(line 19)했다고 합니다. 이 심사자 A는 갭투자와 같은 투기요인을 고려하지 않았으니 제출 논문을 믿기 어렵다고 합니다. 그러나 월간 보증금 통계는 public domain에 존재하지 않습니다. 통계분석이 불가능합니다.
여러분이라면 타당하지만 이런 난감한 요구에 대해 어떻게 생각하십니까? 두 가지 관점에서 한 번 고민해 보시지요.
관점 1(논문 투고자 입장에서): 존재하지 않는 통계를 이용해 분석하라는 요구에 어떻게 응할 것인가? 어떻게 죽지 않고 살아남을 것인가?
관점 2(지식 생산과정의 참여자로서): 지식을 점증적 과정의 산물로 보는 입장(incremental view) vs. 지식을 완성체로 보는 시각. 이런 논쟁적인 주제의 경우 어떤 입장에 서야 하나?
저는 점증적 과정에 한 표입니다. 논쟁적인 주제일수록, 제대로 된 연구가 없을수록 논문에 연구의 한계를 분명히 적시한다는 전제하에 그런 연구라도 세상에 공개되어 소설 같은 논설을 과학명제로 대체하고 후속 논의를 촉발시키는 것이 훨씬 더 생산적일 것이라는 기대 때문입니다. 현재와 같은 지적 풍토라면 실험적 연구자는 질식사하고 말 잘 듣는 양(羊)만 성(盛)합니다. 그렇게 되면 날 것 그대로인 주장이 사전 정화와 숙성 단계 없이 정치과정에서 충돌로까지 연결되는 부작용이 발생합니다.
이혁주 드림
Long, J. Scott, 1997. Regression Models for Categorical and Limited Dependent Variables. London: SAGE.
Montgomery, Douglas C., Cheryl L. Jennings, and Murat Kulahchi, 2015. Introduction to Time Series Analysis and Forecasting. 2nd edition. Hoboken, New Jersey: John Wiley and Sons.
<첨부 1> GFC로 인한 구조전환 발생 여부 검정 1
# <그림 1> 그리기
dates <- seq(from=as.Date("2008-01-01"), by="month", length.out=length(data$Price_new[52:75]))
plot(dates, data$Price_new[52:75], xlab='Year-Month', ylab='KB index in points', type='b', xaxt='n',ylim=c(57,61))
axis(1, at=seq(from=as.Date("2008-01-01"), to=tail(dates, n=1), by="6 months"),
labels=format(seq(from=as.Date("2008-01-01"), to=tail(dates, n=1), by="6 months"), "%Y-%m"))
abline(v=as.Date("2008-09-01"),lty='dotted',lwd=1.5)
text(as.Date('2008-10-01'),57.5,'리만브라더스 파산',cex=1.3) # <그림 1> 완성
data=read.csv(file.choose(),header=T) # 자료 읽기, 여기 과정은 <첨부 1>과 동일
Price=diff(data$Price_new) # 2003.11 to 2022.4
Debt=diff(data$Debt_new)/1e4
CD=diff(data$CD_new)
Jeonse=diff(data$Jeonse_new)
Lee=data$Lee_new[2:223] # 2003.11 to 2022.4
Park=data$Park_new[2:223]
Moon=data$Moon_new[2:223]
Conserv=Lee+Park
Pandemic=data$Pandemic_new[2:223]
Ds=read.csv(file.choose(),header=T) # 자료 내려 받기
remove(D_Rho,D_Lee,D_Park,D_Moon)
SumD=Ds$D_Rho+Ds$D_Lee+Ds$D_Park+Ds$D_Moon # Starts from 2003.1
# Price(t)=(a0+a1*Lee+a2*Park+a3*Moon)*SumD(t-1) + (...)*SumD(t-2)
SumD=SumD[11:232] # 2003.11 to 2022.4
library(urca)
Interest_rates=read.csv(file.choose(),header=T) # 내려받기. 단기=CD rates, 장기=5년 국공채 금리, %
long=diff(Interest_rates$X5_yr) # 장기 금리=국공채 5년물. 1st differenced = stationary
short=diff(Interest_rates$CD) # 단기 금리=CD 90일물. 1st differenced = stationary
long=long[10:231] # 2003.11 to 2022.4
short=short[10:231] # 2003.11 to 2022.4
GDP_Korea=read.csv(file.choose(),header=T) # 내려받기 한국의 GDP, billion US$
GDP=0 # 2003년부터 매월 GDP를 당해년도 GDP로 간주하고 GDP 시계열 자료 생성하는 스텝
GDP[1:12]=GDP_Korea$billion_dollars[44] # GDP of 2003
for(n in 45:63){from=12*(n-44)+1
to=from+12
GDP[from:to]=GDP_Korea$billion_dollars[n]}
GDP=GDP[10:232] # 2003.10 to 2022.4, 222 entries
In_outflow=read.csv(file.choose(),head=T) # 내려받기 자본유입-유출, million US$
Inflow=In_outflow$Inflow_current+In_outflow$Inflow_financial
Outflow=In_outflow$Outflow_current+In_outflow$Outflow_financial
Inflow_GDP=Inflow[10:232]/GDP # 2003.10 to 2022.4
Outflow_GDP=Outflow[10:232]/GDP # 2003.10 to 2022.4
Inflow_GDP=diff(Inflow_GDP)/10 # 2003.11 to 2022.4
Outflow_GDP=diff(Outflow_GDP)/10 # 2003.11 to 2022.4
REER.level=read.csv(file.choose(),head=T) # 내려받기 환율. Nonstationary. 2003.1 to 2022.4
REER=diff(REER.level$RBKRBIS)
REER=REER[10:231] # 2003.11 to 2022.4
library(dplyr)
Assets=read.csv(file.choose(),header=T) # 자료 내려받기, data from 2003.1 to 2022.4. FRB total assets
tem=diff(Assets[,2])/1e5 # Data runs from 2003.2 to 2022.4.
asset.1=lag(tem,1)[10:231] # Take data from 2003.11 to 2022.4.
asset.2=lag(tem,2)[10:231]
asset.3=lag(tem,3)[10:231]
asset.4=lag(tem,4)[10:231]
asset.5=lag(tem,5)[10:231]
asset.6=lag(tem,6)[10:231]
Conserv=data$Lee_new+data$Park_new # This data run from 2003.10 to 2022.4.
Conserv=Conserv[2:223] # 2003.11 to 2022.4
Conserv_D=Conserv*SumD
library(dplyr)
Conserv_D.1=lag(Conserv_D)
Conserv_D.2=lag(Conserv_D,2)
Conserv_D.1[1]=0
Conserv_D.2[1:2]=0
GFC=array(0,c(222))
GFC[59:222]=1
Price_GFC.1=lag(Price*GFC,1);Price_GFC.1[1]=0
Price_GFC.2=lag(Price*GFC,2);Price_GFC.2[1:2]=0
Debt_GFC.1=lag(Debt*GFC,1);Debt_GFC.1[1]=0
Debt_GFC.2=lag(Debt*GFC,2);Debt_GFC.2[1:2]=0
CD_GFC.1=lag(CD*GFC,1);CD_GFC.1[1]=0
CD_GFC.2=lag(CD*GFC,2);CD_GFC.2[1:2]=0
D_GFC.1=lag(SumD*GFC,1);D_GFC.1[1]=0
D_GFC.2=lag(SumD*GFC,2);D_GFC.2[1:2]=0
endo=cbind(Price,Debt,CD,SumD) # The same as before
exo=cbind(Pandemic,Conserv_D.1,Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2, asset.1, asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo) # logLik=-13.925
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1, # GFC --> All
1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=-43.257
chi2=2*(logLik(model)-logLik(R_model)) # chi2=58.664
1-pchisq(chi2,32) # 0.002, GFC had brought about a structural break in the system.
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1, # GFC --> Price
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=-23.507
chi2=2*(logLik(model)-logLik(R_model)) # chi2 =19.164
1-pchisq(chi2,8) # 0.014
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # GFC --> Debt
1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) #logLik=-20.553
chi2=2*(logLik(model)-logLik(R_model)) # chi2=13.256
1-pchisq(chi2,8) # 0.103
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # GFC --> CD
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=-24.839
chi2=2*(logLik(model)-logLik(R_model)) # chi2=21.827
1-pchisq(chi2,8) # 0.005
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # GFC --> D
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1, 0,0,0,0,0,0,0,0, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=-15.757
chi2=2*(logLik(model)-logLik(R_model)) # chi2=3.664
1-pchisq(chi2,8) # 0.886
<첨부 2> <표 2>의 정책주기론 검정
Lee_D.1=lag(Lee*SumD,1);Lee_D.1[1]=0
Lee_D.2=lag(Lee*SumD,2);Lee_D.2[1:2]=0
Park_D.1=lag(Park*SumD,1);Park_D.1[1]=0
Park_D.2=lag(Park*SumD,2);Park_D.2[1:2]=0
Moon_D.1=lag(Moon*SumD,1);Moon_D.1[1]=0
Moon_D.2=lag(Moon*SumD,2);Moon_D.2[1:2]=0
endo=cbind(Price,Debt,CD,SumD) # The same as before
exo=cbind(Pandemic,Lee_D.1, Lee_D.2, Park_D.1,Park_D.2,Moon_D.1,Moon_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2, asset.1,asset.2,asset.3,asset.4, asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo) # log likelihood = 7.408
Step 1: Price eq에서 Moon, Rho를 한 정권으로 간주할 수 있는가? --> Yes
# Price(t)=(a1+a2*Lee+a3*Park+a4*Moon)*D(t-1)+(b1+b2*Lee+b3*Park+b4*Moon)*D(t-2)...에서 a4=b4=0
# SumD의 기울기 GFC-related Total assets
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # Moon*D --> Price
1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=7.253
chi2=2*(logLik(model)-logLik(R_model)) # chi2=0.310
1-pchisq(chi2,2) # 0.856
R_model=restrict(model,method='manual',resmat=C) # logLik=7.253
chi2=2*(logLik(model)-logLik(R_model)) # 0.310
1-pchisq(chi2,2) # 0.856. Price equation에서 Moon, Rho 한 정권으로 취급 가능
Step 2: 모든 회귀식에서 Moon*D의 계수=0? --> No
# Price(t)=(a1+a2*Lee+a3*Park+a4*Moon)*D(t-1)+(b1+b2*Lee+b3*Park+b4*Moon)*D(t-2)...에서 a4=b4=0
# Debt(t)=(a1+a2*Lee+a3*Park+a4*Moon)*D(t-1)+(b1+b2*Lee+b3*Park+b4*Moon)*D(t-2)...에서 a4=b4=0
# 나머지 회귀식에서도 마찬가지
# SumD의 기울기 GFC-related Total assets
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # Moon*D -->All endogenous variables
1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1,1,1,0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=-9.493
chi2=2*(logLik(model)-logLik(R_model)) # 33.80
1-pchisq(chi2,8) # 0.000
Step 3: Price eq에서 Lee*D의 계수=Park*D의 계수? --> Yes
Stata 이용해서 검정.
X=cbind(endo,exo)
write.csv(X,'C:\\Temp\\X.csv') # Export the data for Stata.
constraint 1 [price]lee_d1=park_d1
constraint 2 [price]lee_d2=park_d2
var price debt cd sumd, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) --> log likelihood =7.408
var price debt cd sumd, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) constraints(1 2)
--> log lik= 6.748
1-pchisq(2*(7.408-6.748),2) # 0.516--> Price eq에서 Lee*SumD와 Park*SumD 계수는 차이가 없음
Step 4: 모든 회귀식에서 Lee의 계수=Park의 계수? --> No
constraint 3 [debt]lee_d1=park_d1
constraint 4 [debt]lee_d2=park_d2
constraint 5 [cd]lee_d1=park_d1
constraint 6 [cd]lee_d2=park_d2
constraint 7 [sumd]lee_d1=park_d1
constraint 8 [sumd]lee_d2=park_d2
var price debt cd sumd, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) constraints(1 2 3 4 5 6 7 8)
--> log likelihood =0.896
chi2=2*(7.408-0.896)=13.02
1-pchisq(13.02,6) # 0.111. Park, Lee 동일 성격의 정권으로 분류하는 것 비권장
Step 5: Price eq에서 Conserv*D의 계수=0? --> No.
Conserv=data$Lee_new+data$Park_new # The data run from 2003.10 to 2022.4.
Conserv=Conserv[2:223] # 2003.11 to 2022.4
Conserv_D=Conserv*SumD
library(dplyr)
Conserv_D.1=lag(Conserv_D)
Conserv_D.2=lag(Conserv_D,2)
Conserv_D.1[1]=0
Conserv_D.2[1:2]=0
#Conserv_Price.1=lag(Conserv*Price,1)
#Conserv_Price.2=lag(Conserv*Price,2)
#Conserv_Price.1[1]=0
#Conserv_Price.2[1:2]=0
#Conserv_Debt.1=lag(Conserv*Debt,1)
#Conserv_Debt.2=lag(Conserv*Debt,2)
#Conserv_Debt.1[1]=0
#Conserv_Debt.2[1:2]=0
#Conserv_CD.1=lag(Conserv*CD,1)
#Conserv_CD.2=lag(Conserv*CD,2)
#Conserv_CD.1[1]=0
#Conserv_CD.2[1:2]=0
endo=cbind(Price,Debt,CD,SumD) # The same as before
exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # (Conserv*D.1,Conserv*D.2) --> Price
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=
chi2=2*(logLik(model)-logLik(R_model)) # chi2=6.30
1-pchisq(chi2,2) # 0.042. 보수정권의 정부대책은 진보정권 대비 집값 하락 효과(회귀계수<0).
Step 6: 모든 회귀식에서 Conserv*D의 계수=0? --> No
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # Conserv*D --> 모든변수
1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C) # logLik=-23.10
chi2=2*(logLik(model)-logLik(R_model)) # 18.35
1-pchisq(chi2,8) # 0.018
#<표 3> 작성
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # Conserv*D --> Debt
1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.467
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # Conserv*D --> CD
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.381
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1, # Conserv*D --> CD
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1, 0,0, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.001
<첨부 3> 변수의 개수를 늘리고 정책주기론 재검정, <그림 3> 그리기
base=cbind(Price,Debt,SumD)
exo=cbind(Pandemic,Lee_D.1, Lee_D.2, Park_D.1,Park_D.2,Moon_D.1,Moon_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2, asset.1,asset.2,asset.3,asset.4, asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
X=cbind(CD,Jeonse, long, Inflow_GDP, REER) # 단기 금리 short=CD. 그래서 제외함
p_values=0
chi2s=0
for(n in 1:5){endo=cbind(base,X[,1:n])
model=VAR(endo,p=2,exogen=exo)
final_model=restrict(model,method='ser',thresh=0.3) # 변수가 지나치게 많아서 이 방법 사용
C=ifelse(Bcoef(final_model) != 0, 1, 0)
C[1,(2*n+13):(2*n+14)]=0 # Coefficients of Moon=0; 2*(3+n)+1+6 and the next element
R_model=restrict(final_model,method='manual',resmat=C)
chi2=2*(logLik(final_model)-logLik(R_model))
p_values[n]=1-pchisq(chi2,2)
chi2s[n]=chi2
}
Step 3는 Stata에서 실행
Data=cbind(base,X,exo)
write.csv(Data,'C:\\Temp\\Data.csv') # Export the data for Stata.
constraint 1 [price]lee_d1=park_d1
constraint 2 [price]lee_d2=park_d2
n=1 (하나 추가)
var price debt sumd cd, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) --> LR= 7.408173
var price debt cd sumd, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) constraints(1 2) --> LR = 6.748357
n=2 (변수 2개 추가)
var price debt sumd cd jeonse, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) --> LR = 103.6397
var price debt sumd cd jeonse, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) constraints(1 2) --> LR = 102.9888
n=3 (변수 3개 추가)
var price debt sumd cd jeonse v7, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) --> LR = 226.7601
var price debt sumd cd jeonse v7, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) constraints(1 2) --> LR = 226.1139
n=4 (변수 4개 추가)
var price debt sumd cd jeonse v7 inflow_gdp, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) --> LR = 86.28642
var price debt sumd cd jeonse v7 inflow_gdp, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) constraints(1 2) --> LR = 85.66715
n=5 (변수 5개 추가)
var price debt sumd cd jeonse v7 inflow_gdp reer, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) --> LR = -282.0216
var price debt sumd cd jeonse v7 inflow_gdp reer, exog(pandemic lee_d1 lee_d2 park_d1 park_d2 moon_d1 moon_d2 price_gfc1 price_gfc2 debt_gfc1 debt_gfc2 cd_gfc1 cd_gfc2 d_gfc1 d_gfc2 asset1 asset2 asset3 asset4 asset5 asset6) constraints(1 2) --> LR = -282.4009
LR=array(c(7.408173, 6.748357, 103.6397, 102.9888, 226.7601, 226.1139 , 86.28642, 85.66715, -282.0216, -282.4009),c(2,5))
ps=0
for(n in 1:5){chi2=2*(LR[1,n]-LR[2,n])
ps[n]=1-pchisq(chi2,2)
}
x=4:8
plot(x,p_values,type='b',ylim=c(0,0.7),lwd=1.5,xlab='추가한 내생변수의 개수',cex.lab=1.5,ylab='p values')
lines(x,ps,type='b',col='red',lwd=1.5)
text(6,0.25,'Step 1 검정: Price eq에서 Moon의 계수=0')
text(6,0.47,'Step 3 검정: Price eq에서 Lee의 계수=Park의 계수',col='red') # <그림 3> 완성
<첨부 4> 변수를 추가하고 정책주기론 재검정, <그림 4> 그리기
내생변수... KB아파트가격 지수 Price, 가계대출 잔액 Debt, CD금리 CD, 정부대책 누적 발표 횟수 ∑D(t) (식3)
추가: 전세가격, 장단기 금리, 자본유입 규모 inflow/GDP, 환율 REER
외생변수... 팬데믹, Conserv와 D 상호작용항 Conserv_D, 미국 연준자산, GFC와 내생변수 상호작용항
지금까지 사용한 모형:
endo=cbind(Price,Debt,CD,SumD) # The same as before
exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
새로 구축해서 검증할 모형
endo=cbind(Price,Debt,CD,SumD)
추가: Jeonse, short, long, Inflow_GDP, REER
exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6)
model=VAR(endo,p=2,exogen=exo)
아래는 실제 R에서 사용한 코드.
base=cbind(Price,Debt,SumD)
exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6)
X=cbind(CD, Jeonse, long, Inflow_GDP, REER) # 단기 금리 short=CD. 그래서 제외함
p_values1=0
p_values2=0
chi2_1=0
chi2_2=0
for(n in 1:5){endo=cbind(base,X[,1:n])
model=VAR(endo,p=2,exogen=exo)
final_model=restrict(model,method='ser',thresh=0.3) # 변수가 지나치게 많아서 이 방법 사용
C1=ifelse(Bcoef(final_model) != 0, 1, 0)
C2=C1
C1[1,(2*n+9):(2*n+10)]=0 # Coefficients of Conserv*SumD(t-1) and Conserv*SumD(t-2) = 0
#2*(3+n)+3 to 2*(3+n)+4, which is 2*n+9 to 2*n+10
C2[,(2*n+9):(2*n+10)]=0 # All the coeff's = 0
R1_model=restrict(final_model,method='manual',resmat=C1)
chi2=2*(logLik(final_model)-logLik(R1_model))
p_values1[n]=1-pchisq(chi2,2)
chi2_1[n]=chi2
R2_model=restrict(final_model,method='manual',resmat=C2)
chi2=2*(logLik(final_model)-logLik(R2_model))
p_values2[n]=1-pchisq(chi2,8)
chi2_2[n]=chi2
}
x=4:8
plot(x,p_values1,type='b',ylim=c(0,0.05),lwd=1.5,ylab='p values',xlab='No. of endogenous variables')
lines(x,p_values2,type='b',col='red',lwd=1.5)
text(5.6,0.04,'Step 5 검정: Price eq에서 보수/진보',cex=1.2)
text(5.8,.035,'구분해 분석가능',cex=1.2)
text(6.2,0.012,'Step 6 검정: 모든 eq에서 보수/진보',cex=1.2,col='red')
text(6.4,0.008,'구분해 분석 가능',col='red',cex=1.2) # <그림 4> 완성
<첨부 5> <그림 5> 그리기
endo=cbind(Price,Debt,SumD) # The same as before
X=cbind(CD, Jeonse, long, Inflow_GDP, REER)
exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6)
for(m in 1:5){if(m==1){value=0.1}
else if(m==2){value=0.4}
else if(m==3){value=0.7}
else if(m==4){value=1.0}
else {value=1.3}
p_Step5=0
p_Step6=0
for(n in 1:5){endo=cbind(base,X[,1:n])
model=VAR(endo,p=2,exogen=exo)
final_model=restrict(model,method='ser',thresh=value) # 변수가 지나치게 많아서 이 방법 사용
C1=ifelse(Bcoef(final_model) != 0, 1, 0)
C2=C1
C1[1,(2*n+9):(2*n+10)]=0 # Coefficients of Conserv*SumD(t-1) and Conserv*SumD(t-2) = 0
C2[,(2*n+9):(2*n+10)]=0 # All the coeff's = 0
R1_model=restrict(final_model,method='manual',resmat=C1)
chi2=2*(logLik(final_model)-logLik(R1_model))
p_Step5[n]=1-pchisq(chi2,2)
R2_model=restrict(final_model,method='manual',resmat=C2)
chi2=2*(logLik(final_model)-logLik(R2_model))
p_Step6[n]=1-pchisq(chi2,8)
}
x=4:8
if(m==1){plot(x,p_Step5,type='l',ylim=c(0,0.2),ylab='p values',xlab='No. of endogenous variables')
lines(x,p_Step6,col='red')}
else if(1<m & m<5){lines(x,p_Step5); lines(x,p_Step6,col='red')}
else {lines(x,p_Step5,lty=2, lwd=1.5); lines(x,p_Step6,lty=2,col='red',lwd=1.5)}
}
text(5.4,0.11,'Step 5 검정: Price eq에서',cex=1.2)
text(6.1,0.095,'보수/진보 구분해 분석가능',cex=1.2)
text(6,0.02,'Step 6 검정: 모든 eq에서 보수/진보',cex=1.2,col='red')
text(6.2,0.005,'구분해 분석 가능',col='red',cex=1.2) # <그림 5> 완성
<첨부 6> Total assets, GFC변수가 없을 때 정책주기론 재검증
base=cbind(Price,Debt,SumD)
exo_base=cbind(Pandemic,Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6)
X=cbind(CD, Jeonse, long, Inflow_GDP, REER) # 단기 금리 short=CD. 그래서 제외함
p_Step5=array(0,c(4,5)) # (m,n)=4 types of exo*5 sets of variables
p_Step6=array(0,c(4,5))
for(m in 1:4){if(m == 1){exo=exo_base} # GFC, 연준자산 모두 포함. 자료 1
else if(m==2){exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2, asset.1,asset.2,asset.3,asset.4,asset.5, asset.6)} # GFC 변수 생략, 자료 2
else if(m==3){exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2)} # 연준 자산 변수 생략, 자료 3
else {exo=exo=cbind(Pandemic,Conserv_D.1, Conserv_D.2)} # 연준자산, GFC 모두 생락, 자료 4
for(n in 1:5){endo=cbind(base,X[,1:n])
model=VAR(endo,p=2,exogen=exo)
final_model=restrict(model,method='ser',thresh=0.3) # 변수가 지나치게 많아서 이 방법 사용
C1=ifelse(Bcoef(final_model) != 0, 1, 0)
C2=C1
C1[1,(2*n+9):(2*n+10)]=0 # Coefficients of Conserv*SumD(t-1) and Conserv*SumD(t-2) = 0
#2*(3+n)+3 to 2*(3+n)+4, which is 2*n+9 to 2*n+10
C2[,(2*n+9):(2*n+10)]=0 # All the coeff's = 0
R1_model=restrict(final_model,method='manual',resmat=C1)
chi2=2*(logLik(final_model)-logLik(R1_model))
p_Step5[m,n]=1-pchisq(chi2,2)
R2_model=restrict(final_model,method='manual',resmat=C2)
chi2=2*(logLik(final_model)-logLik(R2_model))
p_Step6[m,n]=1-pchisq(chi2,8)
}
}
x=4:8
plot(x,p_Step5[1,],xlab='내생변수의 개수',ylab='p value',ylim=c(0,0.13),type='b')
lines(x,p_Step5[2,])
lines(x,p_Step5[3,])
lines(x,p_Step5[4,])
text(4.5,0.1,'자료 2',cex=1.3) # <그림 6> 완성
plot(x,p_Step6[1,],type='b',xlab='내생변수의 개수',ylab='p value',ylim=c(0,0.05))
lines(x,p_Step6[2,])
lines(x,p_Step6[3,])
lines(x,p_Step6[4,]) # <그림 7> 완성
<첨부 7> 정부대책이 집값에 미친 영향
endo=cbind(Price,Debt,CD,SumD)
10 11 12 13 14 15
exo=cbind(Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1,CD_GFC.2,D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6,Pandemic)
16 17 18 19 20 21 22 23 24 25
temp=VAR(endo,p=2,exogen=exo)
model=restrict(temp,method='ser',thresh=0.3)
A1=Bcoef(model)[,1:4]
A11=Bcoef(model)[,1]
A12=Bcoef(model)[,2]
A13=Bcoef(model)[,3]
A14=Bcoef(model)[,4]
A2=Bcoef(model)[,5:8]
A21=Bcoef(model)[,5]
A22=Bcoef(model)[,6]
A23=Bcoef(model)[,7]
A24=Bcoef(model)[,8]
#nu=Bcoef(model)[,9]
#nu.conserv=nu+Bcoef(model)[,27]
conserv_d.1=Bcoef(model)[,10] # coeff of Conserv(t-1)*D(t-1)
conserv_d.2=Bcoef(model)[,11] # coeff of Conserv(t-2)*D(t-2)
price_gfc.1=Bcoef(model)[,12]
price_gfc.2=Bcoef(model)[,13]
debt_gfc.1=Bcoef(model)[,14]
debt_gfc.2=Bcoef(model)[,15]
cd_gfc.1=Bcoef(model)[,16]
cd_gfc.2=Bcoef(model)[,17]
d_gfc.1=Bcoef(model)[,18]
d_gfc.2=Bcoef(model)[,19]
A1.moon=cbind((A1[,1]+price_gfc.1), (A1[,2]+debt_gfc.1),(A1[,3]+cd_gfc.1),(A1[,4]+d_gfc.1)) # gfc=1, conserv=0, 文 정권용
A2.moon=cbind((A2[,1]+price_gfc.2), (A2[,2]+debt_gfc.2),(A2[,3]+cd_gfc.2),(A2[,4]+d_gfc.2)) # gfc=1, conserv=0, 文 정권용
A1.congfc=A1+cbind(price_gfc.1, debt_gfc.1,cd_gfc.1,(d_gfc.1+conserv_d.1)) # gfc=1, conserv=1, gfc후 李朴 정권용
A2.congfc=A2+cbind(price_gfc.2, debt_gfc.2,cd_gfc.2,(d_gfc.2+conserv_d.2)) # gfc=1, conserv=1, gfc후 李朴 정권용
A1.conbfgfc=cbind(A1[,1], A1[,2],A1[,3],(A1[,4]+conserv_d.1)) # gfc=0, conserv=1, gfc전 李 정권용
A2.conbfgfc=cbind(A2[,1], A2[,2],A2[,3],(A2[,4]+conserv_d.2)) # gfc=0, conserv=1, gfc전 李 정권용
# 盧 정부에서 정부대책 1회 발표의 영향
impact=array(c(0,0,0,1),c(4,1))
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
a=sum(y[1,]) # -0.419
# GFC전 보수정부에서 정부대책 1회 발표의 영향
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1.conbfgfc%*%y[,1]
for(n in 3:30){y[,n]=A1.conbfgfc%*%y[,n-1]+A2.conbfgfc%*%y[,n-2]}
b=sum(y[1,]) # -0.611
52*(a-b)=9.993포인트=노무현 정부 때 보수정부 대비 정책요인 때문에 오른 집값
# 문재인 정부에서 정부대책 1회 발표의 영향
impact=array(c(0,0,0,1),c(4,1))
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1.moon%*%y[,1]
for(n in 3:30){y[,n]=A1.moon%*%y[,n-1]+A2.moon%*%y[,n-2]}
a=sum(y[1,]) # 0.735
# GFC 후 보수정부에서 정부대책 1회 발표의 영향
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1.congfc%*%y[,1]
for(n in 3:30){y[,n]=A1.congfc%*%y[,n-1]+A2.congfc%*%y[,n-2]}
b=sum(y[1,]) # -0.109
60*(a-b)=50.71포인트
<첨부 8> 정부대책이 집값에 미친 영향을 측정하는 또 다른 방식
data=read.csv(file.choose(),header=T) # 자료 읽기, 여기 과정은 <첨부 1>과 동일
Price=diff(data$Price_new) # 2003.11 to 2022.4
Debt=diff(data$Debt_new)/1e4
CD=diff(data$CD_new)
Jeonse=diff(data$Jeonse_new)
Lee=data$Lee_new[2:223] # 2003.11 to 2022.4
Park=data$Park_new[2:223]
Moon=data$Moon_new[2:223]
Conserv=Lee+Park
Pandemic=data$Pandemic_new[2:223]
Ds=read.csv(file.choose(),header=T) # 자료 내려 받기
remove(D_Rho,D_Lee,D_Park,D_Moon)
SumD=Ds$D_Rho+Ds$D_Lee+Ds$D_Park+Ds$D_Moon # Starts from 2003.1
# Price(t)=(a0+a1*Lee+a2*Park+a3*Moon)*SumD(t-1) + (...)*SumD(t-2)
SumD=SumD[11:232] # 2003.11 to 2022.4
library(dplyr)
Assets=read.csv(file.choose(),header=T) # 자료 내려받기, data from 2003.1 to 2022.4. FRB total assets
tem=diff(Assets[,2])/1e5 # Data runs from 2003.2 to 2022.4.
asset.1=lag(tem,1)[10:231] # Take data from 2003.11 to 2022.4.
asset.2=lag(tem,2)[10:231]
asset.3=lag(tem,3)[10:231]
asset.4=lag(tem,4)[10:231]
asset.5=lag(tem,5)[10:231]
asset.6=lag(tem,6)[10:231]
Conserv=data$Lee_new+data$Park_new # This data run from 2003.10 to 2022.4.
Conserv=Conserv[2:223] # 2003.11 to 2022.4
Conserv_D=Conserv*SumD
library(dplyr)
Conserv_D.1=lag(Conserv_D)
Conserv_D.2=lag(Conserv_D,2)
Conserv_D.1[1]=0
Conserv_D.2[1:2]=0
library(vars)
endo=cbind(Price,Debt,CD,SumD)
GFC=array(0,c(222))
LR=0
for(n in 1: 20){GFC[60:(60+n)]=1
Price_GFC.1=lag(Price*GFC,1);Price_GFC.1[1]=0
Price_GFC.2=lag(Price*GFC,2);Price_GFC.2[1:2]=0
Debt_GFC.1=lag(Debt*GFC,1);Debt_GFC.1[1]=0
Debt_GFC.2=lag(Debt*GFC,2);Debt_GFC.2[1:2]=0
CD_GFC.1=lag(CD*GFC,1);CD_GFC.1[1]=0
CD_GFC.2=lag(CD*GFC,2);CD_GFC.2[1:2]=0
D_GFC.1=lag(SumD*GFC,1);D_GFC.1[1]=0
D_GFC.2=lag(SumD*GFC,2);D_GFC.2[1:2]=0
exo=cbind(Conserv_D.1, Conserv_D.2, Price_GFC.1, Price_GFC.2, Debt_GFC.1, Debt_GFC.2, CD_GFC.1, CD_GFC.2, D_GFC.1,D_GFC.2,asset.1, asset.2,asset.3,asset.4,asset.5,asset.6,Pandemic)
temp=VAR(endo,p=2,exogen=exo)
model=restrict(temp,method='ser',thresh=0.3)
LR[n]=as.numeric(logLik(model))
}
plot(LR,type='b',ylim=c(10,40),xlab='Months covered',ylab='log likelihood') # 아래 <그림>이 결과물
<그림 A1> GFC에 포함된 월수
A1=Bcoef(model)[,1:4]
A11=Bcoef(model)[,1]
A12=Bcoef(model)[,2]
A13=Bcoef(model)[,3]
A14=Bcoef(model)[,4]
A2=Bcoef(model)[,5:8]
A21=Bcoef(model)[,5]
A22=Bcoef(model)[,6]
A23=Bcoef(model)[,7]
A24=Bcoef(model)[,8]
conserv_d.1=Bcoef(model)[,10] # coeff of Conserv(t-1)*D(t-1)
conserv_d.2=Bcoef(model)[,11] # coeff of Conserv(t-2)*D(t-2)
price_gfc.1=Bcoef(model)[,12]
price_gfc.2=Bcoef(model)[,13]
debt_gfc.1=Bcoef(model)[,14]
debt_gfc.2=Bcoef(model)[,15]
cd_gfc.1=Bcoef(model)[,16]
cd_gfc.2=Bcoef(model)[,17]
d_gfc.1=Bcoef(model)[,18]
d_gfc.2=Bcoef(model)[,19]
A1.moon=cbind((A1[,1]+price_gfc.1), (A1[,2]+debt_gfc.1),(A1[,3]+cd_gfc.1),(A1[,4]+d_gfc.1)) # gfc=1, conserv=0, 文 정권용
A2.moon=cbind((A2[,1]+price_gfc.2), (A2[,2]+debt_gfc.2),(A2[,3]+cd_gfc.2),(A2[,4]+d_gfc.2)) # gfc=1, conserv=0, 文 정권용
A1.congfc=A1+cbind(price_gfc.1, debt_gfc.1,cd_gfc.1,(d_gfc.1+conserv_d.1)) # gfc=1, conserv=1, gfc후 李朴 정권용
A2.congfc=A2+cbind(price_gfc.2, debt_gfc.2,cd_gfc.2,(d_gfc.2+conserv_d.2)) # gfc=1, conserv=1, gfc후 李朴 정권용
A1.conbfgfc=cbind(A1[,1], A1[,2],A1[,3],(A1[,4]+conserv_d.1)) # gfc=0, conserv=1, gfc전 李 정권용
A2.conbfgfc=cbind(A2[,1], A2[,2],A2[,3],(A2[,4]+conserv_d.2)) # gfc=0, conserv=1, gfc전 李 정권용
# 盧 정부에서 정부대책 1회 발표의 영향
impact=array(c(0,0,0,1),c(4,1))
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
a=sum(y[1,]) # 0.0568
# GFC전 보수정부에서 정부대책 1회 발표의 영향
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1.conbfgfc%*%y[,1]
for(n in 3:30){y[,n]=A1.conbfgfc%*%y[,n-1]+A2.conbfgfc%*%y[,n-2]}
b=sum(y[1,]) #
52*(a-b)= 18.81 포인트=노무현 정부 때 보수정부 대비 정책요인 때문에 오른 집값
# 문재인 정부에서 정부대책 1회 발표의 영향
impact=array(c(0,0,0,1),c(4,1))
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1.moon%*%y[,1]
for(n in 3:30){y[,n]=A1.moon%*%y[,n-1]+A2.moon%*%y[,n-2]}
a=sum(y[1,]) # 2.0799
# GFC 후 보수정부에서 정부대책 1회 발표의 영향
y=array(0,c(4,30))
y[,1]=impact
y[,2]=A1.congfc%*%y[,1]
for(n in 3:30){y[,n]=A1.congfc%*%y[,n-1]+A2.congfc%*%y[,n-2]}
b=sum(y[1,]) #
60*(a-b)= 115.86포인트
<첨부 9> GFC를 고려한 정권주기론 재검정
GFC=array(0,c(222))
GFC[59:65]=1
endo=cbind(Price,Debt,CD,Jeonse)
exo_base=cbind(Conserv,Pandemic,asset.1,asset.2,asset.3,asset.4,asset.5,asset.6)
p_Price=0
p_All=0
for(n in 1:20){exo=cbind(exo_base,GFC)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1, 1,1,1,1, 1,0,1, 1,1,1,1,1,1, 1, # Conserv --> Price
1,1,1,1, 1,1,1,1, 1,1,1, 1,1,1,1,1,1, 1,
1,1,1,1, 1,1,1,1, 1,1,1, 1,1,1,1,1,1, 1,
1,1,1,1, 1,1,1,1, 1,1,1, 1,1,1,1,1,1, 1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_Price[n]=1-pchisq(chi2,1)
C=matrix(c(1,1,1,1, 1,1,1,1, 1,0,1, 1,1,1,1,1,1, 1, # Conserv --> All endo. variables
1,1,1,1, 1,1,1,1, 1,0,1, 1,1,1,1,1,1, 1,
1,1,1,1, 1,1,1,1, 1,0,1, 1,1,1,1,1,1, 1,
1,1,1,1, 1,1,1,1, 1,0,1, 1,1,1,1,1,1, 1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_All[n]=1-pchisq(chi2,4)
}
plot(x,p_All,ylim=c(0,0.0002), xlab='2008.9 이후 GFC에 포함된 달 수', ylab='p value')
lines(x,p_Price,lty='dotted')
text(10,0.00012,'Conserv-->다른 내생변수 일체')
text(10,0.00002,'Conserv-->Price')
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
b=Bcoef(model)[,10]
y=array(0,c(4,30))
y[,1]=b # 보수정권 1달 지속
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,]) # -0.4000
김수현 박사님 보시지요.
이번 주는 투기 때문에 집값이 높다는 진보의 기본시각, 즉 투기원인론이 타당한지 검정합니다. 주택시장에서 투기장적 특징이 관찰되는 것은 집이 부족해서도 나타나는 현상으로서 주택의 과부족 여부에 대한 검토는 나중에 별도로 합니다. 오늘은 이와 별개로 변동성, 거래물량 등 투기장의 주요 지표를 이용해 문재인 정부를 대상으로 투기원인론 자체의 통계적 타당성을 검정합니다. 검정결과에 따르면,
투기-->집값 상승 (1)
이라는 인과론을
문재인 정권요인 --> 투기 자극 --> 집값 상승 (2)
투기 --> 문재인 정부 대책 자극: 통계적 비유의(이번 주에는 이 주제 다루지 않음) (3)
으로 바꾸어 써야 합니다. 투기 때문에 집값이 높다는 진보 부동산론의 토대적 인식에 반(反)하는 귀인(歸因) 오류(causal misattribution)입니다. (3)에서 비유의하다는 것은 문 정부가 자기 장단에 취해서 대책 내고 시장의 투기장적 특징을 강화했다는 말입니다. 나홀로 직진, 대충 그런 느낌이라고 보시면 됩니다. 나중에 "취해서"라는 말의 명확한 의미를 정책의 자기강화 기제를 통해 추가 설명하겠습니다(매우 무서운 과정).
이 관찰결과에 따르면, 원인변수인 문재인 정권요인을 제거하면 문 정부 때 투기도 집값 상승도 없었습니다. 2022년 정권교체는 이러한 원인변수의 제거를 의미했고, 집값 상승을 추동했던 기저요인의 퇴장과 더불어 실제로 서울 집값은 급락 후 다시 추세상승하는 평균회귀 현상을 보였습니다.
이 관찰은 2009년 이후 집값을 분석해서 얻은 결과로서, 좁게는 문 정부가 당시 투기와 집값 상승의 주범이었다는 의미이면서, 넓게는 진보 정책지혜의 총화로서 그 부동산론이 쓰레기 산임을 시사하는 중요한 관찰입니다. ghost proposition으로서 운이 따르지 않아 사실관계를 뒤집어서 파악했고, 그 결과 대한민국을 구렁텅이로 빠뜨렸기 때문입니다. 이제 본론입니다.
김수현(2023)에 등장하는 10년, 15년 경기적 집값 주기는 노무현 정부 이래 각 정권의 상이한 부동산정책이 낳은 집값의 주기적 변동으로서, 가격 진폭의 작지 않은 부분이 국내외 경제요인이 아니라 진보/보수간 부동산정책의 성격 차이가 좌우했습니다. 그 결과, 노무현 정부 이래 보수/진보 정권의 성격에 따라 서울 집값의 주기와 진폭이 결정되었다는 정권주기론을 정책주기론으로 대체할 수 있었고, 이 정책주기론은 김수현(2023), 이준구(2023)의 보수행운/진보불운론이 근거가 없음을 보여줍니다. 통계적으로는 <그림 1>에서 보는 것처럼 정권더미 Lee, Park, Moon의 수준변수 t와 정부대책 발표 누적횟수=누적 개입횟수간 상관계수가 1.0에 가까워서 발생한 현상이면서, 동시에 정부의 월간 정책개입 횟수 D(t)는 임의의 무작위 생성 시계열 자료와 달리 정책개입 시점 정보 t를 가지고 있어서 발생한 현상입니다. 시점 정보를 담은 변수 D(t)가 주택가격에 영향을 미쳤다는 것은 진보적 부동산정책이 보수정권 대비 실제로 주택가격을 올렸다는 말이고, 진보정권 부동산정책의 퇴장을 의미한 2022.5 정권교체는 주택가격의 급격한 하향 안정화를 의미합니다. 그런데 상관계수가 1.0에 가깝다는 것은 정부의 정책개입 빈도를 counting해서 구성한 변수가 counting 방식이 일부 달라도 분석결과가 별로 달라지지 않을 것임을 시사하기도 합니다.
시계열분석에서 정부의 정책개입과 같은 충격은 intervention analysis라는 이름으로 다루어집니다(Montgomery, 2015: 6장). t월의 대책 발표 D(t)=+1은 정부가 t월에 가한 시장충격이 되고, 그 스케줄 D(t)는 정부충격 스케줄이 됩니다. Intervention analysis 시각에서 볼 때, 정부의 부동산 대책 발표 횟수의 단순 count로도 정부의 시장개입 강도를 측정하는 것이 됩니다. 그런데 여기 주택논쟁의 맥락에서는 D(t)와 정권더미 변수간 매우 높은 상관관계에 착안해 이 intervention을 외생변수인 정권더미의 대체변수로 해석할 수 있고, 정책이 시장변수와 상호작용하기 때문에 정책개입 횟수를 내생변수로 취급할 수 있습니다.
출처...<첨부 1>
<그림 1> 정부대책 누적 발표횟수와 정권더미 수준변수의 상관계수
출처...지난 주 <표 4>, 2024.6.10 <그림 1> 및 <표 4>, 2024.6.3 <표 1>를 이용해 그림. 보수정당 집권시 가격은 그대로 살려서 그림.
<그림 2> 진보적 부동산대책이 없었을 때 2003 이후 예상 명목 주택가격 추세: 정책주기론
지금까지 한 논의를 그림으로 요약한 것이 <그림 2>입니다. 보수가 2003년 이후 계속 집권했다면 2022.5 서울 집값은 100.3포인트에서 정권주기론에 따를 때 52.7포인트까지, 정책주기론에 따를 때 62포인트까지 하락합니다. 노무현, 문재인 정부가 아니었다면 2022.5 집값이 보수적으로 추정해도 물가상승률+팬데믹 영향 정도로 주어집니다. 2022.5의 5,60% 수준으로. 이명박, 박근혜 두 보수정부 때 서울 집값은 실질가격 기준 하락했습니다(위 그림의 파란색 곡선, 여기 곡선은 명목가격). 5,60%는 비현실적 시나리오가 아닙니다.
[결론] 2003년 노무현 정부 이래 보수-진보정권에서 보았던 서울 아파트 매매가의 주기적 변동은 주기 및 진폭 양측면에서 집권 정당의 상이한 부동산정책이 만들어 낸 순환변동이었다. 좀 더 구체적으로, 진보 부동산정책은 보수에 비해 주택가격의 상승을 유도했는데, 만약 2003년 이후 보수가 계속 집권했다면 서울 아파트 매매가는 2022.5 실제 가격의 5,60% 수준에 그쳤을 것이다.
오늘은 투기라는 주제어를 이용해서 진보의 부동산론이 왜 쓰레기 산(山)인지 다른 증거를 보겠습니다.
월간 정부대책 발표 횟수, 즉 월간 정책개입 빈도 D(t)의 회귀계수는 각 정권이 주택가격에 미친 월간 영향 평균으로서, 정권더미의 수준변수 t와 D(t)의 누적치는 상관계수가 1.0에 가까운 값이라서 그런 것이라고 했습니다. 이때 D(t)는 정권더미의 훌륭한 대체변수로 사용할 수 있습니다. 그렇다면 t와 상관관계가 높은 변수라면 어떤 것이라도 정권더미를 대체할 수 있을까요? 대답은 No입니다. D(t)의 스케줄은 정부의 시장개입 시점 t에 관한 고유정보를 가지고 있는데, 이런 정보가 없는 다른 어떤 변수도 sampling error가 아닌 한 정권더미를 대체할 수 없습니다. 모의실험을 통해 이 점을 확인해 보겠습니다.
출처...<첨부 4>. 10,000 trials
<그림 3> 무작위로 생성된 정부개입 스케줄 D(t)의 누적치와 정권변수 수준변수 t간 상관계수의 도수분포
출처...<첨부 4>. 10,000 trials
<그림 4> 무작위로 생성된 정부개입 스케줄 D(t)를 이용한 모형에서 D(t)-->Price(t)의 유의도 분포
문재인 정부시기인 2017.5에서 2022.4까지 60달 가운데 임의의 달 28개를 선택합니다. 이렇게 구성한 D(t) 스케줄 하나를 이용해 그 누적치와 정권더미의 수준변수 t사이의 상관계수를 구하고, 이러한 시행(trial)을 1만회 반복해서 도수분포 그림을 그리면 <그림 3>을 얻습니다. 그리고 이렇게 생성한 1만개의 D(t) 시계열을 하나하나 이용해 VAR모형 1만개를 추정하고, 추정한 VAR모형 1만개에서 D(t) --> Price(t)를 각각 검정하고 p value를 수집하면 <그림 4>를 얻습니다. 이 전체가 실험(experiment) 하나가 됩니다.
<그림 3>에 따르면, D(t) 누적횟수와 정권더미 수준변수 t사이의 상관계수는 사실상 1.0이라고 해도 좋을 만큼 상관성이 높습니다. 그림에서 대부분 상관계수가 0.97을 넘습니다. 그럼에도 <그림 4>에 따르면, D(t)-->Price(t)의 Granger causality는 5% 미만 되는 사례가 전체 1만 사례 가운데 약 2,500사례에 불과합니다. 그림에서 막대들이 대부분 왼쪽 0~5% 구간에 95% 이상 몰려 있어야 하지만 25% 정도만 몰려 있습니다. 이렇게 randomized data generating process를 통해 생성한 D(t) 시계열은 우연하게 유의도 5%인 경우(전체의 1/4 정도)를 제외하고는 대부분 유의하지 않아서 Price의 원인변수 자격을 갖추지 못합니다.
[의미] 정책개입 스케줄 D(t)의 주택가격 설명력은 statistical artifact가 아니다. 이 설명력은 정책개입 시점이라는 중요한 정보를 담고 있어서 관찰된 것으로서, 정권더미 수준변수와의 상관관계가 1.0에 아무리 가까워도 randomly generated time series는 담고 있지 않은 정보이다. D(t) 변수는 정권더미와 유사한 측정결과를 보여주면서 동시에 정권더미에 비해 내용 타당성이 높은 척도이다(척도의 내용 타당성; 남궁근, 2021: 520-524). 그리고 통계적으로 그 유의성이 확인되었다는 것은 정책개입 시점에 따라 서울 집값이 '평균적'으로 유의하게 변동했다는 의미이다. <--'평균적': 여기서 정책은 발표시점과 관계 없이 모두 동질적(homogeneous)으로 모델링했기 때문에 쓴 표현. 정권더미 Park, Moon의 회귀계수가 정권요인의 매월 '평균' 영향을 보여주는 것과 동일한 원리.
한편, 진보/보수로 차별화된 월간 정책개입 횟수 D(t)의 내용타당성과 관련하여 심사자 B는 아래와 같은 의견입니다.
본 논문은 문재인 정부 시기 주택가격 상승의 원인을 specific하게 다루고 있지 못하고, 정권적 요인으로 일반화하여 설명하고 있음(line 23-24).
이 논문을 통해 어떤 정책적 함의를 도출할 수 있을지 모르겠음. 이 연구는 기존 정책에 대한 검토가 제대로 이루어져있지 않고, 단순 카운트를 하여 정책지표를 형성하였음(line 80-81).
이 심사자는 논문에서 진보/보수를 "대결적"으로 평가하기 위해 어떤 정권의 정책을 단일 총체로서 추상화하여 표상(representation)하는 것에 부정적 입장입니다. 이런 입장이라면 국내외 경험연구로서 더미 변수를 이용해 수행한 연구들 모두 학회 차원에서 철회를 심각하게 고려해야 합니다. 좀 더 구체적으로 정치성향을 categorical variable로 묻고 답한 설문을 토대로 연구한 정치학, 행정학, 정책학 분야 논문 일체는 그 타당성을 다시 검토해야 합니다. 정치성향은 당연히 다속성 변수이지만 summary variable로서 그 효용성이 인정되어 명목변수로 측정하고 이용하지만, 이런 학계의 합의를 적절한 설명 없이 부정했습니다.
경험현상을 hypothetical construct로 대표하고 이를 통해 경험세계를 인식하는 일은 철학적 이슈이기도 합니다. 앞서 알아본 내용타당성 내지 개념과 경험현상간 대응성 등과 밀접하게 관련된 문제인데 아래 대화도 참고하세요.
Human...What is the square root of -1? Does that square root really exist?
ChatGPT... 대답
심사자 B의 생각처럼 문제가 그리 단순하지 않습니다. -1의 제곱근은 실수 체계(real number system)에서 존재하지 않습니다. 이 수(數)는 필요에 따라 만든 가공물로서 그 가치는 기본적으로 그 유용성에 있습니다. 물론 이를 유용한 개념으로 operationalize하기 위해서 수학자/과학도들이 trick(?) 같은 것을 쓴다고 해야 할까... 이를테면 e^(it)=cos(t)+i*sin(t)라든가... 아무튼 정부의 정책개입 빈도 D(t) 스케줄은 표상의 대상으로서 경험적 analogue라도 존재합니다. 그런데 -1의 제곱근이라는 숫자 없이 물리학, 공학 등 과학은 성립하지 않고 현대 문명 또한 성립하지 않습니다. 즉 우리가 엄청난 신뢰를 부여하는 과학에서조차 과학적 개념이 반드시 경험적 실체와 대응할 필요는 없다는 뜻입니다. 학부 공업수학(engineering mathematics)과 미분방정식을 아직도 기억하는 공학도라면 이 말이 뭔지 잘 이해합니다. 사람이라서 호불호를 느끼는 것은 어쩔 수 없지만, 그런 것에 휘둘려 심사했습니다. 여기 논쟁 사이트에서 자주 보던 짓, 꼰대 짓 했습니다.
이번 주부터 아래 <그림 5>와 같이 생긴 자료를 이용합니다. 이 자료는 국토교통부 실거래가공개시스템에 있는 서울 소재 아파트 거래가격(매매가=재고 아파트 가격) 전수(全數) 통계입니다.
<그림 5> R 자료 화면
매월 거래된 주택의 면적 및 거래가격을 한 조(組)로 해서 집계했습니다. <그림 5>에서 1열과 2열은 2006.1 통계이고 그 옆에 있는 3열과 4열은 2006.2 통계입니다. 일단 이 자료를 R에서 읽어 들인 후 매월 거래가격 컬럼에서 거래가격의 합계(=월간 거래금액), 거래 주택 가격들의 표준편차, 평균가격, 중위가격 등을 계산합니다. 그리고 이렇게 매월 통계로부터 산출한 월간 거래금액, 월별 표준편차 등등을 기술통계 분석한다든가 VAR모형에서 변수의 자료로 사용합니다.
이제 본론입니다. 진보적 시각에서 투기를 빼고 부동산을 논하는 것은 별 의미가 없습니다. 지금까지 투기요소 없이 모형분석을 했으니, 심사자 A(line 16-26)처럼 믿지 못하겠다는 반응은 이상할 것이 하나도 없는 비판입니다. 그러나 논문 투고자 입장에서는 없는 자료를 이용해 분석하라는 요구이니 청천벽력 같은 말입니다. 당시 느낌은 "이제 끝이구나"였습니다. 국내문헌 중에 투기요소를 명시적으로 고려해 작성한 시계열 주택가격 논문을 본 기억이 없습니다.
그래서 이렇게 생각해 보았습니다. 여러 사람들이 주택시장을 자주 투기장에 비유합니다. 투기를 위한 자금조달은 아래에서 보는 바와 같이 다양한 방식이 있습니다.
(1) 내구재 포함 소비지출과 저축의 축소를 통한 가계의 자금 조달
(2) 상업용 부동산, 토지, 금융상품(주식, 채권, 선물), 외환, 금 등에 대한 투자 축소, 기업의 연구개발 및 투자 축소와 결합된 가계 및 기업의 자기 자본 조달
(3) "보증금", 지인이나 금융기관을 통한 부채 등 신규 debt financing을 통한 자금 조달
(4)기존 부채 상환 자금의 상환유예와 전환을 통한 자금 조달
만약 주택가격이 갭 투자 등 다양한 투기적 요인으로부터 큰 영향을 받았다면, asset price의 bubble/bust 문헌에 나오는 3가지 주요지표 즉 가격의 변동폭(amplitude), 가격의 변동성(volatility), 거래물량 지수 간 긴밀한 상관관계를 보이면서 공행할 것입니다.
이들 3가지 지수는 국토교통부 실거래가시스템에서 쉽게 확인할 수 있는데, 아래와 같이 지수를 산출했습니다. 주택가격은 KB자료를 이용했으므로 주택가격 변수는 측정에서 제외했습니다.
(1) 거래물량 지수: 1달 동안 거래된 주택의 수(=월간 거래건수, count), 1달 동안 거래된 주택들의 매매가격 합계(=월간 거래금액, sales_vol)
(2) 변동성 지수: 1달 동안 거래된 주택들의 가격의 표준편차(주택가격 표준편차, std) 혹은 그 변동계수(coefficient of variation), 범위=1달 동안 거래된 주택가격들의 Q3 - 같은 달 거래된 주택가격들의 Q1(range 변수=IQR, interquartile range)
Note...자료는 2008.12부터 2022.4까지 161달의 관측치(n=161). volatility는 통상 interperiod variability를 의미하나 여기서는 intraperiod variability를 이용해 측정. Interperiod price volatility는 주택가격 1차 차분한 것.
[Reminder] 2008년 금융위기 이후 data generating process에 변화가 관측되었고, 통시모형의 경우 overparameterization(표본의 크기에 비해 지나치게 많은 회귀계수를 추정하면서 발생하는 문제) 문제가 심각. 이걸 해결하는 손쉬운 방법은 2009년 이후 자료만 따로 떼어서 분석하는 것. 오늘 분석이 바로 그것.
출처...<첨부 2>. 수직선 2개 사이는 문재인 정부시기. 각 시계열자료를 해당 자료의 평균으로 나누어 그림 하나에 그릴 수 있도록 함. 기간: 2008.11~ 2023.12.
<그림 6> 주요 투기장 지수
출처: <첨부 2> 맨 뒤. 계산공식은 월간 거래가격들의 평균 - 월간 거래가격들의 중위수. 평균가격-중위가격이 임기중 증가했다는 것은 비싼 주택의 비율이 증가했다는 말(우리 동네로 빌 게이츠가 이사 오면 중위소득은 변화가 거의 없어도 평균소득은 엄청나게 증가). 즉 과대 이상치가 더 자주 등장했다는 말. 물가상승률을 고려해도 문 정부 때는 정도가 심함. 여기 그림도 참고할 것.
<그림 7> 거래된 주택들의 월 평균가격과 중위가격간 차이(명목가격)
<그림 6>은 2009년 이후 주요 투기장 지수의 변화추이를 보여줍니다. 그림 하나에 여러 가지 지수를 함께 그릴 수 있도록 지수를 각각의 평균으로 나누었습니다(normalize). 그림에서 수직선 2개는 문재인 정부의 시작과 끝입니다. 이 그림에 따르면 박근혜 정부시기부터 투기장 지수들이 커지다가 문 정부 들어 시장가격의 변동성(inter-period variability)이 확대되고 가격도 지속적으로 상승하는 모습을 볼 수 있습니다. 그러다 임기 중후반을 넘으면서 월간 거래금액은 급격하게 하향추세를 보이고, 임기말로 가까워지면서 중위 가격은 하향 안정화됩니다. 그러다가 2022년 정권이 바뀌면서 거래가격이 급락하고 거래가격의 분포도 덜 분산적으로 변하는 모습을 보입니다. 특히 <그림 7>에서 보듯이 중위가격 - 평균 거래가격(양수)가 감소하는 모습은 극적입니다. 그림 하나하나 설명이 rationalize가 필요한데, 하는 데까지 해봅시다.
이들 두 그림은 전체적으로 매우 혼란스러운 투기장의 특징을 보여주는데, 마치 price bubble/bust 문헌에 나오는 거품 붕괴 후 시장이 안정을 찾아가는 모습을 연상시킵니다. 거품이 꺼지면 장기 가격추세로 복귀했던 역사적 경험과 유사한데, 2022년 정권교체와 더불어 서울 주택가격에서 평균회귀 현상을 관찰한 적이 있습니다.
지금까지 이용했던 모형에서는 투기장적 특성을 반영하는 변수가 없었습니다. 정권더미가 그 역할을 일부 담당했을 것으로 보이나 실제로 얼마나 충실히 반영했는지는 또 다른 문제입니다. 오늘은 맛보기로 투기장 지수 조합 가운데 아무거나 하나 선택해서 VAR모형에 반영하고 Moon 정권변수가 문재인 정부시기 주택가격에 미친 영향을 측정합니다.
내생변수(모두 명목가격): Price, Debt, 월별 거래금액 sales_vol, 매월 거래된 주택들의 가격의 표준편차 std
외생변수: Park, Moon, Pandemic
자료: Price는 KB자료, 투기장 지수는 국토부 실거래가 시스템 자료
기간: 2009.1 이후. 기간을 GFC 이후로 한정하는 것이 왜 통계적으로 타당한지 그 이유는
지난 주 <표 4>와 분석기간에 대한 논의 참고할 것.
<표 1> 그랜저 인과검증
-------------------------------------------------------------------------------------------------------------------
인과관계 p value 인과관계 p value
-------------------------------------------------------------------------------------------------------------------
Price --> 투기장 지수 0.00 Moon --> Price 0.00
투기장 지수 --> Price 0.01 Moon --> 투기장 지수 0.00
투기장 지수 --> Debt 0.18 Park --> 투기장 지수 0.22
Park --> Price 0.16
-------------------------------------------------------------------------------------------------------------------
주... X --> Y에서 X가 설명변수, Y가 반응변수, p value는 X가 Y를 얼마나 잘 설명하는지 보여주는 수치. '낮을수록' 설명을 잘 하는 것으로 해석. <첨부 3>에 R code 있음.
<첨부 3>에 모형 추정과정이 있습니다. 추정한 모형을 이용해 변수의 설명력을 검증한 결과가 <표 1>입니다. 예상대로 투기장 변수들이 집값을 잘 설명하고 집값도 투기장 지수를 잘 설명합니다(밑줄 친 숫자). 문재인 정권요인 Moon은 가격을 포함한 투기장 지수 3종의 Granger 원인변수입니다(빨간색 숫자). 그리고 Moon정권요인은 주택가격 상승에 결정적 기여를 했습니다. 보수정권인 Park에서는 출현하지 않는 현상입니다(표에서 파란색 숫자). 아래 수치를 참고하세요.
Moon 변수의 영향= 31.63 points(투기장 지수를 포함한 모형에서) (식1)
= 32.46 points(투기장 지수가 없는 모형에서)
<표 1>은 다음과 같이 여러 경로를 통해 투기장 지수가 통계적으로 유의하게 주택가격을 올리는경로의 존재를 시사합니다.
Moon 정권요인 --> (경로 1) 투기장 지수 자극 --> 주택가격 상승 --> ... (식2)
--> (경로 2) 가격 자극 --> 투기장 지수 자극 --> ...
--> (경로 3) 가계대출 자극 --> 투기장 지수 자극 --> ...
--> 여타 round-about 경로
아래 (식3)은 초기에 Moon정권더미가 +1로 주어졌을 때 제1기에 내생변수 y1이 얼마나 변하는지 보여줍니다. 편의상 VAR모형에 내생변수가 Price와 투기장 지수 변수 2가지만 있다고 합시다. 아래 식에서 b1은 Price regression에서 Moon변수의 회귀계수, b2는 투기장 지수 regression에서 Moon변수의 회귀계수입니다. Moon정권이 한 달 집권했을 때 Moon=+1로 주어지고 제1기에 그 충격이 y1=[b1,b2]'로 나타납니다. 그 다음 기에는 충격이 두 번째 줄 y2로 나타나고, 선형모형으로서 아래 수식과 같이 분해할 수 있고(mutually exclusive and collectively exhaustive), (식4) 마지막 항과 같이 초기 충격 b1, b2 가운데 투기장 지수의 충격 A1*[0, b2]'만 추적하면, 이 경로는 (식2)에서 첫 번째 경로를 밟아 문재인 정부요인 Moon이 투기장 지수를 자극해서 올린 집값만 분리해 측정할 수 있습니다. (식2)에서 나머지 경로를 생략하고 추정했으니 이 값은 투기장 변수가 미친 영향의 하한(lower bound)가 됩니다. 이 점을 염두에 두고 아래 수치를 읽읍시다.
출처...<첨부 3>, 그림에서 speculation indexes(투기장 지수)는 거래물량과 변동성 지수를 지칭. 아래 논의에서도 마찬가지
<그림 8> Moon=+1이 각 내생변수를 경유해 최종적으로 주택가격에 미치는 영향
<그림 8>은 문재인 정권이 1달 지속될 때마다 즉 최초 충격 Moon이 +1로 주어질 때마다 (식2) Price, Debt, 투기장 지수(거래물량, 월별 거래주택가격들의 표준편차, (식2)에서 경로 1) 등을 경우해 그 충격이 얼마나 주택가격 Price를 변하게 하는지 최초 충격후 경과월에 대해 그린 그림입니다. 그림에 따르면 Moon 정권변수는 첫 달에 집값을 0.26포인트 직접 상승시키고, 그 누적효과는 충분히 시간이 경과하면 최종적으로 0.53포인트가 됩니다(그림에서 sum). 가계대출을 통해서도 집값에 영향을 주는데 그림에 따르면 0.06포인트 하락시킵니다. 가장 관심의 대상인 지수인 투기장 지수 2가지를 경유해 미치는 영향은 +0.12포인트입니다. 이 값은 (식2)에서 경로 1을 통해 Moon이 Price에 미친 영향입니다. 다른 경로까지 고려하면 이보다 큰 비율이 됩니다.
요약하면, 문재인 정부가 1달 집권하면 주택가격이 0.53포인트 오르고 5년 동안 모두 0.53포인트/월*60월=31.6포인트 오릅니다. 이 가운데 최소 7.4포인트가 투기장 지수를 경유해 오른 집값입니다. 즉 Moon 정권요인 때문에 오른 집값이 협의로 정의한 투기장 지수를 통해서만도 최소 1/4(=7.4/31.4+alpha) 정도 된다는 말입니다.
바꾸어 말해, 문재인 정부 때 투기를 잡지 못해 집값이 오른 것이 아니고 문 정부요인이 투기를 직접 자극했고, 협의로 정의한 투기장 지수를 통해 오른 집값도 전체의 1/4이 될 만큼 작지 않았다는 말입니다. 진보측 인사들이 주장하는 인과론
Wrong: 투기 --> 집값 상승
은
Correct: 진보 정권요인 --> 투기 자극 --> 집값 상승
으로 고쳐 써야 합니다. 투기 때문에 집값이 높다는 진보의 기저인식에 반하는 관찰입니다. 노무현 정부는 실거래가격 자료가 없어 직접 확인이 불가능하지만, 확인가능한 진보정권으로서 문재인 정권에서 벌어진 일입니다. 문재인 정부에 관한 한, 진보는 실제 인과론을 왜곡했습니다.
투기라는 용어는 문재인 정부와 진보에서 애용하는 용어를 여기서 차용해서 그대로 쓰고 있는데, 그런 경제행위에 관여한 주체는 투기꾼이 됩니다. 아래는 거품, 투기와 관련된 용어의 정의입니다.
A bubble may be defined loosely as a sharp rise in price of an asset or a range of assets in a continuous process, with the initial rise generating expectations of further rises and attracting new buyers — generally speculators interested in profits from trading in the asset rather than its use of earning capacity. The rise is usually followed by a reversal of expectations and a sharp decline in price often resulting in financial crisis (Kindleberger, 1991).
문재인 정부와 진보의 부동산정책론은 역설적으로 투기판을 조장한 정권이고 논설이었습니다. 이후 논의에서 이 점을 반복해서 확인합니다.
정리합니다.
[정리 1] 지금까지 이혁주 모형에서 투기장 지수를 포함하지 않고 측정했지만 누락편향(omitted varable bias)이 발견되지 않는다. (식1)의 수치는 이전에 보던 값들과 비슷한 크기이다. 따라서 다음과 같은 논문 심사평은 정당한 문제 제기이나 타당하지 않다.
특히, 2020년경부터의 가격상승에 영향을 미치는 거시적 요인을 단지 ‘가계부채’만으로 설명하려는 시도는 다소 무리해 보입니다. 분석에 따르면(일반적으로 알려진 바와 동일하게) 해당 시기에는 강력한 주택담보대출 규제로 인해 주담대가 크게 증가하지 못한 반면, 보증금의 형태로 차입이 이루어지는 갭투자가 크게 성행했습니다. 설정하신 가계변수는 이러한 보증금을 잡아내지 못합니다. 출처: 심사자 A의 코멘트 line 16~20
[정리 2] 정권변수 Moon은 가격 포함 투기장 지수를 통계적으로 유의하게 자극했고, 가격 포함 3종의 투기장 지수는 통계적으로 유의한 상호작용을 했다.
[정리 3] 문재인 정부 때, 투기가 집값을 올리는데 기여하는 것은 맞지만, 투기를 자극한 것은 문재인 정권요인이었다. 뒤집어 얘기하면 원인변수 문 정권요인이 없었다면 이런 투기는 없었다는 얘기다. 보수정권인 Park정권에서는 투기를 조장했다는 유의한 통계적 증거가 관찰되지 않았다(투기를 조장했어도 약했다는 의미). 진보정권인 문재인 정부의 독특한 현상이다.
이상이 정부요인과 투기장 및 주택가격간 관계에 대한 1차 검토 결과입니다. 오늘은 특정 투기장 지수를 중심으로 알아보았지만, 다음 주에는 투기장 지수를 투기장 지수 일반으로 확대하고, 정부요인도 정권요인과 정책개입 빈도 변수로 모두 확대한 후 정부요인과 투기간 관계에 대해 알아봅니다.
특정 투기장 지수를 이용해 관측한 결과를 토대로 문재인 정부를 투기조장과 집값 인상의 주범(主犯)으로 몰 수는 없습니다. 마찬가지로 투기장 지수 하나에 근거해 김수현, 변창흠, 김상조, 김현미 씨를 그 설계자, 집행자로 단정할 수는 없습니다. 그렇게 되면 그 불명예는 고스란히 문재인 대통령에게 향합니다. 결국은 대장 책임이고 그게 대장의 숙명이라서 신중하게 진행해야 합니다. 평가 결과에 따라 못난이 대통령, 잘난 대통령이 됩니다. 이 기준에 이의가 있으면 말씀하세요. 이의 없으면 이대로 진행합니다.
이혁주 드림
남궁근. 행정조사방법론. 6판. 서울: 법문사.
Kindleberger, C.P. (1991). Bubbles. In: Eatwell, J., Milgate, M., Newman, P. (eds) The World of Economics. The New Palgrave. Palgrave Macmillan, London. https://doi.org/10.1007/978-1-349-21315-3_3
Montgomery, Douglas C. et al., 2015. Introduction to Time Series Analysis and Forecasting. Hobken, New Jersey: Wiley & Sons.
<첨부 1> 정권더미와 정부대책간 상관계수 그림 그리기
Ds=read.csv(file.choose(),header=T) #Price변수는 여기 자료에서 온 주택가격
attach(Ds)
t_rho=seq(11,62) # 노무현 정부 달
t_lee=seq(63,122) # 이명박 정부 달
t_park=seq(123,172) # 박근혜 정부 달
t_moon=seq(173,232) # 문재인 정부 달
rho=array(0,c(52)); for(n in 2:52){rho[n]=rho[n-1]+D_Rho[n+10]}
cor(rho,t_rho) # 상관계수 0.9385
lee=array(0,c(60)); for(n in 2:60){lee[n]=lee[n-1]+D_Lee[n+62]}
cor(lee,t_lee) # 상관계수 0.955
park=array(0,c(50)); for(n in 2:50){park[n]=park[n-1]+D_Park[n+122]}
cor(park,t_park) # 상관계수 0.976
moon=array(0,c(60)); for(n in 2:60){moon[n]=moon[n-1]+D_Moon[n+172]}
cor(moon,t_moon) # 0.986
# Adjust each series to start from the end value of the previous series
lee <- lee + rho[length(rho)]
park <- park + lee[length(lee)]
moon <- moon + park[length(park)]
# Combine the data
all_data <- c(rho, lee, park, moon)
# Create a time index
start_date <- as.Date("2003-10-01")
time_index <- seq(from = start_date, by = "month", length.out = length(all_data))
# Plot the data
plot(time_index, all_data, type = "l", xlab = 'Months elapsed since 2003.11', ylab = '정부대책 누적 발표 횟수')
# Add vertical lines to separate the series for clarity
abline(v = time_index[length(rho)], col = "red", lty = 2)
abline(v = time_index[length(rho) + length(lee)], col = "blue", lty = 2)
abline(v = time_index[length(rho) + length(lee) + length(park)], col = "green", lty = 2)
text(as.Date('2005-03-01'),11,'노무현, 0.94')
text(as.Date('2010-02-01'),21,'이명박, 0.96')
text(as.Date('2015-06-01'),38,'박근혜, 0.98')
text(as.Date('2020-08-01'),47,'문재인, 0.99') # <그림 1> 완성
<첨부 2> 투기장 지수의 descriptive statistics
temp=read.csv(file.choose(),header=T) # 투기지수 자료 내려받기. 자료는 월별로 아파트 면적(제곱미터), 아파트 거래가격(만원)이 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성.
2016.5-2017.4: 249-272
2017.5-2018.4: 273-296
2018.5-2019.4: 297-320
2019.5-2020.4: 321-344
2020.5-2021.4: 345-368
2021.5-2022.4: 369-392
2022.5-2023.4: 393-416
View(temp)
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12.
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
med=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
med[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
start_date=as.Date('2008-11-01')
time_index <- seq(from = start_date, by = "month", length.out =182) # 182 months from 2009.1 to 2022.4
plot(time_index,sales_vol/mean(sales_vol),typ='l',xlab='2008.11 이후 경과월',ylab='지수', lwd = 1.5,cex.lab=1.2)
lines(time_index,std/mean(std),type='l',col='red', lwd = 1.5)
lines(time_index,med/mean(med),type='l',col='blue', lwd = 1.5)
abline(v =as.Date('2017-05-01'), lty = 4) # 문재인 정부 시작 달
abline(v =as.Date('2022-04-01'), lty = 4) # 문재인 정부 마지막 달.
legend('topleft',legend = c('월별 거래금액','월별 거래주택가격들의 표준편차','월별 중위 실거래가'), col = c('black','red','blue'), lty = c(1,1,1), lwd = 1.5) # <그림 6> 완성
x=avg-med
plot(time_index,x,type='l',xlab='2008.11 이후 경과월',ylab='평균과 중위 가격간 차이', lwd = 1.2,cex.lab=1.2)
abline(v =as.Date('2017-05-01'), lty = 4) # 문재인 정부 시작 달
abline(v =as.Date('2022-04-01'), lty = 4) # 문재인 정부 마지막 달.
text(as.Date('2020-01-01'),2.2,'문재인 정부시기') # <그림 7> 완성
<첨부 3> VAR모형 추정
위에 이어서 아래 코드 실행.
# 161 entries starting from 2008.12
sales_vol = sales_vol[1:161]/mean(sales_vol[1:161]) # stationary. 그러나 1st difference해서 사용. fitting이 잘됨. level자료 쓰면 fitting이 전혀 안됨.
std = std[1:161]/mean(std[1:161]) #Nonstationary
## Price, Debt 등 내려받기.
Data=read.csv(file.choose(),header=T) # 읽어들이기. 여기서
View(Data)
attach(Data)
remove(Price,Debt,CD,Park,Moon,Pandemic) # Just in case
endo=cbind(Price[2:161],Debt[2:161],diff(sales_vol),diff(std)) # diff(std) starts from 2009.1. sales_vol first-differenced
colnames(endo)=c('Price','Debt','Sales_volume','St_dev')
exo=cbind(Park[2:161],Moon[2:161],Pandemic[2:161])
colnames(exo)=c('Park','Moon','Pandemic')
library(vars)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,0,0, 1,1,0,0, 1,1,1,1, # 투기장 지수 --> Price
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.0120
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # Price --> 투기장 지수
1,1,1,1, 1,1,1,1, 1,1,1,1,
0,1,1,1, 0,1,1,1, 1,1,1,1,
0,1,1,1, 0,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.00
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # 투기장 지수 --> Debt
1,1,0,0, 1,1,0,0, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.18
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,0,1, # Moon --> Price
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.000, 매우 유의
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # Moon --> 투기장 지수
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,0,1,
1,1,1,1, 1,1,1,1, 1,1,0,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.000, 매우 유의
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # Park --> 투기장 지수
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,0,1,1,
1,1,1,1, 1,1,1,1, 1,0,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.220
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # sales_vol --> std
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,0,1, 1,0,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.000, 매우 유의
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # std --> sales_vol
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,0, 1,1,1,0, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.10, insignificant
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
b1=array(c(Bcoef(model)[1,11],0,0,0),c(4,1)) # coef of Moon in the Price regression equation
y=array(0,c(4,30))
y[,1]=b1
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
ToPrice=array(0,c(15))
ToPrice[1]=y[1,1]
for(n in 2:15){ToPrice[n]=ToPrice[n-1]+y[1,n]}
b2=array(c(0,Bcoef(model)[2,11],0,0),c(4,1)) # coef of Moon in the Debt regression equation
y=array(0,c(4,30))
y[,1]=b2
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
ThruDebt=array(0,c(15))
ThruDebt[1]=y[1,1]
for(n in 2:15){ThruDebt[n]=ThruDebt[n-1]+y[1,n]}
b3=array(c(0,0,Bcoef(model)[3:4,11]),c(4,1)) # coef of Moon in the Sales_vol and St_dev regression equations
y=array(0,c(4,30))
y[,1]=b3
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
ThruSpec=sum(y[1,])
ThruSpec=array(0,c(15))
ThruSpec[1]=y[1,1]
for(n in 2:15){ThruSpec[n]=ThruSpec[n-1]+y[1,n]}
total=ToPrice+ThruDebt+ThruSpec
x=1:10
plot(x,total[1:10],type='b',xlab='Months elapsed',ylim=c(-0.1,0.6),ylab='Cumul. impact on Price in points')
lines(x,ToPrice[1:10],type='b',col='red')
lines(x,ThruDebt[1:10],type='b')
lines(x,ThruSpec[1:10],type='b',col='blue')
abline(h=0,lty='dotted')
text(5,0.55,'Sum')
text(5,0.4,'Via Price',col='red')
text(5,0.15,'Via Speculation indexes',col='blue')
text(5,-0.08,'Via Debt')
abline(h=0.5259,lty='dotted') # <그림 8> 완성
y=array(0,c(4,30))
y[,1]=Bcoef(model)[,11]
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,]) # total effect=0.52598 point/month = 31.559 points in 60 months
y[,1]=Bcoef(model)[,12]
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # 12.739 포인트=팬데믹의 영
<첨부 4> 정책발표 횟수 D(t)를 randomize했을 때
2024.6.10 토론문 <첨부 3> 이용
data=read.csv(file.choose(),header=T) #Price변수는 여기 자료에서 온 주택가격
attach(data)
library(vars)
library(dplyr)
remove(Moon,Moon_new,Pandemic,Price,Debt,D)
p_values=0
cor.coef=0
cumul.D=0
D=abs(SumD)
for(n in 1:10000){
# Generate 28 random numbers and sort them.
x <- sample(102:161, 28, replace = TRUE)
y <- sort(x)
# Replace the values in the time series D(t) according to the specified rules
previous_y <- 101 # Initialize previous_y to one less than the first possible value
for (i in 1:length(y)) {
current_y <- y[i]
# Set all values between previous_y and current_y to 0
if (current_y > previous_y + 1) {
D[(previous_y + 1):(current_y - 1)] <- 0
}
# Set the value at current_y to 1
D[current_y] <- 1
# Update previous_y
previous_y <- current_y
}
# Now, we have a new set of D's in the Moon govt. Proceed further.
D_Moon=D*Moon # Interaction term. This term adds slope to the base line at Figure 2(a).
D_Moon.1=lag(D_Moon,1)
D_Moon.2=lag(D_Moon,2)
D_Moon.1[1]=0
D_Moon.2[1:2]=0
endo=cbind(Price,Debt,D)
exo=cbind(Pandemic,D_Moon.1,D_Moon.2)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1, 1,1,1, 1, 1,0,0, # D*Moon --> Price
1,1,1, 1,1,1, 1, 1,1,1,
1,1,1, 1,1,1, 1, 1,1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_values[n]=1-pchisq(chi2,2)
t=1:60
cumul.D[1]=D[102]
for(m in 1:59){to=102+m
cumul.D[m+1]=sum(D[102:to])
}
cor.coef[n]=cor(t,cumul.D)
}
hist(p_values,xlab='p values',main='') # <그림 3>
hist(cor.coef,main='',xlab='correlation coefficients') # <그림 4>
김수현, 변창흠, 김상조 박사님 보시지요.
주택시장의 투기장 지수를 다양화하고 정부요인도 정권 및 정책요인으로 세분한 후, 집값의 정권/정책주기론과 문재인 정부의 투기조장 가설 등 2가지를 검정한다. 검정 결과, 두 가지 empirical statement 모두 성립하는 것으로 검토되었다. 즉 2009 이래 서울 집값의 변동 주기와 진폭은 진보/보수의 서로 다른 정부요인이 결정했다. 이 과정에서 문재인 정부시기 정부요인은 시장의 투기장적 특징을 강화하고, 이는 다시 집값 상승으로 연결되는 악순환이 반복되었다. 끝으로 이들 두 논설을 진보의 여타 허위 논설 및 유령명제의 편재(遍在) 현상과 결합하고 '진보의 허위 부동산정책론'을 수립한다.
내생변수...주택가격 지수, 가계대출, 투기장 지수 2종(모두 6조합) <-- 처음 등장한 변수
외생변수... Park,Moon,Pandemic, 기준정권=이명박 정부
기간...2009.1 이후 2022.4까지(GFC의 통제 및 투기장 지수 자료 구득 가능성)
(여기 사이트에서 거론한 여타 변수들까지 모두 포함한 모형은 나중에 민감도 분석 시행)
<표 1> 정권주기론과 문재인 정부의 투기조장론 검정
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
투기장 지수로 포함한 변수들 문정부
-------------------------------------------------------------------------------------------------- 정권 투기
count, count, count, sales_vol, sales_vol, sales_vol, 주기론의 조장론
std coef_var range std coef_var range 증거 의
모형 1 모형 2 모형 3 모형 4 모형 5 모형 6 증거
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
Impact on Price (points)
of Moon +31.76 +31.18 +32.06 +31.84 +31.31 +32.19 O(진폭)
of Pandemic +11.48 +7.33 +11.80 +11.50 +7.48 +11.80
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
*Moon --> Price 0.01 0.00 0.01 0.04 0.00 0.03 O(주기) O
*Moon --> Two specu- 0.05 0.10 0.04 0.01 0.03 0.01 O
* lation indexes (p value)
*Moon --> Three specu- 0.00 0.00 0.00 0.00 0.00 0.00 O
lation indexes (p value)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
주...count는 월간 거래건수, std는 1달 동안 거래된 주택들 가격의 표준편차, coef_var은 1달 동안 거래된 주택들 가격의 변동계수(=표준편차/평균, range는 1달 동안 거래된 주택들 가격의 interquartile range, sales_vol은 1달 동안 거래된 주택들 가격의 합. two speculation indexes는 표 제목 줄에 있는 6가지 조합 중 해당 조합. 출처는 <첨부 1>. 투기장 이외의 내생변수는 Price, Debt, 외생변수는 Park, Moon, Pandemic.
<표 1>은 지난 주 나열한 투기장 지수 조합 6가지 모두를 이용해(모형 1 ~ 모형 6) 정권주기론과 문 정부 투기조장론을 재검정한 결과입니다. 1행은 다양한 조합의 투기장 지수를 포함하고 Moon이 집값을 얼마나 올렸는지 측정한 결과입니다. 투기장 지수는 거래물량과 변동성에서 하나씩 선택해 모두 6가지(=거래물량 2종*변동성 3종)를 구성하고 측정했는데, 투기장 지수를 포함한 이번 모형에서도 Moon 변수는 문재인 정부 5년간 오른 집값의 80% 가까이 설명하고, 팬데믹 요인을 제하면 나머지 다 혹은 그 이상을 설명합니다. 다시 말해 문 정권요인을 제거하면 2009년 이래 주택가격 추세는 평탄화되고 2022.5 집값은 2009년 집값에 팬데믹 요인 기여분 정도로 주어졌을 것이고, 이는 2009년 이래 집값 주기에서 보는 가격 진폭은 정권요인이 만든 진폭이라는 의미입니다.
[읽기 예시] <표 1>에서 빨간색 숫자 +32.06은 투기장 지수로 count(월간 주택거래 건수)와 range(=어떤 달 거래금액들의 interquartile range)을 내생변수로 포함한 VAR모형에서 문재인 정부의 28회 시장개입의 결과 서울 집값이 KB지수 기준 32.06포인트 임기중 올랐다는 의미.
다음으로 정권주기론의 주기에 대해 살펴봅니다. <표 1>에서 제3행입니다. Moon 정권요인은 주택가격을 잘 설명합니다. 투기장적 성격을 주택시장의 주요 특성으로 보고, Moon 변수가 주택시장의 투기장 지수에 유의한 영향을 미쳤는지 검사해도 결과는 같습니다. 투기장 지수를 가격 Price로 하나로 구성하든, 2가지로 구성하든, 가격 포함 3가지로 구성하든 Moon 변수는 이들을 잘 설명합니다. 다시 말해 Moon이 2009년 이후 서울 집값의 주기(투기장적 특징 포함)를 결정했다는 말입니다.
<표 2> 변수 Park의 Price 및 투기장 지수 설명력 (p value)
----------------------------------------------------------------------------------------------------------------------------------------
투기장 지수로 포함한 변수들
--------------------------------------------------------------------------------------------------
count, count, count, sales_vol, sales_vol, sales_vol,
std coef_var range std coef_var range
모형 1 모형 2 모형 3 모형 4 모형 5 모형 6
----------------------------------------------------------------------------------------------------------------------------------------
Park --> Price 0.75 0.57 0.65 0.76 0.54 0.68
Park --> Two specu- 0.33 0.36 0.26 0.28 0.30 0.22
lation indexes
Park --> Three specu- 0.49 0.49 0.39 0.43 0.42 0.35
lation indexes
---------------------------------------------------------------------------------------------------------------------------------------
출처...<첨부 1>. Park 변수를 빼고 구한 VAR모형의 로그 우도가 Park변수를 포함하고 구한 VAR모형의 로그 우도와 별 차이가 없다는 의미. 이 경우 두 로그 우도간 차이가 적게 주어짐. 여기 그림에서 원점과 가까운 쪽 횡축 임의의 좌표에서 수직선을 그리고 오른쪽 면적을 계산하면 큰 값이 나옴.
이상 논의를 요약하면 2009년 이후 가격의 등락 주기는 진보/보수 정권주기로서 투기장 지수를 고려한 확장모형에서도 정권주기론이 성립합니다. 그런데 박근혜 정권 변수 Park은 집값 변동과 별 관계없습니다. <표 1>에서 *표가 붙어 있는 행을 박근혜 정부에 대해 구한 것이 <표 2>에 있습니다. 모두 유의하지 않습니다. 즉 투기장 지수와 집값을 자극한 것은 2009.1 이래 문 정부의 고유현상이라는 말입니다. 출처는 <첨부 1> 맨 뒤.
한편, <표 1> 맨 아래 3행에 따르면 Moon 변수는 Price 및 다양한 투기장 지수 조합 변동의 Granger 원인변수로서 모든 지수 조합에서 유의합니다. 문재인 정부시기 주택시장의 투기장적 특징은 문재인 정권요인이 영향을 미쳐 발생했다는 것으로서 Moon 변수 없이 투기장적 특징이 발현되지 않았을 것이라는 것을 의미합니다. 이는 문재인 정부가 투기를 조장하고 집값을 끌어 올렸다는 통계적 증거가 됩니다. 물론 박근혜 정부에서는 이런 일이 일어나지 않았습니다. <표 2>를 참고하세요. 그런데 이렇게 투기를 조장하고 올린 집값이 문재인 정부 때 오른 집값 38.3포인트 가운데 팬데믹 요인 빼고 오른 집값 모두 혹은 그 이상을 설명합니다. 이후 문 정부의 투기조장 가설의 타당성은 기존 문헌에 나오는 투기조장 기제의 대체기제로서 그 타당성을 여러 측면에서 기회가 될 때마다 추가 검토합니다.
내생변수...주택가격 지수, 가계대출, 정책개입 빈도, 투기장 지수 2종(모두 6조합)
외생변수... Pandemic, 기준정권=이명박 정부
변수 D(t) 회귀계수의 측정방식: 여기 그림에서 오른쪽 그림
기간...2009.1 이후 2022.4까지(GFC의 통제 및 투기장 지수 자료 구득 가능성)
<표 3> 정책주기론과 문재인 정부정책의 투기조장론 검정
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
투기장 지수로 포함한 변수 조합 문 정부
--------------------------------------------------------------------------------------------------- 정책 투기
count, count, count, sales_vol, sales_vol, sales_vol, 주기론 조장론
std coef_var range std coef_var range 의 의
모형 1 모형 2 모형 3 모형 4 모형 5 모형 6 증거 증거
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
Impact on Price (points)
(1) of Moon +25.18 +25.00 +24.10 +23.45 +23.03 +22.80 O(진폭)
(2) of Pandemic +18.03 +14.25 +18.16 +18.18 +14.71 +18.28
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
(3) D --> Price 0.01 0.00 0.01 0.03 0.01 0.03 O(주기) O
(4) D -> Two speculation 0.07 0.01 0.44 0.03 0.00 0.25 O
indexes (p value)
(5) D --> Three speculation 0.00 0.00 0.00 0.00 0.00 0.01 O
indexes (p value)
(6) 2 speculation indexes 0.12 0.17 0.32 0.06 0.05 0.19
--> D (p value)
(7) 3 speculation indexes 0.23 0.25 0.48 0.14 0.11 0.33#
--> D (p value)
(8) 2 speculation indexes 0.00 0.00 0.00 0.00 0.00 0.00 O
--> Price (p value)
(9) Price --> 2 speculation 0.00 0.00 0.00 0.00 0.00 0.00 O
indexes (p value)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
주...count는 월간 거래건수, std는 1달 동안 거래된 주택들 가격의 표준편차, coef_var은 1달 동안 거래된 주택들 가격의 변동계수(=표준편차/평균, range는 1달 동안 거래된 주택들 가격의 interquartile range, sales_vol은 1달 동안 거래된 주택들 가격의 합. two speculation indexes는 표 제목 줄에 있는 6가지 조합 중 해당 조합. 이외의 내생변수는 Price, Debt, 외생변수는 Pandemic. 출처는 <첨부 2>.
<표 3>은 Moon 대신 정책개입 빈도 변수 D를 다른 투기장 지수와 함께 모형에 포함하고 측정한 결과입니다. <표 1>과 차이가 없습니다. 2009년 이후 서울 집값 주기는 보수/진보의 상이한 정책이 낳은 집값 주기였고(제1,3행), 이런 집값 주기의 진폭은 실제 집값 진폭과 비슷하고 팬데믹 요인 제외시 일치합니다. 문재인 정부 때 보았던 시장의 혼란스러운 투기장적 모습은 문재인 정부의 부동산정책의 산물이었고(제4,5행), 투기장 지수들은 한 방향으로 공행하는 모습이 뚜렸했습니다(제7,8행). 2022년 정권교체는 이러한 정책의 전반적 변화를 의미했고, 이는 곧 변동기제의 구조적 전환으로 귀결되어 주택가격은 평균회귀하면서 급락했습니다.
[읽기 예시] <표 3>에서 초록색 숫자 0.44의 의미. 투기장 지수 count와 range를 내생변수로 포함한 VAR모형에서 D --> (count,range) 인과검정의 p value가 0.44라는 의미. 즉 변수 D는 변수군(群) (count, range)를 유의하게 설명하지 못한다는 말.
[읽기 예시] <표 3> 오른쪽 끝에 있는 숫자 0.33#의 의미. 투기장 지수 Price, sales_vol, range를 내생변수로 포함한 VAR모형에서 (Price, sales_vol, range) --> D 그랜저 인과검정의 p value. 즉 변수군(群) (Price, count, range)는 정책개입 빈도 변수 D의 유의한 설명변수가 아니라는 말.
주...Sig. 유의, Insig. 비유의
<그림 1> 정부와 시장의 상호작용
문 정부 정책개입 --> Significant (+) effect
-->투기장적 특징 강화
보수정부의 정책개입 --> Significant (-) effect
--> 투기장적 특징 약화
<표 3>을 그림으로 그리면 <그림 1>과 같습니다. 그림에서 보수/진보 정책이 그간 집값 사이클에 영향을 미쳤다는 점을 명확히 보여줍니다(정책주기론). 문 정부 때는 D(t)=+1로서 집값이 오르고 거래물량과 변동성 전반의 투기장적 특성이 커지고, 이렇게 내부 증폭된 투기장의 모습이 다시 주택가격을 끌어올리는 과정이 28회 반복되었습니다. 보수정부 때는 D(t)=-1로서 집값이 떨어지고 거래물량과 변동성 전반의 투기장적 특징이 줄어들고, 이런 특징이 다시 주택가격을 안정화로 연결되었습니다(여기서 D(t)에 값을 어떻게 부여하느냐는 중요하지 않음).
[문 정부 투기조장+정책주기론] 문재인 정부시기 주택가격 상승의 주요기제는 정책개입에 의한 투기조장이었고, 그렇게 오른 주택가격은 문 정부 시기 오른 집값의 80% 이상, 팬데믹 요인 제외 상승한 집값의 모두 혹은 그 이상을 설명한다.
이제 주택가격의 정권/정책주기론과 문 정부의 투기조장-집값 인상 기제를 결합하여 아래와 같이 기술할 수 있습니다.
[2009.1~2022.5까지 서울 집값] GFC 이후 서울 주택가격 변동은 상이한 성격의 보수/진보 정권과 정책이 생성한 가격사이클로서, 문재인 정부의 정책개입은 시장의 투기요소 자극을 통해 가격사이클의 주기와 진폭을 결정했다. 2009.1 ~2022.5 기간 장기 추세가격 상승은 정부의 주택시장 투기조장과 결합해 이해할 필요가 있다.
여기 주택논생 사이트 개설 이래 지금까지 있었던 논의를 토대로 '진보의 부동산정책론=허위'라고 요약하겠습니다. 진보의 부동산정책론은 유령명제로서 비었고(虛) 사실관계에 배치(背馳)되어 거짓(僞)입니다. 즉 "진실이 아닌 것을 진실인 것처럼 꾸민 것"으로서 이를 표준국어대사전은 허위(虛僞)라고 부릅니다.
근거 1: 유령명제 (지금까지 여기서 거론한 인사 모두에게서) --> 虛
근거 2: 과잉유동성 원인론, 집값의 경기적 주기론, 진보 불운/보수 행운론, 여타 잡설(雜說) X --> 僞
vs.
집값의 진보/보수 정권/정책주기론 O (정권주기론은 노무현 정부 이래, 정책주기론은 2009.1 이래)
근거 3: 투기원인론 X vs. 문 정부의 투기조장론 O --> 僞
근거 4: 주택가격의 80%나 되는 피구세 --> 진보의 諸논설 설명 불능 --> 虛
이 가운데 높은 집값의 투기원인론은 진보의 토대적 시각입니다. 공급이 아니고 수요가 문제라는 것이고 이걸 투기라는 말로 자주 연결해 집값을 이해합니다. 금리, 과잉유동성, 대출 등 금융요인. 김경민 박사가 한 매체에서 소득 증가 때문이라고 했던 것은 benign version입니다. 앞으로 '진보의 허위 부동산정책론'이라고 부르겠습니다. 허위는 다른 말로 쓰레기인데 쓰레기 중에 쓸 만한 것이 아무리 많아도 재활용하기 전까지 쓰레기는 쓰레기입니다. 마피아가 타는 람보기니는 범죄의 도구가 되기도 합니다. 이준구(2023), 김수현(2023)에 아직 거론하지 않은 "여타 잡설(雜說)"이 있습니다. 진보 성향의 신문 논설을 뒤져도 고구마 줄기처럼 나올 것 같습니다. 나중에 시간 되면 추가합니다.
[용어] 정책학의 의사결정 모형 중에 쓰레기통 모형(garbage can model)이라고 있습니다.
Human...Explain the garbage can model of Cohen, March and Olsen.
Perplexity...대답
맥락은 다르지만 선택환경의 anarchy, chaotic situation, 선택과정에서 nonrationality, randomness, 결과의 inconsistency, unpredictability 등은 비슷합니다. 지금 진보한테 필요한 것은 철저한 자기 파괴입니다.
지난 몇 주간 논의를 아래와 같이 정리합니다.
문재인 정부는 '진보정부 투기조장론' 및 '진보의 허위 부동산정책론'이라는 경험명제를 실증했던 정권이다.
김수현, 김상조, 변창흠 박사님은 반론하세요.
이혁주 드림
<첨부 1> 정권더미 Moon과 투기장 지수를 포함한 모형
library(moments)
library(vars)
temp=read.csv(file.choose(),header=T) # 투기지수 자료 내려받기. 자료는 매월 (아파트 면적, 아파트 거래가격)가 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성. )
View(temp)
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
median=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
median[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
# # 1st differencing the data. The original series are not stationary.
count=diff(count) /1e3
sales_vol=diff(sales_vol) /1e8
std=diff(std)/1e4
range=diff(range)/1e4
# # 161 entries starting from 2018.12
count = count[1:161]
sales_vol = sales_vol[1:161]
std = std[1:161]
coef_var=coef_var[1:161]
range=range[1:161]
Data=read.csv(file.choose(),header=T) # 자료 내려받기. 여기서
View(Data)
attach(Data)
endo=cbind(Price,Debt)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1, 1,1, 1,1,0,1, # Moon-->Price
1,1, 1,1, 1,1,1,1),nrow=2,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.00
x1=cbind(count,std)
x2=cbind(count,coef_var)
x3=cbind(count,range)
x4=cbind(sales_vol,std)
x5=cbind(sales_vol,coef_var)
x6=cbind(sales_vol,range)
exo=cbind(Park,Moon,Pandemic)
cumul=array(0,c(4,6))
Parks=array(0,c(3,6))
impactbyMoon=array(0,c(4,6))
impactbyPan=0
for(n in 1:6){if(n==1){endo=cbind(Price,Debt,x1)}
else if(n==2){endo=cbind(Price,Debt,x2)}
else if(n==3){endo=cbind(Price,Debt,x3)}
else if(n==4){endo=cbind(Price,Debt,x4)}
else if(n==5){endo=cbind(Price,Debt,x5)}
else {endo=cbind(Price,Debt,x6)}
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
b=Bcoef(model)[,11] # coefficients of Moon
y=array(0,c(4,30))
y[,1]=b # Effects of Moon=+1 on the endogenous variables
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[1,n]=sum(y[1,])*60
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
MoontoTwo=matrix(c(1,1,1,1, 1,1,1,1, 1,1,0,1, # Moon-->Price
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=MoontoTwo)
chi2=2*(logLik(model)-logLik(R_model))
cumul[2,n]=1-pchisq(chi2,1)
ParktoPrice=matrix(c(1,1,1,1, 1,1,1,1, 1,0,1,1, # Park-->Price
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=ParktoPrice)
chi2=2*(logLik(model)-logLik(R_model))
Parks[1,n]=1-pchisq(chi2,1)
MoontoTwo=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # Moon-->투기장 지수 2종
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,0,1,
1,1,1,1, 1,1,1,1, 1,1,0,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=MoontoTwo)
chi2=2*(logLik(model)-logLik(R_model))
cumul[3,n]=1-pchisq(chi2,2)
ParktoTwo=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # Park -->투기장 지수 2종
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,0,1,1,
1,1,1,1, 1,1,1,1, 1,0,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=ParktoTwo)
chi2=2*(logLik(model)-logLik(R_model))
Parks[2,n]=1-pchisq(chi2,2)
MoontoThree=matrix(c(1,1,1,1, 1,1,1,1, 1,1,0,1, # Moon-->투기장 지수 3종
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,0,1,
1,1,1,1, 1,1,1,1, 1,1,0,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=MoontoThree)
chi2=2*(logLik(model)-logLik(R_model))
cumul[4,n]=1-pchisq(chi2,3)
ParktoThree=matrix(c(1,1,1,1, 1,1,1,1, 1,0,1,1, # Park-->투기장 지수 3종
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,0,1,1,
1,1,1,1, 1,1,1,1, 1,0,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=ParktoThree)
chi2=2*(logLik(model)-logLik(R_model))
Parks[3,n]=1-pchisq(chi2,3)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
b=Bcoef(model)[,11]
y=array(0,c(4,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(i in 3:30){y[,i]=A1%*%y[,i-1]+A2%*%y[,i-2]}
for(j in 1:4){impactbyMoon[j,n]=sum(y[j,])}*60
b=Bcoef(model)[,12]
y=array(0,c(4,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(i in 3:30){y[,i]=A1%*%y[,i-1]+A2%*%y[,i-2]}
impactbyPan[n]=sum(y[1,])*26
}
round(cumul,2) # <표 1>
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 31.76 34.85 32.06 31.84 34.87 32.19 <- Impact of Moon on Price
[2,] 0.01 0.00 0.01 0.04 0.00 0.03 <-p value, Moon to Price
[3,] 0.05 0.10 0.04 0.01 0.03 0.01 <-p value, Moon to two speculation indexes
[4,] 0.00 0.00 0.00 0.00 0.00 0.00 <-p value, Moon to three speculation indexes
round(impactbyPan,2)
[1] 11.48 7.33 11.80 11.50 7.48 11.80 # 임기중 팬데믹 때문에 오른 집값
round(Parks,2)
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 0.75 0.57 0.65 0.76 0.54 0.68
[2,] 0.33 0.36 0.26 0.28 0.30 0.22
[3,] 0.49 0.49 0.39 0.43 0.42 0.35 # <표 2>
<첨부 2> 정책더미 D와 투기장 지수를 포함한 모형
remove(Price,Debt,SumD,Pandemic) # Just in case. An error message could pop up. Ignore it.
endo=cbind(Price,Debt,SumD)
exo=cbind(Pandemic)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
y=array(0,c(3,30))
y[,1]=array(c(0,0,1), c(3,1)) # 정부대책 +1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
sum(y[1,])*28 # 24.43 points
C=matrix(c(1,1,0, 1,1,0, 1,1, # D-->Price
1,1,1, 1,1,1, 1,1,
1,1,1, 1,1,1, 1,1),nrow=3,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.00
exo=cbind(Pandemic)
x1=cbind(count,std)
x2=cbind(count,coef_var)
x3=cbind(count,range)
x4=cbind(sales_vol,std)
x5=cbind(sales_vol,coef_var)
x6=cbind(sales_vol,range)
cumul=array(0,c(8,6))
impact=0
for(n in 1:6){
if(n==1){endo=cbind(Price,Debt,SumD,x1)}
else if(n==2){endo=cbind(Price,Debt,SumD,x2)}
else if(n==3){endo=cbind(Price,Debt,SumD,x3)}
else if(n==4){endo=cbind(Price,Debt,SumD,x4)}
else if(n==5){endo=cbind(Price,Debt,SumD,x5)}
else {endo=cbind(Price,Debt,SumD,x6)}
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:5]
A2=Bcoef(model)[,6:10]
y=array(0,c(5,30))
y[,1]=array(c(0,0,1,0,0), c(5,1)) # 정부대책 +1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[1,n]=sum(y[1,])*28
DtoPrice=matrix(c(1,1,0,1,1, 1,1,0,1,1, 1,1, # D-->Price
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
DtoTwo=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1, # D-->투기장 지수 2종
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,0,1,1, 1,1,0,1,1, 1,1,
1,1,0,1,1, 1,1,0,1,1, 1,1),nrow=5,byrow=TRUE)
DtoThree=matrix(c(1,1,0,1,1, 1,1,0,1,1, 1,1, # D-->투기장 지수 3종
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,0,1,1, 1,1,0,1,1, 1,1,
1,1,0,1,1, 1,1,0,1,1, 1,1),nrow=5,byrow=TRUE)
TwotoD=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1, # 투기장 지수 2종->D
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,0,0, 1,1,1,0,0, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
ThreetoD=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1, # 투기장 지수 3종 -> D
1,1,1,1,1, 1,1,1,1,1, 1,1,
0,1,1,0,0, 0,1,1,0,0, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
TwotoPrice=matrix(c(1,1,1,0,0, 1,1,1,0,0, 1,1, # 2 speculation indexes --> Price
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
PricetoTwo=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1, # 2 speculation indexes --> Price
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
0,1,1,1,1, 0,1,1,1,1, 1,1,
0,1,1,1,1, 0,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=DtoPrice)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[2,n]=p_value
R_model=restrict(model,method='manual',resmat=DtoTwo)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[3,n]=p_value
R_model=restrict(model,method='manual',resmat=DtoThree)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,6)
cumul[4,n]=p_value
R_model=restrict(model,method='manual',resmat=TwotoD)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[5,n]=p_value
R_model=restrict(model,method='manual',resmat=ThreetoD)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,6)
cumul[6,n]=p_value
R_model=restrict(model,method='manual',resmat=TwotoPrice)
chi2=2*(logLik(model)-logLik(R_model))
cumul[7,n]=1-pchisq(chi2,4)
R_model=restrict(model,method='manual',resmat=PricetoTwo)
chi2=2*(logLik(model)-logLik(R_model))
cumul[8,n]=1-pchisq(chi2,4)
A1=Bcoef(model)[,1:5]
A2=Bcoef(model)[,6:10]
b=Bcoef(model)[,12]
y=array(0,c(5,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(i in 3:30){y[,i]=A1%*%y[,i-1]+A2%*%y[,i-2]}
impact[n]=sum(y[1,])*26
}
round(cumul,2) # <표 2> 완성
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 25.18 26.37 24.10 23.45 24.03 22.80
[2,] 0.01 0.00 0.01 0.03 0.01 0.03
[3,] 0.07 0.16 0.44 0.03 0.10 0.25
[4,] 0.00 0.00 0.00 0.00 0.00 0.01
[5,] 0.12 0.14 0.32 0.06 0.05 0.19
[6,] 0.23 0.25 0.48 0.14 0.11 0.33
[7,] 0.00 0.00 0.00 0.00 0.00 0.00
[8,] 0.00 0.01 0.01 0.00 0.00 0.00
round(impact,1)
[1] 18.0 14.3 18.2 18.2 14.7 18.3
<첨부 3> Debt 관련 분석(참고용)
x1=cbind(count,std)
x2=cbind(count,coef_var)
x3=cbind(count,range)
x4=cbind(sales_vol,std)
x5=cbind(sales_vol,coef_var)
x6=cbind(sales_vol,range)
exo=cbind(Park,Moon,Pandemic)
p_MoontoDebt=0
p_SpectoDebt=0
p_DebttoSpec=0
p_2toPrice=0
for(n in 1:6){if(n==1){endo=cbind(Price,Debt,x1)}
else if(n==2){endo=cbind(Price,Debt,x2)}
else if(n==3){endo=cbind(Price,Debt,x3)}
else if(n==4){endo=cbind(Price,Debt,x4)}
else if(n==5){endo=cbind(Price,Debt,x5)}
else {endo=cbind(Price,Debt,x6)}
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # Moon-->Debt
1,1,1,1, 1,1,1,1, 1,1,0,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_MoontoDebt[n]=1-pchisq(chi2,1)
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # speculation indexes -->Debt
1,1,0,0, 1,1,0,0, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_SpectoDebt[n]=1-pchisq(chi2,4)
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # speculation indexes -->Debt
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,0,1,1, 1,0,1,1, 1,1,1,1,
1,0,1,1, 1,0,1,1, 1,1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_DebttoSpec[n]=1-pchisq(chi2,4)
}
round(p_MoontoDebt,3)
round(p_DebttoSpec,3)
round(p_SpectoDebt,3)
exo=cbind(Pandemic)
p_DtoDebt=0
p_SpectoDebt=0
p_DebttoSpec=0
for(n in 1:6){if(n==1){endo=cbind(Price,Debt,SumD,x1)}
else if(n==2){endo=cbind(Price,Debt,SumD,x2)}
else if(n==3){endo=cbind(Price,Debt,SumD,x3)}
else if(n==4){endo=cbind(Price,Debt,SumD,x4)}
else if(n==5){endo=cbind(Price,Debt,SumD,x5)}
else {endo=cbind(Price,Debt,SumD,x6)}
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1, # D -->Debt
1,1,0,1,1, 1,1,0,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_DtoDebt[n]=1-pchisq(chi2,2)
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1, # speculation indexes -->Debt
1,1,1,0,0, 1,1,1,0,0, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_SpectoDebt[n]=1-pchisq(chi2,4)
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1, # Debt to speculation indexes
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,0,1,1,1, 1,0,1,1,1, 1,1,
1,0,1,1,1, 1,0,1,1,1, 1,1),nrow=5,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_DebttoSpec[n]=1-pchisq(chi2,4)
}
round(p_DtoDebt,3)
round(p_SpectoDebt,3)
round(p_DebttoSpec,3)
김수현, 김상조, 변창흠 박사님께
지난 월요일 '문재인 정부의 투기조장론'을 수립했고, 이 논설과 다른 논설을 결합해서 '허위 진보부동산정책론'이라고 불렀습니다.
허위 진보 부동산정책론 = 유령명제(=무측정)
+ 여러 가지 허위 논설(과잉유동성 원인론, 경기적 주기론, 진보 불운/보수 행운론,
투기원인론, 정책신뢰 상실론)
+ 문재인 정부의 투기조장론
+ 집값의 80%에 달하는 피구세의 존재는 진보의 어떤 논리로도 정당화 불가능
이를 토대로 문재인 정부는 '진보의 투기조장론'과 '허위 진보 부동산정책론'을 실증한 정권이라고 했습니다.
높은 집값이 투기 때문이라는 진보의 투기원인론이 문재인 정부의 투기조장론에 의해 부정되었다는 것은 진보의 토대적 시각의 타당성이 부정되었다는 것을 의미합니다. 왜냐하면 투기원인론에 기초해 설계한 투기억제책이 실패해서 효과를 보지 못할 수는 있어도, 그런 억제책이 투기를 부추기는 정반대의 효과를 낳는 일은 있을 수 없기 때문입니다.
설계: 투기억제책 --> 투기 down --> 집값 down
실제 작동: 투기억제책 --> 투기 up --> 집값/변동성 up
주...avg는 월간 거래금액 총액의 정권별 평균, sd는 그 표준편차. <첨부 1>
<그림 1> 월간 총거래금액
주...avg는 정권별 평균. <첨부 1>
<그림 2> 월간 거래주택 가격들의 표준편차
투기조장론은 문재인 정부 시기 대표적 투기장 지수의 혼란스러운 패턴 때문에 검지된 사실입니다.
<그림 1>, <그림 2>에 따르면, 문재인 정부는 이전 보수정부와 많이 다릅니다. 빚내서 집사라고 부추겼다고 비난 받았던 박근혜 정부와 비교해도 정도가 심합니다. 크기도 크기지만(avg), 각 지수의 시계열적 inter-, intra-period 변동성이 이명박, 박근혜 정부 어디보다 심합니다. <그림 1>에서 문재인 정부 때 월간 거래금액 총액 60개의 평균 avg와 그 표준편차 sd(inter-period 변동성=between-month)는 박근혜 정부보다 모두 큽니다. <그림 2>에서 보듯이 1달 동안 거래된 주택들 가격 사이의 차이(within-month 변동성)는 더 극적이고 2022년 윤석열 정부가 들어서면서 거래가격간 차이는 붕괴 수준으로 감소합니다.
문재인 정부 전후반기 투기장 지수별 변동패턴이 일정하지 않습니다. <그림 1>에서 거래물량은 2020.6까지 심하게 등락하다 이후 급하게 치솟았던 것에 비례해 급격하게 떨어집니다. 이때 거래건수 count도 비슷하게 임기가 끝날 때까지 급락합니다(첨부한 자료에서 확인 가능). 그러나 <그림 2>에서 보듯이 비슷한 시기 거래된 주택들의 가격간 차이(표준편차 sd)는 임기말까지 빠르게 상승합니다. 임기말이 가까워지면서 거래는 줄었지만 가격 양극화가 더 진행되는 상태에서 어느 때보다 가격 평균이 높은 주택들이 거래되었다는 말입니다.
거래물량과 변동성의 증가는 price bubble/bust에 관한 역사적 기록과 이론 문헌에서 중시되는 지표입니다(e.g., Kindleberger and Aliber, R., 2017; Hong and Stein, 2007). 보수/진보정부 사이에 이들 지표간 차이가 비교적 잘 드러나지만, 문재인 정부내로 시야를 좁히면, 투기장 지수별 변화가 어떤 것은 계속 강화되지만(Price+변동성 지수), 어떤 것은 증감 패턴을 보이는 등(거래물량 지수 sales_vol, count) 지수별로 일정하지 않습니다. 문재인 정부시기를 잘 이해하려면 투기장의 모습을 여러 각도에서 파악하는 종합적 시각이 필요해 보입니다. 그럼에도 불변인 것은 문재인 정부요인(Moon 및 정책개입 빈도)은 이런 혼란의 기저요인으로 작용했다는 것입니다(통계적 유의+영향의 크기 양측면에서).
이렇게 문재인 정부에서는 자산가격, 거래물량, 변동성 등 투기장의 주요 지표가 보수정부와 차이가 분명했으며, 이들 특징이 정부정책에 의해 추동되고 주택가격의 변동주기와 진폭을 좌우했습니다. 이 그림과 이 그림에서 보듯이. 그리고 이런 평가는 여기 표에서 보듯이 통계검정을 거치고...
따라서 다음과 같이 말할 수 있었습니다.
문재인 정부는 투기를 조장하고 집값을 끌어 올렸으며(투기 조장/집값 인상), 그 확장으로서 진보의 허위 부동산정책론이라는 경험명제를 실증했다.
반론하시지요. 잘못된 것을 틈 날 때 하나씩 제거하지 않으면, 한꺼번에 그 모순이 폭발합니다.
이혁주 드림
Hong, H. and Stein, J.C., 2007. “Disagreement and the Stock Market”, Journal of Economic Perspective, 21(2): 109-128.
Kindleberger, C. and Aliber, R., 2017. Manias, Panics, and Crashes: A History of Financial Crises. London: Palgrave Macmillan UK.
<첨부 1> 그림 그리기
temp=read.csv(file.choose(),header=T) # 투기지수 자료 내려받기. 자료는 월별로 아파트 면적(제곱미터), 아파트 거래가격(만원)이 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성.
View(temp)
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12.
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
med=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
med[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
start_date=as.Date('2008-11-01')
time_index <- seq(from = start_date, by = "month", length.out =182)
plot(time_index,sales_vol/1e8,typ='l',xlab='',ylab='조원/월', lwd = 1.5,cex.lab=1.2)
abline(v=as.Date('2013-03-01'),lty='dotted')
abline(v=as.Date('2017-05-01'),lty='dotted')
abline(v=as.Date('2022-05-01'),lty='dotted')
text(as.Date('2015-02-01'),8,'박근혜',cex=1.3)
text(as.Date('2019-07-01'),12,'문재인',cex=1.3)
Park_months=which(time_index >=as.Date('2013-03-01') & time_index <= as.Date('2017-05-01'))
avg_Park <- mean(sales_vol[Park_months] / 1e8)
Moon_months=which(time_index >=as.Date('2017-05-01') & time_index <= as.Date('2022-04-01'))
avg_Moon <- mean(sales_vol[Moon_months] / 1e8)
text(as.Date('2015-01-01'),avg_Park,'--------- avg', col='red')
text(as.Date('2020-01-01'),avg_Moon,'------------ avg', col='red')
sd_Park=sd(sales_vol[Park_months] / 1e8)
sd_Moon=sd(sales_vol[Moon_months] / 1e8)
text(as.Date('2020-01-01'),avg_Moon+sd_Moon,'------- avg+sd', col='red')
text(as.Date('2015-05-01'),avg_Park+sd_Park,'------- avg+sd', col='red') # <그림 1> 완성
plot(time_index,std/1e4,typ='l',xlab='2008.11 이후 경과월',ylab='억원/월', lwd = 1.5,cex.lab=1.2)
abline(v=as.Date('2013-03-01'),lty='dotted')
abline(v=as.Date('2017-05-01'),lty='dotted')
abline(v=as.Date('2022-05-01'),lty='dotted')
text(as.Date('2015-02-01'),6,'박근혜',cex=1.3)
text(as.Date('2019-05-01'),8,'문재인',cex=1.3)
avg_Park <- median(std[Park_months] / 1e4)
avg_Moon <- mean(std[Moon_months] / 1e4)
text(as.Date('2015-01-01'),avg_Park,'--------- avg', col='red')
text(as.Date('2020-01-01'),avg_Moon,'------------ avg', col='red') # <그림 2> 완성
김수현, 김상조, 변창흠 박사님께
분석 결과가 충격적입니다. 충격적인 만큼 투기조장론과 집값의 정권/정책 주기론을 더 검증합니다. 기본적으로 주택시장의 투기장적 특징을 반영한 모형에서도 이 두 명제의 타당성이 계속 성립하는지 확인하고자 합니다. 이후 보완 논의를 통해 '투기조장'이라는 표현의 적절성등 관련 이슈를 계속 따집니다. 우선 하나 분명히 하면 문재인 정부는 당시 가격변동과 시장참여자의 행동을 '투기'라는 용어를 이용해 특징지웠습니다. 여기서도 이 용어를 inherit합니다. 다시 강조합니다. inherit합니다.
문재인 정부 때 거래물량과 변동성 등 투기장 지수 2종을 경유해 오른 집값은 Moon 정권요인 때문에 오른 집값의 최소 1/4 정도나 될 만큼 정부의 투기조장은 집값 상승의 중요기제였습니다(2024.7.8 토론문 6절). 투기장 지수를 주택가격까지 확장하면 팬데믹 요인을 제하고 오른 집값 모두 투기장 지수의 확대를 통한 상승입니다. 즉 투기적 가격상승 과정에 의하지 않고 당시 집값 상승을 설명하기 어렵다는 말입니다. 김수현(2023), 이준구(2023)에서 언급하듯이, "정책신뢰 상실", 경기적 집값 주기 같은 논설은 투기 때문에 집값이 오른 것을 전제로 한 것인데, 그 투기가 실은 문 정부가 투기를 '직접' 조장하고 집값을 끌어올렸다는 것이 분석결과입니다. '직접'이라는 말은 정부요인의 변화가 1st round effect로서 주택가격과 투기장 지수의 확대를 유발했고 그것이 통계적으로 유의했다는 말입니다. 그 크기가 집값 상승의 상당 부분을 설명했다는 것은 덤입니다. 이후 2nd and higher order로 미치는 영향은 다방정식 시계열 모형의 구조상 당연히 따르는 것이고요. 그런 연쇄과정의 끝을 보니 당시 오른 집값이 팬데믹 요인 제외시 모두였다는 것이고요.
그리고 이런 결론은 지금까지 상상 가능한 거의 모든 경우의 수를 검토하고 얻은 결과입니다. 아래는 지금까지 수행한 robustness check 목록입니다.
[검토사항 목록]
정부요인을 정책요인으로 파악하든 정권요인으로 파악하든 성립
투기장 요인의 조합을 6가지 가운데 어떤 것을 사용해도 성립
과잉유동성, 팬데믹 변수도 포함해 검토
다른 해외요인들은 저인망으로 훑었지만 발견하지 못했음. 이자율은 그 자체 contradictory indicator라는 점을 2024.6.3 토론문에서 여러 가지 지표와 시각에서 설명. 미국 연준 금리 함부로 쓰면 심각한 bias가 있다는 점도 2024.4.22 토론에서 설명
GFC 변수는 2009년 이후 자료를 이용함으로써 통제했고 과다 추정문제에 대한 해결방안으로 제시. 아마 합쳐 분석해도 결과는 같을 것으로 예상됨
데이터셋은 그때그때 조금씩 다른 것으로 사용했음에도 일관된 결과를 보여주었음
보수/진보로 정권과 정책의 성격을 구분하는 것에 개념상의 문제는 없음. 만약 이런 개념화를 부정하면, 다속성을 지닌 추상적 개념을 명목변수화해 수행한 심리학, 정치학, 행정학과, 사회학 등 사회과학 전반에 걸쳐 이미 수행된 연구결과의 타당성을 부정하는 일이 됨(이를 이유로 논문의 개재 불가 판정을 내린 심사 사례를 이전에 본 적이 있음).
정책개입 빈도 변수는 정권변수의 훌륭한 대체변수라는 점을 설명했고, 높은 상관관계 덕에 정책개입 빈도의 counting방식에 크게 의존하지 않는다는 점도 설명
정책더미를 진보/보수에 따라 +1, -1을 부여했는데, 이를 뒤바꾸어 부여해도 동일한(identical) 분석결과를 얻음
수립한 모형의 predictive power도 데모하고 그 원리가 무엇인지도 설명한 바 있음. 그 원리에 따르면 새로 구축한 모형도 유사한(어쩌면 더 훌륭한) predictive power를 보일 것으로 예상
문재인 정부의 투기조장 현상은 기준정권(reference)을 제하고 박근혜 정부에서는 관찰되지 않았음. 문 정부의 독특한 현상
정책개입 더미는 intervention analysis에서 사용하는 용법을 따랐고, 정책개입 누적회수와 정권더미간 높은 상관성 덕에 정책개입 빈도를 세는 방식에 대해 분석결과가 robust하게 주어진다는 점도 설명했음
공급변수를 누락하고 모형을 추정했지만 문제가 되지 않고, 오히려 여기 측정한 값은 문 정부의 주택가격 상승효과를 보수적으로 추정한 것이 됨. 아래는 single equation인 경우에 적용되는 수식이지만 여기 다방정식인 경우에도 성립해야 함(why?)
S: 주택공급규모, D: 정책개입 빈도
Bias = (변수 S의 회귀계수)*cov(S,D)/var(D) < 0
(-) (+)
cov(S,D)>0는 전강수 박사의 오마이뉴스 컬럼 및 봉다방" 유튜브 링크를 참고해 결정.
출처...2024.7.15 토론문 <표 3>
<그림 1> 문재인 정부시기 시장과 정부부문의 상호작용
<그림 1>에서 보듯이 문 정부 때 정책개입이 주택시장의 투기장적 특징을 강화하고 집값을 끌어 올렸고, 투기장의 특성을 보여주는 다양한 지표들이 단일 총체로서 긴밀하게 상호작용하면서 주택가격 상승 대부분 혹은 모두를 설명했습니다. 정부에 의한 투기조장 없이 문재인 정부 때 집값 상승을 설명할 수 없습니다. 다시 말해 문재인 정부시기 정책개입=투기조장과 등치(equivalence) 관계가 성립하고, 이는 2009년 이래 집값의 정책주기가 곧 정부의 투기조장 정책주기가 된다는 의미입니다. 충격적인 결론입니다.
<표 1> 그랜저 인과검정의 p value
-----------------------------------------------------------------
충격변수-->반응변수 p value
-----------------------------------------------------------------
Model 1 count-->Price 0.00
std-->Price 0.06
Model 2 count-->Price 0.00
coef_var-->Price 0.01
Model 3 count-->Price 0.00
range-->Price 0.60
Model 4 sales_vol-->Price 0.00
std-->Price 0.02
Model 5 sales_vol-->Price 0.00
coef_var-->Price 0.01
Model 6 sales_vol-->Price 0.00
range-->Price 0.22
-----------------------------------------------------------------
출처...<첨부 1>, 횡축은 달, 95% 신뢰구간, Model 4에서. std 시계열 자표의 1 표준편차가 증가했을 때 sales_vol이 얼마나 변했는지 보여주는 그림(단위는 원자료 단위 그대로 임) 직접 matrix이용해 irf분석하면 확인 가능. 동일한 그림 그릴 수 있음. <첨부 3>에 데모했음.
<그림 2> 월간 거래가격 표준편차의 변화가 월간 거래금액 총액에 미치는 영향
출처...<첨부 1>, 횡축은 달, 95% 신뢰구간, Model 4에서. sales_vol 시계열 자표의 1 표준편차가 증가했을 때 Price가 몇 포인트 변했는지 보여주는 그림.
<그림 3> 월간 거래금액 총액의 주택가격 변화에 미치는 영향
출처...<첨부 1>, Model 4에서. std 시계열 자표의 1 표준편차가 증가했을 때 Price가 몇 포인트 변했는지 보여주는 그림.
<그림 4> 월간 거래가격 표준편차의 변화가 월간 거래금액 총액에 미치는 영향
그런데 지난 주 보았던 두 그림 즉 이것과 이것이 상충적입니다. 임기 후반에 투기장 지수 하나는 투기적 특징의 감소를 의미하고, 다른 지표 하나는 투기적 특징의 지속적 강화를 의미합니다. 통합적 설명이 필요합니다. 이 의문은 나중에 해소하기로 하고 우선 몇 가지 관찰부터 합니다. <표 1>, <그림 2> ~ <그림 4>에 따르면, 투기장 지수 3종 사이의 관계를 보여주는데 복잡하게 상호작용합니다. 전체적인 느낌은 이렇습니다.
거래물량이 변동성(intra-period variability, std 및 coef_var, range)보다 주택가격에 미치는 영향이 컸다.
변동성 지수는 주택가격에 직접 영향을 미치기보다 거래물량의 변동을 통해 주택가격에 영향을 미친다.
아래 <표 2>는 추정한 모형의 회귀계수들인데, 2020.6 이후 거래물량의 급격한 감소추세에도 불구하고(여기 그림), 임기 후반 가격이 계속 오르는데 있어 팬데믹의 영향의 컸다. 팬데믹이 직접 Price에 영향을 미칠뿐 아니라(아래 표 파란색 숫자), 거래물량을 경유해 주택가격 상승에 영향을 미치기도 하는데 그 영향도 컸다(아래 표 빨간색 숫자).
<표 2> Model 4에 등장하는 회귀식 5개 설명변수들의 계수
-----------------------------------------------------------------------------------------------------------------------------------------------------------
종속변수/설명변수 Price.l1 Debt.l1 SumD.l1 sales_vol.l1 std.l1 Price.l2
Price 0.568*** 0.029 0.095** 0.097*** -0.115** 0.193**
Debt 0.165 0.311** -0.035 0.027 -0.074 0.118
SumD 0.022 -0.083 0.238*** 0.055** 0.076 0.164
sales_vol -1.176** 0.178 0.636** -0.205** 0.151 -0.709
std 0.056 0.107 -0.055 -0.048** -0.139* 0.0225
종속변수/설명변수 Debt.l2 SumD.l2 sales_vol.l2 std.l2 const Pandemic
Price 0.121** 0.041 0.050*** -0.088* -0.057 0.153**
Debt 0.153* -0.032 0.023 -0.112 0.276*** -0.064
SumD 0.006 0.166* 0.010 0.195* 0.019 -0.003
sales_vol 0.034 -0.246 -0.184* 0.789** 0.129 0.952**
std -0.222*** -0.070 0.020 0.064 0.061 0.266**
------------------------------------------------------------------------------------------------------------------------------------------------------------
주...*** p value<0.01, ** p value<0.05, * p value<0.10. R에서 Bcoef(model) 명령어의 출력물, 변수명 Price.l1은 Price(t-1)이라는 의미, Price.l2는 lag=2인 Price변수, const는 상수항, SumD는 정책개입 횟수 변수로서 본문에서 D(t)라고 칭한 것. 맨 왼쪽 열 맨 위 "Price"는 Price regression equation을 의미하고, 오른쪽 행에 있는 숫자들은 설명변수들의 회귀계수. 빨간색 숫자 0.952(포인트/월)이 얼마나 큰 숫자인지는 여기 그림 참고할 것(팬데믹 때문에 매월 이만큼 sales_vol의 변동이 (+) 방향으로 커진다는 의미). Model 4의 변수구성은 여기 표에 나와 있는 대로인데, 모형의 변수에 대한 자세한 설명은 2024.7.15 <표 3> 참고.
후일을 위해 퍼즐 두 가지를 여기 정리합니다.
[퍼즐 1] 임기 후반 거래물량의 감소 추세와 intra-period 변동성 증가 추세(=std 변수 up)를 어떻게 조화시키고 통합적 틀에서 이해할 수 있는가?
[퍼즐 2] 임기 후반 거래물량 감소+ std 변수의 의문스러운 집값 설명력 vs. 임기 후반 급격한 가격 상승을 어떻게 설명할 것인가?
다음에는 지금까지 여기 사이트에서 고려한 변수 일체뿐 아니라 투기장 지수까지 포함한 모형에서 문 정부의 투기조장과 집값의 순환변동이 진보정부 정부실패의 산물이었다는 명제를 재검정합니다. 문서의 서두에 나열했던 [검토사항 목록]에서도 이 부분은 검토된 바 없습니다.
명제 가운데 어느 것도 당연하지 않습니다. 여러분이 생각 없이 내던진 쓰레기 명제도, 여기 이혁주 박사가 검정한 명제 어느 것도. 쓰레기 줍기는 누구라도 해야 할 일이지만, 이 정도로 고되고 시간이 걸리는 작업인 줄은 예상하지 못했습니다. 지난 사반세기 동안 여러분 정말 산 크게 올렸습니다.
이혁주 드림
<첨부 1>
temp=read.csv(file.choose(),header=T) # 투기지수 자료 내려받기. 자료는 매월 (아파트 면적, 아파트 거래가격)가 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성. )
View(temp)
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
median=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
median[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
# # 1st differencing the data. The original series are not stationary.
count=diff(count) /1e3
sales_vol=diff(sales_vol) /1e8
std=diff(std)/1e4
range=diff(range)/1e4
# # 161 entries starting from 2018.12
count = count[1:161]
sales_vol = sales_vol[1:161]
std = std[1:161]
coef_var=coef_var[1:161]
range=range[1:161]
Data=read.csv(file.choose(),header=T) # 자료 내려받기. 여기서
View(Data)
attach(Data)
remove(Price,Debt,Park,Moon,Pandemic) # just in case
endo=cbind(Price,Debt,SumD,sales_vol,std)
exo=cbind(Pandemic)
model=VAR(endo,p=2,exogen=exo)
irf(model,impulse='std',response='sales_vol',cumulative=TRUE)
x=irf(model,impulse='std',response='sales_vol',cumulative=TRUE)
plot(x) # <그림 2> 완성
irf(model,impulse='sales_vol',response='Price',cumulative=TRUE) x=irf(model,impulse='sales_vol',response='Price',cumulative=TRUE)
plot(x) # <그림 3> 완성
irf(model,impulse='std',response='Price',cumulative=TRUE)
x=irf(model,impulse='std',response='Price',cumulative=TRUE)
plot(x) # <그림 4> 완성
<첨부 2> std, sales_vol --> Price p value 그림
x1=cbind(count,std)
x2=cbind(count,coef_var)
x3=cbind(count,range)
x4=cbind(sales_vol,std)
x5=cbind(sales_vol,coef_var)
x6=cbind(sales_vol,range)
k=0.95
impact=0
cumul=array(0,c(2,6))
for(n in 1:6){
if(n==1){endo=cbind(Price,Debt,SumD,x1)}
else if(n==2){endo=cbind(Price,Debt,SumD,x2)}
else if(n==3){endo=cbind(Price,Debt,SumD,x3)}
else if(n==4){endo=cbind(Price,Debt,SumD,x4)}
else if(n==5){endo=cbind(Price,Debt,SumD,x5)}
else {endo=cbind(Price,Debt,SumD,x6)}
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:5]
A2=Bcoef(model)[,6:10]
y=array(0,c(5,30))
y[,1]=array(c(0,0,1,0,0), c(5,1)) # 정부대책 +1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[1,n]=sum(y[1,])*28
C1=matrix(c(1,1,1,0,1, 1,1,1,0,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
C2=matrix(c(1,1,1,1,0, 1,1,1,1,0, 1,1, # 2 speculation indexes --> Price
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1),nrow=5,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C1)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,2)
cumul[1,n]=p_value
R_model=restrict(model,method='manual',resmat=C2)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,2)
cumul[2,n]=p_value
if(n==1){x=irf(model,impulse='count',response='Price',cumulative=TRUE)
plot(x,xlab='Months elapsed',main='count of (count,std)-->Price')
y=irf(model,impulse='std',response='Price',cumulative=TRUE)
plot(y,xlab='Months elapsed',main='std of (count,std)-->Price')
z1=irf(model,impulse='Price',response='SumD',cumulative=TRUE,ci=k,n.ahead=20)
plot(z1)}
else if(n==2){x=irf(model,impulse='count',response='Price',cumulative=TRUE)
plot(x,xlab='Months elapsed',main='count of (count,coef_var)-->Price')
y=irf(model,impulse='coef_var',response='Price',cumulative=TRUE)
plot(y,xlab='Months elapsed',main='coef_var of (count,coef_var)-->Price')
z2=irf(model,impulse='Price',response='SumD',cumulative=TRUE,ci=k,n.ahead=20)
plot(z2)}
else if(n==3){x=irf(model,impulse='count',response='Price',cumulative=TRUE)
plot(x,xlab='Months elapsed',main='count of (count,range)-->Price')
y=irf(model,impulse='range',response='Price',cumulative=TRUE)
plot(y,xlab='Months elapsed',main='range of (count,range)-->Price')
z3=irf(model,impulse='Price',response='SumD',cumulative=TRUE,ci=k,n.ahead=20)
plot(z3)}
else if(n==4){x=irf(model,impulse='sales_vol',response='Price',cumulative=TRUE)
plot(x,xlab='Months elapsed',main='sales_vol of (sales_vol,std)-->Price')
y=irf(model,impulse='std',response='Price',cumulative=TRUE)
plot(y,xlab='Months elapsed',main='std of (sales_vol,std)-->Price')
z4=irf(model,impulse='Price',response='SumD',cumulative=TRUE,ci=k,n.ahead=20)
plot(z4)}
else if(n==5){x=irf(model,impulse='sales_vol',response='Price',cumulative=TRUE)
plot(x,xlab='Months elapsed',main='sales_vol of (sales_vol,coef_var)-->Price')
y=irf(model,impulse='coef_var',response='Price',cumulative=TRUE)
plot(y,xlab='Months elapsed',main='coef_var of (sales_vol,coef_var)-->Price')
z5=irf(model,impulse='Price',response='SumD',cumulative=TRUE,ci=k,n.ahead=20)
plot(z5)}
else {x=irf(model,impulse='sales_vol',response='Price',cumulative=TRUE)
plot(x,xlab='Months elapsed',main='sales_vol of (sales_vol,range)-->Price')
y=irf(model,impulse='range',response='Price',cumulative=TRUE)
plot(y,xlab='Months elapsed',main='range of (sales_vol,range)-->Price')
z6=irf(model,impulse='Price',response='SumD',cumulative=TRUE,ci=k,n.ahead=20)
plot(z6)}
}
round(cumul,3)
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 0.000 0.000 0.000 0.000 0.000 0.000
[2,] 0.059 0.014 0.598 0.023 0.008 0.216 # <표 1>
<첨부 3> <그림 2>를 직접 그리기
endo=cbind(Price,Debt,SumD,sales_vol,std)
exo=cbind(Pandemic)
model=VAR(endo,2,exogen=exo)
A1=Bcoef(model)[,1:5]
A5=Bcoef(model)[,6:10]
y=array(0,c(5,30))
sum=0
y[,1]=array(c(0,0,0,0,sd(std)),c(5,1))
y[,2]=A1%*%y[,1]
sum[1]=y[4,1]
sum[2]=y[4,2]
for(n in 3:20){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]
sum[n]=sum[n-1]+y[4,n]}
plot(sum[1:11],type='l',ylim=c(0,0.4),ylab='impact on sales_vol',xlab='Months elapsed')
아래 그림이 결과물. Orthogonal 방식을 이용하지 않아 본문의 <그림 2>와 약간 다름.
김수현, 김상조, 변창흠 박사님께
분석 결과가 뜻밖인 만큼 문 정부의 투기조장 가설과 서울 아파트값의 정권/정책 주기 가설을 더 검증합니다. 기본적으로 주택시장의 투기장적 특징을 반영한 모형에서도 여전히 이 두 가설이 타당하냐입니다. 분석결과에 따르면 두 가설은 여전히 타당합니다.
<분석결과 요약>
2009.1~2022.4 기간 동안 정부정책이 가격, 거래물량, 변동성 등 주요 투기장 지수를 자극한 사례는 문재인 정부에서만 관찰된다. 문재인 정부시기 가격 상승은 정부의 부동산정책이 투기장 지수를 자극해 발생한 현상으로서 2009년 이후 주택가격 순환변동의 상승주기와 진폭을 결정했다. 투기장 지수 등 지금까지 고려했던 주요 변수 일체를 포함하고, 정부요인의 취급방식도 다양화하고 분석한 후 얻은 결론이다.
본론입니다.
이명박 정부를 기준정권으로 놓고 정권더미 Park, Moon을 이용해 VAR모형을 추정했습니다. 파란색 변수들을 보이는 순서대로 하나씩 추가하고 Moon이 집값을 얼마나 올렸는지, 그리고 유의한 영향인지 측정했습니다.
내생변수: Price, 월간 거래금액(sales_vol), 월간 거래주택들 가격간 표준편차(std)
오른쪽에 보이는 순서대로 하나씩 추가: Debt, Jeonse, CD, 장기금리(long), Inflow_GDP, Outflow_GDP, 실질 실효환율(REER)
외생변수: Park, Moon, Pandemic
자료: 2008.12부터 2022.4까지
출처...<첨부 1>. Price+투기장 지수 2종을 기본변수로 하고 변수들을 하나씩 추가하고 측정. 그래서 그림에서 변수의 개수=4부터 시작. 겹쳐서 잘 보이지 않는 검은색 선은 Moon-->투기장 지수 3종의 유의도.
<그림 1> 변수를 확장한 모형에서 투기조장론 및 정권주기론의 주기 검정
출처...<첨부 1>. Price+투기장 지수 2종을 기본변수로 하고 변수들을 하나씩 추가하고 측정
<그림 2> 변수를 확장한 모형에서 정권주기론의 진폭 측정(문재인 정부시기)
<그림 1>, <그림 2>가 결과인데, 이전에 보았던 결과와 차이가 없습니다. 실험은 이렇게 진행되었습니다. 내생변수로 Price+투기장 지수 2종를, 외생변수에 Park, Moon, Pandemic을 포함한 모형을 만듭니다. 그리고 지금까지 여기 사이트에서 다룬 내생변수 일체를 하나씩 추가하고 필요한 검정과 측정을 합니다.
<그림 1> 위쪽 곡선 --> 집값 주기가 Moon에 영향을 받는다.
<그림 2> 위쪽 곡선 --> 집값 순환변동의 진폭을 전적으로 Moon이 결정했다.
<그림 1> 아래쪽 곡선 두 개 --> Moon이 투기장 지수에 미치는 영향이 유의(지수 2종, 3종 모두). Plus 2024.7.8 <그림 8> --> 문 정부가 투기를 조장하고 집값을 올렸다.
반면 <표 1> p value에 따르면 박근혜 정부 요인 Park은 Price 회귀식에서 전혀 유의하지 않고(1행), 모형에 따라 투기장 지수를 일부 잘 설명하지만(3,4행 뒷 부분), 최종적으로 정권변수인 Park이 가격변수 Price에 영향을 주느냐입니다. 2행 p value에 따르면 구성과 관계 없이 변수 Park은 Price 설명력이 지나치게 낮습니다. Moon정부가 집값의 순환변동에 결정적 역할을 했다는 것, 그리고 문 정부가 투기를 조장했다는 사실과 대비되는 결과입니다. 투기조장은 문재인 정부의 독특한 현상입니다.
<표 1> 박근혜 정부요인의 투기장 지수 설명력 검정(p value)
------------------------------------------------------------------------------------------------------------------------------------------------------------------
변수의 개수가 아래와 같은 모형에서 투기 집값
----------------------------------------------------------------------------- 조장론 정권주기론
4 5 6 7 8 9 10 의 증거 의 증거
------------------------------------------------------------------------------------------------------------------------------------------------------------------
Price eq에서 0.77 0.72 0.74 0.81 0.79 0.85 0.77 O O
Park 회귀계수의 p value
그랜저 인과검정
Park-->Price 0.76 0.68 0.70 0.81 1.00 1.00 1.00 O O
Park-->(sales_vol, std) 0.28 0.20 0.18 0.13 0.05 0.01 0.01
Park-->(Price,sales_vol,std) 0.43 0.32 0.29 0.13 0.05 0.01 0.01
------------------------------------------------------------------------------------------------------------------------------------------------------------------
출처...<첨부 1>. 영가설은 왼쪽 변수가 오른쪽 변수를 설명하지 못한다. p value가 높다는 것은 영가설을 기각할 수 없다는 것을 의미. R 코드에서 변수 Parks에 저장되어 있음.
이상 분석결과를 토대로 투기조장론에 대해 아래와 같이 기술할 수 있습니다.
(1) 투기장 지수로 어떤 것을 쓰든지, 정부요인을 어떻게 측정하든지, VAR모형에 어떤 변수를 포함하든지 문재인 정부는 투기를 조장하고 집값을 끌어 올렸으며, 이는 2009년 이래 문 정부에서만 관찰되는 현상이다.
(2) 투기장 지수를 포함한 확장모형에서도 문재인 정부의 투기조장론과 주택가격의 정권주기론이 성립한다.
정권 더미 Park, Moon 대신 정부대책 변수 D(t)를 이용해 투기조장 여부와 정권/정책 주기론을 검정합니다. 추정은 정부대책 D와 문재인 정부시기를 나타내는 변수 Moon를 이용해 상호작용항 D(t)*Moon(t)를 이용해 수행합니다. <그림 2> 오른쪽 그림에서 경사가 급한 검은색 선의 기울기 alpha가 D(t)*Moon(t)의 계수입니다. 이 방식은 같은 그림 왼쪽에 있는 방식 1처럼 외생변수 Moon(t)를 이용한 방식에 좀 더 가까운 결과를 보여줄 것으로 예상됩니다(why?).
내생변수: Price, 정부대책 D(t), 월간 거래금액(sales_vol), 월간 거래주택들 가격간 표준편차(std)
오른쪽에 보이는 순서대로 하나씩 추가: Debt, Jeonse, CD, 장기금리(long), Inflow_GDP, Outflow_GDP, 실질 실효환율(REER)
외생변수: D(t-1)*Moon(t), D(t-2)*Moon(t), Pandemic. (첫 두 항은 <그림 3> 오른쪽 패널에서 각도 alpha에 해당하는 기울기(margianl slope)를 측정하기 위해 추가. <표 2> 제1행의 "marginal effect"는 이 alpha 크기의 영향이 집값에 유의한 영향을 주었는지 그 p value를 tabulate한 것)
자료: 2008.12부터 2022.4까지
주...오른쪽 패널에서 기울기가 급한 검은색 선의 기울기를 측정해 사용. 즉 상호작용항 D(t)*Moon(t)을 이용해 문재인 정부정책의 효과 측정
<그림 3> 정부요인 Moon(t), D(t)의 효과 측정 방식 3가지
출처...<첨부 2>
<그림 4> 정책주기론에서 정부대책 D(t)로 인한 진폭 측정(문재인 시기)
<표 2> 정책개입 변수 D(t)를 이용한 모형에서 정책주기론 및 투기조장론 검정: 문재인 정부(p value)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
변수의 개수가 아래와 같은 모형에서 투기 정권주기
-------------------------------------------------------------------------------- 조장론 론의 증
5 6 7 8 9 10 11 의 증거 거(주기)
----------------------------------------------------------------------------------------------------------------------------------------------------------------
문 정부의 정책개입 --> Price
Marginal effect 0.03 0.00 0.01 0.00 0.00 0.00 0.00 O O
Total effect 0.01 0.00 0.00 0.00 0.00 0.00 0.00 O O
문 정부 정책개입의 Margianl effect
--> 투기장 지수 2종 0.10 0.08 0.07 0.01 0.01 0.00 0.00 O
--> 투기장 지수 3종 0.01 0.00 0.00 0.00 0.00 0.00 0.00 O
투기장 지수 2종 --> Price 0.00 0.00 0.00 0.00 0.00 0.00 0.00 O
----------------------------------------------------------------------------------------------------------------------------------------------------------------
주...출처는 <첨부 2>. 제1,2행에서 Total effect는 (a+b*Moon(t))*D(t)에서 a+b, marginal effect는 b. 제3행은 Moon(t))*D(t) --> 투기장 지수 2종 그랜저 인과검정. 마지막 행은 투기장 지수가 가격을 잘 설명한다는 일반적 statement. 투기장 지수 3종=Price+나머지 투기장 지수 2종.
<표 2> 맨 아래 행에 기입된 p value에 따르면 투기장 지수 2종(거래물량, intra-month price variability)은 주택가격을 잘 설명합니다. 그리고 그렇게 상승한 집값은 <그림 4>에서 보듯이 문재인 정부시기 오른 집값 대부분의 원인이 되었습니다. 따라서 전체적으로 투기장 지수를 포함한 모형이 의미가 있습니다. 이제 이런 사실에 기초해서 문재인 정부시기 정책개입의 효과를 측정했습니다. <표 2>에서 1~4행의 p value들이 그 결과인데, 문재인 정부시기 정부의 시장개입은 주택가격과 투기장 지수의 변동을 잘 설명합니다. 빨간색 숫자에서 보는 것처럼 약간의 wrinkle이 있기는 해도 전체적으로 문 정부의 정부대책이 투기를 조장하고 집값을 끌어올렸다는 점이 명확하게 드러납니다. 특히 D의 margianl effect-->Price를 주목하세요(1행). 문 정부의 투기조장과 집값 주기 영향을 지지하는 강력한 증거입니다.
<표 3> 정책개입 변수 D(t)를 이용한 모형에서 정책주기론 및 투기조장론 검정: 보수 정부(p value)
------------------------------------------------------------------------------------------------------------------------------------------------------------------
변수의 개수가 아래와 같은 모형에서 문정부 집값
------------------------------------------------------------------------------- 투기조장론 정책주기론
5 6 7 8 9 10 11 의 보조증거 의 증거
------------------------------------------------------------------------------------------------------------------------------------------------------------------
보수정부의 정책개입 --> Price 0.85 0.88 0.88 1.00 1.00 1.00 1.00 O O
보수정부의 정책개입 0.89 0.82 0.79 0.27 0.26 1.00 1.00 O O
--> 투기장 지수 2종
보수정부의 정책개입
--> 투기장 지수 3종 0.96 0.93 0.92 0.95 0.94 1.00 1.00 O O
------------------------------------------------------------------------------------------------------------------------------------------------------------------
주...출처는 <첨부 2>. 1행에서 영가설은 "정책변수를 포함한 모형의 로그 우도와 포함하지 않은 모형의 로그 우도는 차이가 없다". 앞서 보았던 <표 2>에서 기준정권(=보수정권) 대비 문재인 정권의 정부대책이 집값의 유의한 설명변수임을 이미 검정했음. 따라서 <표 3>은 보기에 따라 굳이 검정이 불필요하다고 생각할 수 있음. 그러나 이렇게 해석하면 <표 3>의 진정한 의미를 파악하지 못한 것이 됨. 여기 표에서 검정 대상은 D(t)로서 상호작용 항이 아님. D(t)의 유의도를 검정한다는 것은 기준정권의 정책 그 자체 집값 상승에 영향을 미쳤는지 다시 검정해보겠다는 것으로서 '진보정부' 대비의 의미가 아니라 zero 영향 기준으로 다시 검정하겠다는 것. <표 3>의 결과가 D(t)-->Price에 부정적으로 나왔다는 것은 <표 2>와 또 다른, 즉 보수정권 정책지향의 전반적인 타당성을 지지하는 강력한 검정결과가 됨. 여기 검정 결과에 따르면 이명박 정부 이래 서울 명목 주택가격이 보수 정책 때문에 오른 것은 통계적으로 확인되지 않는다는 것. 실질가격으로 바꾸어 다시 검정하면 보수정부에서 실질 주택가격은 하락했다는 결과가 나올 수도 있음. 한편 <표 3>은 <표 1>과 달리 모두 유의함. 더 분명한 결과. 투기조장론과 정책주기론의 타당성을 더 높이는 결과.
문재인 정부가 투기를 조장하고 집값을 끌어올렸다면, 보수정부는 그렇지 않았습니다. <표 3>의 p value들이 검정 결과인데, 보수정부의 정책개입은 가격뿐 아니라 투기장 지수 설명력이 사실상 제로라고 해도 좋을 만큼 유의하지 않습니다. 즉 영향은 미쳤으되 통계적으로 유의한 정도의 크기는 아니었다는 의미입니다. 두 가지 교훈입니다.
(1) 투기조장은 2009년 이후 집권했던 정권 중에 문 정부에서만 관찰되는 현상이다.
(2) 주택시장의 안정적 작동은 시장의 작동을 존중하고, 진보 대비 미세조정(fine-tuning)을 통한 시장개입을 통해 가능했다.
<표 2>, <표 3>을 종합하면 다음과 같이 말할 수 있습니다.
[정리] 2009.1~2022.4 기간 동안 보수정부의 부동산정책은 가격, 거래물량, 변동성 등 주요 투기장 지수를 개별적으로도 전체적으로도 유의한 영향을 미치지 않았으나, 문재인 정부에서는 부동산정책이 이들 지수 3가지의 변동에 유의한 영향을 미쳤다. 다시 말해 문재인 정부시기 가격 상승은 정부정책이 투기장 지수를 자극해 발생한 현상으로서, 측정결과에 따르면 2017.5 이후 주택가격 추세는 문재인 정부 부동산정책이 그 상승주기와 진폭을 결정했고, 정권교체와 더불어 급격하게 평균회귀한 후 장기추세를 따라 다시 상승했다. 투기장 지수 등 지금까지 고려했던 주요 변수 일체를 포함하고, 정부요인도 정권 더미와 정책개입 빈도로 다양화하고 분석한 후 얻은 결론이다.
당초 예상을 뛰어넘는 평가결과입니다. 자료가 없어서 더 따져볼 수 없지만, 노무현 정부시기에도 적용될 것 같습니다(정권/정책주기론은 노 정부에서도 성립했음). 그리고 여기 분석이 학술지에 실린 보통의 논문들과 달리 변수의 종류, 취급방식 등 formulation 자체를 변경하고 분석결과의 민감도를 확인했습니다. 이를테면 유의하지 않은 분석결과는 흥미롭지 않아 논문게재 확률이 낮습니다. 학술지 논문에 selection bias가 존재한다는 말입니다. citation은 생략하지만 실제 일어나고 있는 일입니다. 여기 사이트에서 취한 접근법은 이와 구분됩니다.
2009년 이래 집값의 순환변동 주기와 진폭은 진보정부가 투기조장을 통해 실현한 정부실패의 산물로서, 문재인 정부는 투기조장론과 진보의 허위 부동산정책론(2024.7.18 토론문 참고)이라는 경험명제를 실증했던 정권입니다.
문재인 정부의 투기조장-집값 인상기제 등 몇 가지 추가 논의가 필요하지만, 진보정부의 기본인식 즉
집값 높은 것은 기본적으로 수요요인 때문이다.
수요관리를 통해 주택가격의 안정을 기할 수 있다.
투기가 집값 상승의 주요 원인이다.
서울에서 주택공급은 큰 문제가 없다.
에 문제가 있다는 것을 시사합니다. <표 3>에서 보듯이
주택시장의 작동은 기본적으로 시장에 맡기고 미세조정(fine-tuning)을 통해 시장에 개입함으로써 주택시장의 안정성과 원활한 운용이 가능했다.
이때 수요관리에 정책기조를 두고 문재인 정부의 정책메뉴를 변형해 다시 준비한 정책이라면 그것이 어떤 것이든 또 다시 실패할 가능성이 높다는 것을 시사합니다. 매우 중요한 정책시사입니다.
hindsight를 발휘해 여러가지 논평을 할 수 있지만, 주어진 정책관을 가지고 문재인 정부 책임자들이 최선을 다한 결과가 그런 것이라고 봅니다. 당시 담당자들이 지금 사후적으로 평론하는 사람들보다 뭐가 부족하고 잘 몰라서 그랬다고 볼 이유는 없고, 못했다면 그럴만한 이유가 있었을 것입니다. 여기 사이트는 노무현, 문재인 정부 2차례 사회실험 결과를 가지고 있습니다. 아무튼 여러 가지로 더 고민할 주제입니다.
21세기 첫 번째 사반세기를 거치면서 큰 비용을 지불하고 얻은 교훈입니다. 세 분은 못된 짓을 많이 하셨습니다.
이혁주 드림
<첨부 1> 정권더미를 이용한 VAR모형
Data=read.csv(file.choose(),header=T) # 자료 내려받기
View(Data)
attach(Data)
remove(Price,Debt,Jeonse,short,long,Inflow_GDP,Outflow_GDP,REER,sales_vol,std)
temp=read.csv(file.choose(),header=T) # 자료 내려받기. 자료는 매월 (아파트 면적, 아파트 거래가격)가 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성. )
View(temp)
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
median=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
median[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
# # 1st differencing the data. The original series are not stationary.
count=diff(count) /1e3
sales_vol=diff(sales_vol) /1e8
std=diff(std)/1e4
range=diff(range)/1e4
# # 161 entries starting from 2018.12
count = count[1:161]
sales_vol = sales_vol[1:161]
std = std[1:161]
coef_var=coef_var[1:161]
range=range[1:161]
library(vars)
base=cbind(Price,sales_vol,std)
additional=cbind(Debt,Jeonse,CD,long,Inflow_GDP,Outflow_GDP,REER) # REER=실질 실효환율
exo=cbind(Park,Moon,Pandemic)
collect=array(0,c(2,7))
p_values=0
p_value1=0
p_values2=0
p_values3=0
Parks=array(0,c(5,7))
for(n in 1:7){endo_new=cbind(base,additional[,1:n])
model=VAR(endo_new,p=2,exogen=exo)
if(n<4){k=0.1}
else if(n<6){k=0.5}
else {k=1}
R_model=restrict(model,method='ser',thresh=k) # k 값은 큰 영향 주지 않
x1=3+n # number of endogenous variables
x2=x1+1
x3=2*x1
A1=Bcoef(R_model)[,1:x1]
A2=Bcoef(R_model)[,x2:x3]
y=array(0,c(x1,30))
x=2*x1+3
y[,1]=Bcoef(R_model)[,x] # coefficient of Pandemic
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
collect[1,n]=sum(y[1,])*26 # Impact of Pandemic
x=2*x1+3
y[,1]=Bcoef(model)[,x] # impact of Moon=+1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
collect[2,n]=sum(y[1,])*60 # Moon이 정권주기론의 진폭 결정에 유의한 결정을 미쳤는지 검정
C=array(1,c(x1,(2*x1+1+3)))
C[Bcoef(R_model) ==0]=0
C[1,(2*x1+1+2)]=0
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[n]=1-pchisq(chi2,1) # Moon이 정권주기론의 주기에 유의하게 영향을 미쳤는지 검정
# 여기서부터 문정부 투기조장론 검정
C[Bcoef(R_model) ==0]=0
C[2:3,(2*x1+1+2)]=0
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values1[n]=1-pchisq(chi2,2) # Moon --> 투기장 지수 2종 유의도
C[Bcoef(R_model) ==0]=0
C[2:3,(2*x1+1+2)]=0
C[1,(2*x1+1+2)]=0
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values2[n]=1-pchisq(chi2,2) # Moon --> 투기장 지수 3종 유의도
C=array(1,c(x1,(2*x1+1+3)))
C[Bcoef(R_model) ==0]=0
C[1,2:3]=0 # Price eq에서 sales_vol(t-1), std(t-1)의 회귀계수를 0으로 놓기
C[1,(x1+2):(x1+3)]=0 # Price eq에서 sales_vol(t-2), std(t-2)의 회귀계수를 0으로 놓기
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values3[n]=1-pchisq(chi2,4) # 투기장 지수 --> Price
#Park의 회귀계수와 p value 저장. 투기조장론의 보조 지표. Moon이 투기조장했다면 Park의 경우는 아니었다는 증거 수집.
var_summary <- summary(model) # R_model로 해도 결과는 같
# Initialize variables to store the coefficient and p-value for "Park" in the "Price" equation
price_park_coefficient <- NA
price_park_pvalue <- NA
# Extract the summary of the "Price" equation
price_equation_summary <- var_summary$varresult$Price
# Check if "Park" is an explanatory variable in the "Price" equation
if ("Park" %in% rownames(price_equation_summary$coefficients)){
# Store the coefficient
price_park_coefficient <- price_equation_summary$coefficients["Park", "Estimate"]
# Store the p-value
price_park_pvalue <- price_equation_summary$coefficients["Park", "Pr(>|t|)"] }
Parks[1,n]=price_park_coefficient
Parks[2,n]=price_park_pvalue
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model) ==0]=0
if(Bcoef(R_model)[1,(2*x1+2)]==0){tem=1} # Park의 회귀계수가 0일 때 인과검정이 의미가 없게 됨
C[1,(2*x1+2)]=0
R2_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
Parks[3,n]=1-pchisq(chi2,1) # Park --> Price
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model) ==0]=0
tem=0
if(Bcoef(R_model)[2,(2*x1+2)]==0){tem=tem+1}
if(Bcoef(R_model)[3,(2*x1+2)]==0){tem=tem+1}
C[2:3,(2*x1+2)]=0
R2_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
Parks[4,n]=1-pchisq(chi2,(2-tem)) # Park --> (sales_vol,std)
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model) ==0]=0
tem=0
if(Bcoef(R_model)[1,(2*x1+2)]==0){tem=tem+1}
if(Bcoef(R_model)[2,(2*x1+2)]==0){tem=tem+1}
if(Bcoef(R_model)[3,(2*x1+2)]==0){tem=tem+1}
C[1,(2*x1+2)]=0
C[2:3,(2*x1+2)]=0
R2_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
Parks[5,n]=1-pchisq(chi2,(3-tem)) # Park-->(Price,sales_vol,std)
}
x=4:10
plot(x,p_values,type='b',xlab='변수의 개수', ylab='p value',ylim=c(0,0.05))
lines(x,p_values1)
lines(x,p_values3,col='red')
points(x,p_values1,pch=1,col='red')
text(7,0.03,'Moon-->Price, 정권주기론의 주기 검정')
text(6.5,0.01,'Moon-->(sales_vol,std)',col='red')
text(7.5,0.005,'문 정부의 투기조장론 검정',col='red') # <그림 1> 완성
plot(x,collect[1,],type='l',ylim=c(0,42),lwd=2,xlab='변수의 개수', ylab='포인트') # 외생변수 VAR모형에서
lines(x,collect[2,],type='l',lwd=2,col='red')
abline(h=38.3,lty=2,lwd=2)
text(7,40, labels='38.3포인트') # 문재인 정부시기 상승한 주택가격(=100.3 - 61.9 포인트)
text(7,10, labels='Pandemic의 영향')
text(7,30, labels='Moon의 영향', col='red') # <그림 2> 완성
round(Parks,2)
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 0.02 0.02 0.02 0.01 0.01 0.01 0.02 # Coeff of Park
[2,] 0.77 0.72 0.74 0.81 0.79 0.85 0.77 # p value of Park's coefficients
[3,] 0.76 0.68 0.70 1.00 1.00 1.00 1.00 # Park-->Price
[4,] 0.28 0.20 0.18 0.13 0.05 0.01 0.01 # Park-->(sales_vol,std)
[5,] 0.43 0.32 0.29 0.13 0.05 0.01 0.01 # Park -->(Price,sales_vol,std)
<첨부 2> 정부대책 D(t)를 이용한 모형
<첨부 1>에 이어서 분석
D=abs(SumD)
# We construct interation terms to estimate Price(t)=[a1+a2*Moon(t)]*D(t-1)+[a3+a4*Moon(t)]*D(t-2).
D_Moon=D*Moon
library(dplyr)
D_Moon.1=lag(D_Moon)
D_Moon.2=lag(D_Moon,2)
D_Moon.1[1]=0
D_Moon.2[1:2]=0
base=cbind(Price,Debt,D)
exo=cbind(D_Moon.1,D_Moon.2,Pandemic)
model=VAR(base,p=2,exogen=exo)
A1=Bcoef(model)[,1:3]
A1[,3]=A1[,3]+Bcoef(model)[,8]
A2=Bcoef(model)[,4:6]
A2[,3]=A2[,3]+Bcoef(model)[,9] # We've constructed the coeff matrix to prevail in the Moon govt. So, we are ready to examine the effect of D(t)=+1 in the Moon govt.
b=Bcoef(model)[,10] # coefficients of Pandemic
collect=array(0,c(2,9))
y=array(0,c(3,30))
y[,1]=b # Pandemic lasts one month.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
collect[1,1]=sum(y[1,])*26 # 13.41 points by Pandemic
y=array(0,c(3,30))
y[,1]=array(c(0,0,1),c(3,1)) # Initial increase in D(t)=+1. We reflect this in the D(t) equation.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
collect[2,1]=sum(y[1,])*28 # 27.45 points in the base model. Next, we add more variables.
base=cbind(Price,D,sales_vol,std)
additional=cbind(Debt,Jeonse,short,long,Inflow_GDP,Outflow_GDP,REER)
exo=cbind(D_Moon.1,D_Moon.2,Pandemic)
collect=array(0,c(2,7))
p_values=array(0,c(8,7))
for(n in 1:7){endo_new=cbind(base,additional[,1:n])
model=VAR(endo_new,p=2,exogen=exo)
if(n<4){k=0.1}
else if(n<6){k=0.5}
else {k=1.0}
R_model=restrict(model,method='ser',thresh=k)
x1=4+n # number of endogenous variables
A1=Bcoef(R_model)[,1:x1]
A2=Bcoef(R_model)[,(x1+1):(2*x1)]
A1[,2]=A1[,2]+Bcoef(R_model)[,(2*x1+2)]
A2[,2]=A2[,2]+Bcoef(R_model)[,(2*x1+3)]
impact=array(0,c(x1))
impact[2]=1 # impact of D=+1 (exogenous increase in D, which is reflected in the D equation)
y=array(0,c(x1,30))
y[,1]=impact # impact of D=+1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
collect[1,n]=sum(y[1,])*28 # Impact of D=+28 on Price
impact=Bcoef(R_model)[,(2*x1+4)]
y[,1]=impact # Pandemic lasts for one month.
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
collect[2,n]=sum(y[1,])*26 # impact of Pandemic lasting 26 months on Price
#D(t)*Moon(t) -->Price 그랜저 인과검정, Marginal effect
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[1,(2*x1+2)]=0 # Price eq에서 Moon(t)*D(t-1)의 계수=0
tem[Bcoef(R_model)[1,(2*x1+2)]==0]=tem+1 # GAMS에서 tem$(조건문)=tem+1 같은 구조의 문
C[1,(2*x1+3)]=0 # Price eq에서 Moon(t)*D(t-2)의 계수=0
tem[Bcoef(R_model)[1,(2*x1+3)]==0]=tem+1
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[1,n]=1-pchisq(chi2,(2-tem))
#(D,D*Moon) -->Price 그랜저 인과검정, Total effect
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[1,2]=0 # Price eq에서 D(t-1)의 계수=0
tem[Bcoef(R_model)[1,2]==0]=tem+1
C[1,(x1+2)]=0 # Price eq에서 D(t-2)의 계수=0
tem[Bcoef(R_model)[1,(x1+2)]==0]=tem+1
C[1,(2*x1+2)]=0 # Price eq에서 Moon(t)*D(t-1)의 계수=0
tem[Bcoef(R_model)[1,(2*x1+2)]==0]=tem+1 # GAMS에서 tem$(조건문)=tem+1 같은 구조의 문
C[1,(2*x1+3)]=0 # Price eq에서 Moon(t)*D(t-2)의 계수=0
tem[Bcoef(R_model)[1,(2*x1+3)]==0]=tem+1
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[2,n]=1-pchisq(chi2,(4-tem))
#D(t)*Moon(t)-->투기장 지수 2종 인과검정
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[3,(x1+2)]=0 # sales_voleq에서 D(t-1)*Moon(t)의 계수=0
if(Bcoef(R_model)[3,(x1+2)]==0){tem=tem+1}
C[3,(x1+3)]=0 # sales_vol eq에서 D(t-2)*Moon(t)의 계수=0
if(Bcoef(R_model)[3,(x1+3)]==0){tem=tem+1}
C[4,(x1+2)]=0 # std eq에서 D(t-1)*Moon(t)의 계수=0
if(Bcoef(R_model)[4,(x1+2)]==0){tem=tem+1}
C[4,(x1+3)]=0 # std eq에서 D(t-2)*Moon(t)의 계수=0
if(Bcoef(R_model)[4,(x1+3)]==0){tem=tem+1}
print(tem)
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[3,n]=1-pchisq(chi2,(4-tem))
#D(t)*Moon(t)-->투기장 지수 3종 인과검정
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[1,(x1+2)]=0 # Price eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[1,(x1+2)]==0){tem=tem+1}
C[1,(x1+3)]=0 # Price eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[1,(x1+3)]==0){tem=tem+1}
C[3,(x1+2)]=0 # sales_voleq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[3,(x1+2)]==0){tem=tem+1}
C[3,(x1+3)]=0 # sales_vol eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[3,(x1+3)]==0){tem=tem+1}
C[4,(x1+2)]=0 # std eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[4,(x1+2)]==0){tem=tem+1}
C[4,(x1+3)]=0 # std eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[4,(x1+3)]==0){tem=tem+1}
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[4,n]=1-pchisq(chi2,(6-tem))
#투기장 지수 2종-->Price 인과검정
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[1,3]=0 # Price eq에서 sales_vol(t-1)의 계수=0
if(Bcoef(R_model)[1,3]==0){tem=tem+1}
C[1,4]=0 # Price eq에서 std(t-1)의 계수=0
if(Bcoef(R_model)[1,4]==0){tem=tem+1}
C[1,x1+3]=0 # Price eq에서 sales_vol(t-2)의 계수=0
if(Bcoef(R_model)[1,(x1+3)]==0){tem=tem+1}
C[1,x1+4]=0 # Price eq에서 std(t-2)의 계수=0
if(Bcoef(R_model)[1,(x1+4)]==0){tem=tem+1}
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[5,n]=1-pchisq(chi2,(4-tem))
#보수정부의 정부대책의 집값 주기론/투기조장론 검정: D(t)-->Price 인과검정, 비유의
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[1,2]=0 # Price eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[1,3]==0){tem=tem+1}
C[1,(x1+2)]=0 # Price eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[1,(x1+3)]==0){tem=tem+1}
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[6,n]=1-pchisq(chi2,(2-tem))
#보수정부의 정부대책의 투기조장론 검정: D(t)-->투기장 지수 2종 인과검정, 비유의
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[3,2]=0 # sales_vol eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[3,2]==0){tem=tem+1}
C[3,x1+2]=0 # sales_vol eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[3,(x1+2)]==0){tem=tem+1}
C[4,2]=0 # std eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[4,2]==0){tem=tem+1}
C[4,x1+2]=0 # std eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[4,(x1+2)]==0){tem=tem+1}
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[7,n]=1-pchisq(chi2,(4-tem))
#보수정부의 정부대책의 투기조장론 검정: D(t)-->투기장 지수 3종 인과검정, 비유의
C=array(1,c(x1,(2*x1+4)))
C[Bcoef(R_model)==0]=0
tem=0
C[1,2]=0 # Price eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[1,3]==0){tem=tem+1}
C[1,(x1+2)]=0 # Price eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[1,(x1+3)]==0){tem=tem+1}
C[3,2]=0 # sales_vol eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[1,3]==0){tem=tem+1}
C[3,(x1+2)]=0 # sales_vol eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[1,(x1+3)]==0){tem=tem+1}
C[4,2]=0 # Price eq에서 D(t-1)의 계수=0
if(Bcoef(R_model)[4,2]==0){tem=tem+1}
C[4,(x1+2)]=0 # Price eq에서 D(t-2)의 계수=0
if(Bcoef(R_model)[4,(x1+2)]==0){tem=tem+1}
R2_model=restrict(R_model,method='manual',resmat=C)
chi2=2*(logLik(R_model)-logLik(R2_model))
p_values[8,n]=1-pchisq(chi2,(6-tem))
}
round(p_values,2)
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 0.03 0.00 0.00 0.00 0.00 0 0
[2,] 0.01 0.00 0.00 0.00 0.00 0 0
[3,] 0.10 0.08 0.07 0.01 0.01 0 0
[4,] 0.01 0.00 0.00 0.00 0.00 0 0
[5,] 0.00 0.00 0.00 0.00 0.00 0 0 # 여기까지가 <표 2>
[6,] 0.85 0.88 0.88 1.00 1.00 1 1
[7,] 0.89 0.82 0.79 0.27 0.26 1 1
[8,] 0.96 0.93 0.92 0.95 0.94 1 1 # 여기까지가 <표 3>
x=5:11
plot(x,collect[1,],type='l',ylim=c(0,45),lwd=2,xlab='변수의 개수', ylab='포인트')
lines(x,collect[2,],type='l',lwd=2,col='red')
lines(x,collect[1,]+collect[2,],lty='dotted',lwd=2)
abline(h=38.3,lty=2,lwd=2)
text(8,37, labels='38.3포인트') # 문재인 정부시기 상승한 주택가격(=100.3 - 61.9 포인트)
text(8,15, labels='Pandemic의 영향', col='red')
text(8,27, labels='정부대책 D의 영향')
text(10,41,'Sum') # <그림 4> 완성
round(collect,1)
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 26.9 26.8 31.3 30.2 28.6 26.5 28.6
[2,] 12.5 12.5 11.5 11.8 11.7 13.4 11.4 # <그림 4>를 그릴 때 이용한 출력
김수현, 김상조, 변창흠 박사님께
<요약> 주택현상을 이해하고 정책을 처방할 때, 보수와 진보의 정부요인을 균형 있게 반영하지 않은 모형을 사용하면, 정권의 이념적 지향에 따라 외부요인이 주택가격에 미치는 영향을 실제보다 과장하여 인식하고 정책의 효과도 과대평가할 위험이 있다. 이러한 이중(二重) 편향은 시장충격에 대해 과잉대응을 초래하고, 편향으로 인해 왜곡된 정책효과가 문재인 정부의 경우 투기 조장론과 결합하여 예상을 뛰어넘는 파괴적 결과를 야기하기도 한다. 계획계 안팍으로 시스템 실패를 유발한 인지모형(perception model)은 문재인 정부 정책집행 모형의 토대가 되어 임기내내 주택가격을 빠르게 끌어올리는 데 기여했다.
오늘은 정부요인을 적절하게 고려하지 않고 주택시장을 이해할 때 어떤 편향이 발생하는지, 그리고 이런 편향이 그간 진보에게서 관찰했던 '시스템 실패'와 어떻게 연결되는지 알아보겠습니다.
김수현(2023), 이준구(2023)에서 보는 경기적 집값 주기론, 과잉유동성론, 정책신뢰 상실론, 조금 더 확장해서 문재인 정부초 높은 집값을 박근혜 정부의 영향으로 본 시각 등등. 이런 입장은 공통적으로 문제의 원인에서 진보정부를 배제합니다. 즉 이런 논설의 기저에는 아래 '진보의 모형'이 있습니다. 반면 올바른 모형은 정권변수를 모두 포함한 'True model'입니다. 빨간색 변수들에 주목하세요. 변수 구성이 다릅니다.
진보의 모형... 내생변수: Price, Debt, Jeonse, CD
외생변수: Pandemic, Park
True model... 내생변수: Price, Debt, Jeonse, CD
외생변수: Pandemic, Park, Moon
자료...2009.1 - 2022.4
출처...<첨부 1>, y축은 집값에 미친 영향. 빨간 곡선이 더 높은 이유는 정권변수(정확히 말해 Moon변수)의 영향이 여기에 반영되었기 때문. 이때 진보정부는 자신이 미친 악영향을 시장 탓으로 돌리게 됨. 귀인 오류(causal misattribution)는 이런 faulty model을 사용해서 발생. True model의 경우 정권변수가 통제됨.
<그림 1> 정부요인을 균형 있게 고려하는 것이 왜 중요한지를 보여주는 모의실험 결과, Price to Price
출처...<첨부 1>. Debt was varied by 1 standard deviation. y축은 집값에 미친 영향. 여기 제목에서 "정부요인을 균형 있게"라는 표현은 정확한 상황묘사가 아님. "진보의 모형"과 True model"에서 Park 변수는 삭제해도 결과에 변화 없음. 중요한 것은 Moon변수의 반영 여부.
<그림 2> 정부요인을 균형 있게 고려하는 것이 왜 중요한지를 보여주는 모의실험 결과, Debt to Price
<그림 1> 빨간색 곡선은 주택가격이 어떤 이유에서 1.0포인트 상승했을 때, 그 여파로 이후 시계열적 dynamics의 결과 모두 얼마나 상승하는지 '진보의 모형'을 이용해 측정한 결과입니다. 투기나 유동성의 증가, 금리 하락 혹은 그 밖에 어떤 이유에서 집값이 상승했을 때 벌어지는 일입니다. 참 효과는 <그림 1> 검은색 곡선으로서, 정권요인을 통제하지 않은 faulty model보다 많이 작고 <그림 2>에서 보듯이 다른 변수들보다 왜곡이 더 큽니다. 즉 어떤 요인 때문에 주택가격이 상승할 때 Moon과 같은 정부요인의 중요성을 간과한 모형을 이용해 시장을 이해하면, 다른 어떤 변수보다도 과장해서 집값에 미칠 영향을 인식하게 된다는 말입니다. 이것이 시장 인지과정에서 발생하는 1차 실패입니다.
한편 정부요인이 누락된 모형을 이용해 정책을 처방하게 되면 그 효과 역시 <그림 1>에서 빨간색 곡선을 따라 하게 되고, 정책의 효과를 실제 이상으로 과장해 예측하게 됩니다. 그 결과 정책담당자는 정부의 시장개입 효과를 과신하고 시장에 더 자주, 더 강한 정책을 가지고 개입합니다. <그림 3>에서 문재인 정부는 소득효과가 (+)인 정상재(normal good)에서처럼 대충 45도 선을 따라 빈도와 강도 모두 더 큰 '정상적'인 반응을 했고, 그 크기는 보수정부 대비 더 컸습니다(E=2.7, E=3.8 사이의 거리만큼, why?). 2017년 집권 초 김수현 박사의 과잉유동성 원인론, 이후 문 정부의 정책대응을 떠올려 보세요. <그림 4>는 소득효과와 정상재에 관한 경제학 입문서의 설명입니다.
주...E=n*s, 기준 E=1, 진보의 모형=1+<그림 1>에서 점근선의 y축 좌표 2.8=3.8, True model=1+<그림 1>에서 점근선의 y축 좌표 1.7=2.7
<그림 3> 효과 E가 정책개입 횟수 n과 개입당 효과(강도) s의 함수로 주어질 때
<그림 4> 이준구-이창용(2015: 114)에 나오는 소득효과 설명
요약하면, 문재인 정부는 specification error가 존재하는 모형을 이용해 주택가격 상승요인에 대해 필요 이상의 정책대응을 하고, 문 정부의 투기조장론에도 불구하고 정책의 긍정적 효과를 예상하고 추진하면서 시장을 더 불안하게 했습니다. 아래 <그림 5>는 이런 일련의 과정을 요약해 보여줍니다.
현실 ---------------> 인지 --------------------> 처방 ------------------------> 효과의 방향
↑ ↑ ↑
충격을 정책의 효과 부정적 효과를
과장해 에 대한 과대 긍정적 효과라고
인지 자신감과 예측(투기조장-
과잉대응 집값 인상기제)
1차 실패 2차 실패 3차 실패
<그림 5> 문재인 정부시기 정책집행 사이클상의 3중 실패
<표 1> 시스템 실패의 단계와 진행
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Perception stage
사례 ------------------------------------------------------------------------------------ Implementation System
1단계 2단계 3단계 4단계 stage failure
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
박진백 외(2021) 연구자 자신 국토연구원 부동산 국토연구원 『주택연구』 발생
시장정책연구센터 편집위원회
<--
문재인 정부 연구자 자신 계획계 --> 계획계 밖 --> 연구자 자신 인지 --> 처방 발생
실패 실패 실패 3중 실패
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
판단 근거 ++++++++++++ 진보의 허위 부동산정책론 +++++++++++++++ 문재인 정부의 투기조장
(ghost propostion, 諸허위 명제,피구세, 2024.7.18) 및 <그림 1>, <그림 5>
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
주...이전 버전은 2024.6.3 토론문 <표 3>
<그림 5>를 이전에 보았던 시스템 실패 그림과 결합하면 위 <표 1>이 됩니다. 문재인 정부의 실패는 부분과정에 등장하는 중첩된 실패가 계획계-사회 일반 확장시스템의 영향하에서 실현된 시스템 실패입니다. 시스템 실패를 구성하는 두 과정, 즉 Perception stage와 Implementation stage는 불가분의 관계에 있습니다. 이들 부분과정에 대한 진보진영내 비판이 있었겠지만, 진보의 정책관이 ghost proposition에 토대를 두었다는 본질을 꿰뚫어보고 문제 제기한 연구자가 없었고 그 결과 거대모순을 극복하기에는 역부족이었던 것 같습니다. 총체적 엉터리이고, 그래서 진보의 부동산정책이 쓰레기 산이 되었습니다. 그 결과 진보의 훌륭한 논설조차 장식품, 도구가 되고, 허위 부동산정책론을 비판하기보다 거꾸로 주구(走狗)를 자처(自處)하는 의심 사례까지 발생합니다. 1차적으로 진보 여러분이 무능해서 일어난 일입니다. 전에 전강수 박사는 문재인 정부의 정책에 대해 처음부터 반대하는 입장이었다고 말한 적이 있는데 이런 수준의 문제가 아닙니다. 전 박사도 문제의 일부이고 진보의 한계에 갇힌 채, 부드럽게 말해 인문학적 해석으로 경험과학의 명제를 대체하려 했던 것은 똑같습니다.
이혁주 드림
이준구-이창용, 2015. 경제학원론, 서울: 문우사.
<첨부 1> 충격-반응 그림 그리기
Data=read.csv(file.choose(),header=T) # 자료 내려받기
View(Data)
attach(Data)
remove(Price,Debt,Jeonse,short,long,Inflow_GDP,Outflow_GDP,REER,sales_vol,std) # just in case
library(vars)
endo1=cbind(Price,Debt,CD,Jeonse)
exo1=cbind(Pandemic,Park)
model1=VAR(endo1,p=2,exogen=exo1)
A1_1=Bcoef(model1)[,1:4]
A2_1=Bcoef(model1)[,5:8]
endo2=cbind(Price,Debt,CD,Jeonse)
exo2=cbind(Park,Moon,Pandemic)
model2=VAR(endo2,p=2,exogen=exo2)
A1_2=Bcoef(model2)[,1:4]
A2_2=Bcoef(model2)[,5:8]
y=array(0,c(4,30))
y[,1]=array(c(1,0,0,0),c(4,1))
y[,2]=A1_1%*%y[,1]
sum1=0
sum1[1]=y[1,1]
sum1[2]=sum1[1]+y[1,2]
for(n in 3:30){y[,n]=A1_1%*%y[,n-1]+A2_1%*%y[,n-2]
sum1[n]=sum1[n-1]+y[1,n]}
y=array(0,c(4,30))
y[,1]=array(c(1,0,0,0),c(4,1))
y[,2]=A1_2%*%y[,1]
sum2=0
sum2[1]=y[1,1]
sum2[2]=sum2[1]+y[1,2]
for(n in 3:30){y[,n]=A1_2%*%y[,n-1]+A2_2%*%y[,n-2]
sum2[n]=sum2[n-1]+y[1,n]}
x=1:15
plot(x,sum1[1:15],xlab='Months elapsed',type='b',ylab='points',ylim=c(0,3),col='red')
lines(x,sum2[1:15])
text(8,1.6,'True model')
text(8,2.5,'진보의 모형',col='red') # <그림 1> 완성
irf1=irf(model1,impulse='Debt',response='Price', cumulative=TRUE,n.ahead=15)
irf2=irf(model2,impulse='Debt',response='Price', cumulative=TRUE,n.ahead=15)
x1=as.data.frame(irf1$irf)[,1]
x2=as.data.frame(irf2$irf)[,1]
x=1:16
plot(x,x1,xlab='Months elapsed',ylab='집값 상승, points',type='b',col='red')
lines(x,x2)
text(9,0.15,'True model')
text(12,0.23,'진보의 모형',col='red') # <그림 2> 완성
<그림 2>는 sd(Debt)하고 이 크기만큼 위에 빨간색 코드부분에서처럼 해도 동일한 결과를 얻음. 투기장 지수를 포함한 모형에서도 비슷한 결과 얻음. 아래 그림이 그것.
<첨부 2> <그림 3> 그리기
E=array(1,c(6))
n=1:6
E1=E+sum1[30]
E2=E+sum2[30]
plot(n,E1/n,type='l',xlim=c(0,6),ylim=c(0,4),xlab='n, 정책개입 횟수',ylab='s,개입의 강도')
lines(n,E/n)
lines(n,E2/n,col='red')
text(2.5,3.5,'진보의 모형, E=3.8')
text(2,2,'True model, E=2.7',col='red')
text(2,0.2,'E=1')
x=0:3
y=x
lines(x,y)
x=array(c(0.3,0.5,1),c(3))
y=1/x
lines(x,y)
text(3,3,'s=n')
김수현, 김상조, 변창흠 박사님은 보시지요.
오늘은 며칠 전 보았던 Moon 정권요인 누락모형의 bias에 대해 좀 더 알아보고, 최근 수립한 문 정부 투기조장론과 진보의 허위 부동산론 명칭의 적절성에 관해 따져봅니다. 분석결과를 과장 없이 기술하고 수용하려 애쓰고 있지만, 감당이 잘 안되는 결과들이 나오니 당황스럽기는 마찬가지입니다.
지난 주에 알아본 이슈는 Moon이라는 변수가 가격에 큰 영향을 줌에도 이런 변수를 누락시키고 추론할 때 발생하는 문제였습니다. Moon변수는 2003년 이래 성립한 집값의 정권/정책 주기론에 등장하는 변수입니다. 이런 마인드 셋을 기술적으로 재해석하면, specification error가 있는 모형을 사용했을 때 발생하는 누락변수 편향(omitted variable bias) 문제가 됩니다.
포함된 변수 Price 회귀계수의 Bias
= Moon변수의 회귀계수*[Moon-Price의 공분산]/Price변수의 표준편차 > 0
(+) (+) (+)
이 식은 single equation regression model에서 사용하는 식으로서 계량경제학 교과서 어디에서고 나오는 식인데(이를테면, wikipedia 설명 중간 부분 참고), 여기 VAR모형에서 사용해도 큰 문제는 없습니다(why?). 이 식에서 bias는 일단 (+)로서, 실제 크기보다 큰 값으로 측정해 보여준다는 말입니다(빨간색 부등호). Price equation 우변의 lagged Price(t-1), Price(t-2)의 계수가 실제보다 큰 양수(+)로 주어지니까 좌변 Price(t)에 대한 영향이 실제보다 큰 것으로 측정이 됩니다. 참고로 Moon은 0,0,...0,1,1,...,1값을 취하기 때문에 공분산은 0이 아닙니다(Otherwise, 공분산=0--> No bias).
그런데 우변 첫 두 항이 큰 값입니다(check this numerically). 그럼 bias도 크게 주어집니다. 이를테면 투기 때문에 집값이 오르는게 1.0포인트인데 문 정부는 이를 2.0포인트 올랐다고 판단하고, 투기대책의 효과가 실제는 -1.0포인트인데 -2.0포인트로 인식한다는 것입니다. 문 정부 정책결정자들이 '진보의 모형'이라는 수식을 메모해 다니면서 통계를 읽지는 않지만, 이들이 관측한 자료 Price(t)의 패턴을 이들의 마인드셋으로 해석하면 '진보의 모형'이 예측한 그것과 일치하기에 이렇게 말씀드릴 수 있는 것입니다(check this).
<표 1>은 '진보의 모형'과 'True model'에서 Price 회귀식 우변 설명변수 Price(t-1), Price(t-2)의 회귀계수입니다. 3행에 bias의 크기가 있고, 맨 아래 행에 percent bias가 있습니다. 매월 0.209포인트(빨간색 숫자=0.114+0.095)만큼 가격에 대한 충격을 과대 평가합니다(Price equation 팬데믹 변수의 회귀계수와 비슷한 크기???). 편향이 심합니다.
<표 1> '진보의 모형'과 'True model' Price 회귀식의 Price(t-1), Price(t-2)의 계수
-------------------------------------------------------------------------------------------------------------------------------------
Price(t-1)의 회귀계수 Price(t-2)의 회귀계수 비고
-------------------------------------------------------------------------------------------------------------------------------------
진보의 모형에서 (a) 0.690*** -0.067
True model에서 (b) 0.576*** -0.162*
Upward bias의 크기, (a)-(b) +0.114 +0.095 합= +0.209
Percent bias 19.8% 58.6% bias/(b)*100
-------------------------------------------------------------------------------------------------------------------------------------
주... * p value < 0.10, *** p value < 0.01. 지난 주 토론문 <첨부 1>에서 summary(model1)을 한 후 Price 회귀식을 출력해서 제1행을 완성할 수 있음. 마찬가지로 summary(model2)를 하면 제2행을 완성할 수 있음.
진보 예외주의적 사고는 김수현 박사가 집권 초 그리고 김수현(2003)에서 보인 일관된 태도입니다. 높은 집값의 후보 원인군에서 문 정부를 제외하고 밖에서 즉 시장에서 찾으면서, 정작 문 정부의 정책개입이 시장에 미쳤을 영향은 후보 원인군에서 제외하고 시작합니다. 이런 예외주의적 사고는 '진보의 모형'을 낳았는데,
진보의 모형... 내생변수: Price, Debt, Jeonse, CD
외생변수: Pandemic, Park <-- 진보정권 변수 missing
모형의 구성상 진보의 책임은 처음부터 모형에서 배제됩니다. 박진백 외(2021)와 같습니다. 따라서 정권교체 후에도 by construction 문재인 정권 자신으로가 아니고 시장으로 책임을 돌릴 수 있었고, 이것이 유일하게 가능한 귀인(歸因)방식이 되었습니다. 이런 예외주의적 사고는 2003년 이래 관찰된 정권/정책주기론에도 불구하고, 노무현 정부 시절을 통해 형성된 trained bias가 이제는 확신이 되어 '진보의 모형'이라는 누락변수 모형이 되었습니다. 이 모형은 정권 내내 반복해 출현한 반증(falsification)에도 불구하고 이를 '시련'으로 해석한 종말론자류의 자기확신 강화과정(기회가 되면 elaboration)을 거쳐 문 정부의 투기조장적 정책개입과 결합하고 집값의 대폭 상승으로 귀결되었습니다.
(1) 진보 예외주의적 사고 ---> (2) 주택가격모형에서 진보의 정부요인 제외
---> (3) biased model이 시사하는 대로 과잉대응 ------> (4) 가격의 대폭 상승
↑
투기조장
진보 예외주의적 practice는 김수현(2023), 이준구(2023)에서 진보의 면책도구로 유용하게 활용되었지만, 그 대가를 문재인 정부 때 정권교체라는 비용으로 치렀습니다. 통계적 검정을 통해 확인된 바, 2003년 노무현 정부 이래 애용되던 진보의 생존비결(秘訣)이 이렇게 정권의 종결자가 된 것은 진보 ill-scholarship이 초래한 자업자득이지 진보정권이 불운해서가 아닙니다.
문재인 정부의 투기조장론, 진보의 허위 부동산정책론이라는 두 가지 명칭의 적절성에 관해 기계한테 자문해 보았습니다. 질문 후 모두 처음으로 튀어나온 답입니다. 일차 Screening 도구로서 유용합니다.
Human...Between January 2009 and April 2017, Govt Conserv maintained stable housing market indices: price, trade volume, and variability. However, from May 2017 to April 2022, Govt Prog's tenure saw instability in these indices, with housing prices rising by 64%. Analysis indicates that Govt Conserv's policies did not significantly impact the three indeces, while Govt Prog's policies did, contributing to the majority of the price hike. Specifically, Govt Prog's policies accounted for at least 25% of the increase through trade volume and variability, two key speculation indexes other than price. Therefore, we can state that Govt Prog's policies led to increased housing prices by fostering market speculation, representing a government failure. On the basis of the above analysis, can I say that Govt Prog increased the price by instigating speculation in the housing market, which is exactly a govt failure? Evaluate my statements and state your conclusion in 100 words.
ChatGPT...Based on the analysis, it is valid to conclude that Govt Prog's policies significantly contributed to the rise in housing prices by fostering market speculation, which is indicative of government failure. Govt Conserv maintained stable housing market indices without significantly impacting prices, trade volume, or variability. In contrast, during Govt Prog's tenure, housing prices rose by 64%, with policies accounting for at least 25% of the increase through trade volume and variability. Therefore, it is reasonable to state that Govt Prog increased housing prices by instigating speculation, representing a government failure.
이런 답이 Human에게 지나치게 유리하다고 생각하시는 분은 Human의 입장에 과도하게 유리한 답을 비판적 시각에서 다시 써달라고 주문하고 여기 측정과정에서 무엇을 했는지 추가 정보를 하나씩 제공하고 수정의사를 확인하고 대화를 반복하면 대체로 위 답에 수렴하는 결과가 나올 겁니다. '건강한 의심'은 무척 중요합니다. 증거에 비판적이지만, 신뢰할 만한 증거 제시에 대해서는 수용하는 태도. 건강한 의심은 자신의 입장과 일치하는 증거가 나올 때까지 일체의 반대증거를 배격하는 외골수 고집과 많이 다릅니다. 아래 심사자 C의 2차 심사평을 참고하세요.
<표 2> 논문의 심사과정
---------------------------------------------------------------------------------------------------------------------------------------------
논문 1차 심사과정 논문
---------------------------------------------------------- 편집위 결정 2차 최종 판정
1차 2차 판정 심사과정
---------------------------------------------------------------------------------------------------------------------------------------------
심사자 A 수정후 재심 게재 가 개재 불가 논문 재심 NA 게재 가
심사자 B 게재 불가 NA
Arbitrator 수정후 게재
---------------------------------------------------------------------------------------------------------------------------------------------
주...논문 접수 2023.10.24, 게재 확정 2024.6.21. 게재 논문
Human...I have a collection of claims or propositions shared by a group of scholars called Prog. These claims have four distinctive features.
1. Ghost propositions: All the empirical propositions I examined so far have never been established through causal measurements.
2. Key empirical propositions: Key propositions in dispute have been rejected by statistical testing.
3. Causal misattribution: There is evidence of causal misattribution that undermines the validity of the foundational proposition that the Prog rely on.
4. Unexplainable phenomenon: There is a would-be Kuhnian anomaly that the Prog cannot explain at all, but that I can explain.
These claims or propositions are all about real estate policies. Can we call them a pseudo-theory of real estate policies? Note that this term does not imply that all the Prog scholars share these features, although there is a strong commonality. In 100 words.
ChatGPT...Yes, we can call the collection of claims by Prog scholars a pseudo-theory of real estate policies. This term fits because their propositions have not been empirically established, are statistically rejected, suffer from misidentified causality, and include anomalies they cannot explain. These features undermine the scientific validity of their claims, aligning with characteristics of pseudo-theories. However, it is important to note that not all Prog scholars necessarily share these problematic features.
Human..."Pseudo" has a pejorative connotation, as seen in the term pseudo-science. Rather than using a milder term, I prefer to use this term in the scholarly dispute, because this kind of scholarly practice is not acceptable in any sense in academia. Furthermore, utmost precedence should be given to the precise characterization of the disputed issues.
ChatGPT...Certainly, you can refer to these claims as the Prog's pseudo-theory of real estate policies in a scholarly dispute to emphasize their lack of academic rigor. This term underscores that these propositions possess serious flaws: they are "ghost propositions" without substantial empirical backing, have key empirical claims rejected by statistical testing, suffer from misidentified causality issues that invalidate key propositions, and include unexplainable phenomena that opposing scholars can explain. While "pseudo-theory" carries a critical tone, it precisely characterizes the disputed issues and highlights the unacceptable nature of such practices in academia. This usage stresses the importance of rigorous empirical validation and theoretical coherence in scholarly work, making it clear why these propositions fall short.
Human...I think you correctly captured the points and my real concern. Thanks.
ChatGPT...You’re welcome! I'm glad the explanation resonated with your concerns. If you need further assistance or have more questions about your academic work, feel free to ask!
이렇게 기계가 뱉는 말을 참고해야 할 만큼 지금 상황은 병적(病的)입니다.
사이비 과학을 응당 사이비라고 부르는 것처럼 진보의 허위 부동산정책론도 이런 rule에서 예외가 될 수 없습니다. 다시 한번 상기시켜 드리면, 우리는 인문학 이전에 과학하는 사람들입니다. 인문학이 영감을 주는 것은 사실이지만 그것이 정책현장을 지배하면 안됩니다. shaman과 종교인이 공적 영역을 지배하는 사회와 비슷한 곳이 됩니다.
다음에는 투기조장-집값인상 과정의 micro기제를 다룹니다. 지금까지 한거래야 2000년 이래 역대 진보정권의 노력에도 불구하고 결과가 정반대였다라는 통계적 규칙성을 발견한 것이 모두입니다. 물론 그 의미를 평가절하해서는 안됩니다만.
진짜 궁금한 것은 왜 그런 결과가 나왔느냐입니다. 투기조장-집값인상 기제에 대한 이해가 없을 때, "더 쎄게" 했더라면 성공하지 않았을까라는 유혹에 또 빠지기 쉽습니다. "더 쎄게"라는 말은 문 정부 때 자주 듣던 말이지만, 지금도 반복되는 처방이고 진보의 미래권력과 더불어 다시 등장할 인식이 됩니다. 그만큼 고질적이고 이것이 여기 설명작업을 할 수 있는 데까지 해야 하는 이유입니다.
정도껏 엉망이어야 하는데 앞이 잘 보이지 않습니다.
이혁주 드림
김수현. 2023. 부동산과 정치. 경기도 파주: 오월의봄.
박진백, 이태리, 오민준, 2021. 금리의 주택가격 상승 기여도 추정. 주택연구, 29(4): 75∼100.
김수현, 김상조, 변창흠 박사님 보시지요.
<요약> 지난 주에 이어 진보 부동산정책론의 허위 여부를 추가검토한다. 이번 주에는 허위 이론이 아니기 위해 반드시 충족시켜야 하는 기준을 나열한 후, 진보의 정책론이 이들 기준을 충족시키는지 검토한다. 검토결과 진보 부동산정책론은 (1)경험적 증거, (2)반증가능성 등 두 가지 최소요건을 충족시키지 못한다. 한편, 투기장 지수를 포함한 모형의 분석결과를 수요-공급분석 틀에서 재해석하면, 문재인 정부의 부동산대책은 수요곡선과 공급곡선을 임기중 동일한 크기로 상향이동시켰다. 이는 정부의 시장개입이 수요곡선의 하향이동을 유도할 것이라는 당초 기대와 달리, 투기를 조장하여 수요곡선을 상향이동시키고 집값을 끌어올렸다는 의미이다. 정부대책이 시장참여자의 미래가격에 대한 기대를 교란하고 시장참여자간 기대가격의 상이성이 증가하면, 그 자체 시장가격을 상승시키고 거래를 증가시키는 요인으로 작용한다. 끝으로 (1)지난 몇 주간 보았던 투기조장 가설의 검정결과, (2)문재인 정부 투기조장 기제를 설명하는 가격거품 이론, (3)임기중 지속적으로 증가한 가격분포의 산포도 증가 등 3가지 분석결과를 모아서 문재인 정부 투기조장론의 3대 구성요소를 완성한다.
1. 허위 과학명제의 특징과 진보의 부동산정책론
아래는 허위 부동산정책론이라는 명칭에 관한 추가사항입니다. 첫 반응을 분량만 조절해 다시 생성한 결과입니다.
Human...I call the claims or propositions of a group of scholars as a "pseudo-theory of real estate policies". What might be the conditions or requirements for them not to be a pseudo-theory? List them.
ChatGPT...To ensure that a theory about real estate policies is not considered a pseudo-theory, it must meet several rigorous criteria. Here are some key conditions or requirements:
Empirical Evidence:
The theory should be based on empirical data collected through systematic observation, experimentation, or both.
It must be able to demonstrate clear, measurable outcomes in real estate markets and policies.
Falsifiability:
The propositions within the theory must be testable and falsifiable. There should be a way to potentially disprove the theory through empirical evidence.
Peer Review, ...
Meeting these conditions can help distinguish a legitimate, scientifically grounded theory of real estate policies from a pseudo-theory.
Human...To be falsifiable, the claims should be stated in the testable framework or whatever you may call it. Right? In 150 words.
ChatGPT...Yes, for claims to be falsifiable, they must be stated within a testable framework. This involves:
Clear Hypotheses: Formulating specific, concise hypotheses that outline expected outcomes and the conditions under which these outcomes should occur.
Operational Definitions: Defining key terms and variables in measurable and observable terms, making it possible to test and quantify the propositions.
Testable Predictions: Making precise predictions that can be empirically evaluated. These predictions should indicate what evidence would support or contradict the claims.
Methodological Rigor: Employing robust research methodologies that allow for controlled, repeatable testing of the hypotheses.
Criteria for Refutation: Clearly stating the criteria under which the claims would be considered false, ensuring openness to refutation by empirical evidence.
By adhering to these principles, the claims are structured to be empirically tested and potentially falsified, meeting a key criterion for scientific validity and distinguishing them from pseudo-theories.
ChatGPT의 대답에 이의를 제기하는 분은 없을 것입니다. 경험증거의 부재, 검증가능한 형태로 기술된 가설의 부재는 진보 부동산정책론이 공통적으로 충족시키지 못하는 요건입니다. 이들 요건의 미충족은 사이비 과학, 비과학과 공유하는 특성이고, falsifiability issue는 종교와 공유하는 특성입니다.
검증가능하려면 검증대상인 현상의 개념적, 조작적 정의가 선행되어야 합니다. 경기적 집값 주기론, 투기원인론 어디에서건 여기 거론한 인사 어느 누구도 측정을 시도한 적이 없습니다. 따라서 testable format으로 기술된 바도 없습니다. 이혁주 박사의 경우 장기 추세를 상회하여 일정 기간 지속적으로 증가하는 가격상승 패턴을 loosely speaking 거품이라고 보고 이때 시장에서 투기가 일어났다라고 봅니다. 그리고 이를 측정하기 위해 3가지 대표적 지수를 선정해 측정하고 분석했습니다. 여기서 일정 기간은 자산가격의 거품/붕괴 문헌에 나오는 기간을 참조해서 설정할 수 있는데, 서울 집값의 경우 문재인 정부시기 60개월은 최근 GFC 포함 역사적 사례 어느 것과 비교해도 짧지 않은 기간입니다(예컨대 Quinn and Turner(2020) 참고). 이혁주 박사는 가설을 검증가능한 형태로 기술한 탓에 외부자의 혹독한 검증과정이 있었고, 반면 진보의 명제는 검증가능한 형태로 기술되지 않은 덕에 혹독한 검증과정을 bypass하는 행운이 있었던 것이고요. 이어서 이혁주 박사의 경우, 이런 검증 결과를 아래 논의에서 보듯이 theory를 통해 rationalize합니다. 여기 사이트에서 거론한 어떤 진보 부동산정책론에서도 볼 수 없는 '추가적' 장면입니다.
이렇게 '거품'을 정의하는 것은 관련분야에서 자주 사용하는 정의입니다.
In this book, we borrow the definition of Charles Kindleberger, the MIT economic historian and bubble scholar, who describes a bubble as an 'upward price movement over an extended range that then implodes'. In other words, a bubble is a steep increase in the price of an asset such as a share over a period of time, followed by a steep decrease in its price. Others have suggested that, for an episode to constitute a bubble, prices must have become disconnected from the 'fundamental value' of the asset. However, this definition makes bubbles much more difficult to identify with any certainty, which can lead to lengthy discussions about whether a particular episode was a 'real' bubble or not. It is also divorced from the historical usage of the term. The beauty of Kindleberger's definition for us is that, because the definition makes no claims about the underlying causes of bubbles, we can investigate these causes for ourselves. From Quinn and Turner (2020: 4)
Fundamental price를 초과하는 가격을 거품으로 정의하면, 정부요인처럼 기저가격의 구성요인을 분석에서 배제하는 문제도 있습니다. 따라서 여기 논쟁에서 정의한 거품의 개념은 분석목적과 그간 관련연구에서 사용한 방식 등에 비추어 보았을 때 make sense합니다. 이러한 정의에 따를 때 문재인 정부 때 집값은 거품을 포함했고, 그러한 거품을 조장한 부동산정책은 거품을 조장한 것이 됩니다. 시장에서는 그러한 정책에 순응한 투기행위가 투자자와 주택구입자 사이에 발생한 것이 되고, 이러한 내적 요인이 붕괴한 정치적 사건이 2022년 5월 정권교체입니다. 정권교체라는 상황변화는 가격 상승을 지지했던 정치시스템의 붕괴, 그에 수반한 경제적 동인(動因)의 급격한 변화 즉 위 인용문에서 말한 'implode'에 해당하고, 이때 나타난 시장가격의 변화 패턴이 정권 교체 후 보았던 '평균회귀' 현상이 됩니다.
이상 분석결과를 토대로 아래와 같이 기술합니다.
[정리] 진보의 부동산 정책론은 허위이며 사이비 과학과 주요 특성을 공유한다.
문 정부 5년간 '풍차'를 향해 기세 좋게 진군했지만 풍차는 거기에 없었습니다. 결과만 놓고 보면, 진지한 과학자들에게서도 늘 있는 일입니다. 문제는 자신의 신념과 지식을 특별하다고 여기기 때문에 발생합니다. 이혁주 박사, 여러분, 어느 누구도 특별하지 않습니다. 반론하세요.
2. 수요-공급분석 틀에서 본 투기조장 과정
<그림 1>은 문재인 정부 부동산 대책 문건인데, 이 문건의 기대는 <그림 2>에서 아마도 최초 균형 E0가 E1으로 이동하는 것이었다고 추측됩니다. 시장주의자라면 아마도 E0-->E3 정도는 기대하지 않았을까 싶습니다. 그러나 투기수요억제책은 수요곡선을 왼쪽으로 이동시키지만 주택공급곡선도 왼쪽으로 이동시킵니다.
정태적 분석환경에서 shift factor는 수요곡선, 공급곡선 가운데 통상 어느 한 편에만 나타나고 해당 곡선을 이동시킨다. 그러나 분석환경을 일반균형으로 확장하면 이론상 모든 것이 모든 것을 결정한다. 더 이상 외생변수, shift factor는 존재하지 않는다. 이때 수요-공급곡선에 영향을 미치는 어떤 변수가 어떤 이유로 해서 변하면 다른 모든 변수가 영향을 받는다. 적어도 이론상. 실제 얼마나 변하는지는 empirical question.
그 결과 최초의 균형 E0는 E2로 변합니다. 문제는 E2에서 균형가격이 최초의 가격 P0보다 높은지 혹은 낮은지 사전 불분명합니다. 아마도 많은 사람들이 <그림 2>를 토대로 E1, E2, E3 가운데 어느 하나를 주장할 것 같습니다. 과연 어떤 것이 올바른 추론인지 문재인 정부 시기 자료를 가지고 측정해 봅시다. 결과는 예상 밖입니다. E1, E2, E3 모두 아닙니다. 재고가, 분양가 모두에서.
<그림 1> 2017년 8.2대책의 주요내용
<그림 2> 예상
사용할 모형은 아래와 같습니다.
내생변수: 주택가격 지수 Price, 가계대출 Debt, 월간 주택거래 건수 count, 주택가격 지수의 변동계수 coef_var
외생변수: 박근혜 정권 더미 Park, 문재인 정권 더미 Moon, 팬데믹 더미 Pandemic
여기서 관심변수는 주택거래 건수 count입니다. 변수로서 통계적 설명력이 좋은 검토한 결과가 <표 1>입니다. <표 1>에서 보듯이 정권변수 Moon, 주택가격 Price, 월간 거래건수 count는 서로 잘 설명합니다. 통계적으로 count 변수는 합격입니다.
<표 1> 변수간 그랜저 인과관계의 검정
------------------------------------------------------------------------------------
p value p value
------------------------------------------------------------------------------------
Moon --> Price 0.03 count --> Price 0.00
Moon --> count 0.02 Price --> count 0.00
------------------------------------------------------------------------------------
출처: <첨부 1>
<그림 3> Moon=+1의 영향
<그림 4> 실제 일어난 일: 수요-공급분석 틀에서 본 투기조장론
Moon=+1, 즉 문 정권이 1달 지속되었을 때 서울에서 거래량과 가격은 '임기 평균' <그림 3>의 "수렴"으로 표시된 점에 점근합니다. 좀 더 구체적으로 주택거래건수는 194건 미미하게 감소하고(2017년 월 평균 7328건 거래의 2.6%), 주택가격 지수는 0.58포인트 상승합니다. 이 그림은 '임기 평균'이라는 점에 유의하세요. 거래량은 임기 전반은 전체적으로 up, 후반은 down이었습니다.
이를 <그림 4>에 옮겨 그리면 시장가격과 거래량이 원래의 균형점에서 수직으로 상승해 새롭게 형성됩니다. 다시 말해 <그림 2>에서 본 통상적인 예상과 달리 수요곡선과 공급곡선 모두 위쪽으로 사실상 똑같은 크기로 상향 수직 이동합니다. 여기서 수요곡선의 이동 방향은 투기원인론자의 예상과 '반대' 방향입니다. 또한 매월 균형가격의 상승에 대응하여 임기 평균 2.6% 감소라는 표면적 수치와 달리 공급곡선의 상향 이동=좌측 이동이 매월 작지 않은 규모로 있었다는 것으로서 정부의 대책이 공급도 크게 위축시켰다는 말입니다. 이것 역시 문 정부의 예상과 다른 결과입니다. <그림 4>는 통제된 '실험실'에서 측정한 값이라는 점, 당연하지만 상기하고 해석하시기 바랍니다.
[정리 1] 문재인 정부시기 수요곡선은 정부의 기대와 달리 아래쪽으로 이동하지 않고 위쪽으로 이동했으며, 똑 같은 크기로 공급곡선도 위쪽(=왼쪽)으로 이동했다. 그 결과 거래량 지수 sales_vol, count에 큰 변화 없이(시점 대비 종점 기준) 임기 중 집값 Price가 상승했다.
[정리 2] <그림 4>는 수요-공급분석 틀에서 문재인 정부의 투기조장론을 재확인하는 그림이다.
그림에서 수요곡선의 상향이동 없이 균형의 수직이동은 나타날 수 없다. 추가적으로 이동의 크기와 지속성 등 이들 세 가지 특징은 투기장의 주요 특징이다.
문재인 정부의 투기조장론이 통계적 검정 절차를 거쳐 수립되었던 것처럼, 이 그림도 유사한 검정 절차를 거쳐 생성한 자료를 이용해 구성해낸 결과물이다.
3. 가격거품 이론을 이용한 투기조장 과정 설명
문재인 정부시기 주택가격의 분포는 오른쪽으로 이동하고 거래가격 월간 평균의 분산이 더 커지는 현상이 관찰됩니다. <그림 5>가 그것인데 매우 중요한 의미를 갖습니다.
주...까만선은 2016.5~2017.4(집권 전 12달), 빨간선은 2021.5~2022.4(집권 마지막 12달). 점선 사이의 거리는 IQR(=제3사분위 가격 - 제1사분위 가격). 출처는 <첨부 2>
<그림 5> 박근혜 vs. 문재인 정부 집값의 분포
<그림 6> Xiong(2013)
그림에서 검은색 선은 문 정부의 집권 직전 1년 동안 월간 서울 집값 평균의 상대도수(전체에서 차지하는 비율)를 그린 것입니다(거래가격은 2억원 단위로 끊어서 집계). 빨간색 선은 문 정부 임기 마지막 1년 동안의 상대도수입니다. 문 정부 때 가격분포가 더 분산적으로 변했다는 말입니다. 그림에서 같은 색 수직선 두 개는 제1, 제3 사분위수로서 통계학에서 말하는 범위(range), IQR(interquartile range)을 나타냅니다. 분산이 더 크다는 것은 비관론자와 낙관론자간 미래 예상가격 간 차이가 더 벌어졌다는 말이고, 그만큼 기대의 이질성(heterogeneity)이 더 커졌다는 말입니다. 주택의 특성이 통제되지 않은 그림이기는 하지만 시사적입니다.
이때 <그림 6>처럼 관련 연구에 따르면 risky asset의 가격이 fundamental price가 아니라 speculative profit이 포함된 resale 가격으로 거래가 된다는 것입니다. 자세한 내용은 해당 문서에 설명이 되어 있는데, 간략히 말씀을 드리면 현재 t=0, 내일 t=1, 모레 t=2 세 시점이 있고, t=2때 가격이 100원, 50원 혹은 0원으로 주어진 어떤 위험자산이 있습니다. 시장거래자는 A, B 유형이 있고 t=0에서 시작해서 t=1일 때 시장가격이 오를수도 있고(up), 내릴 수도 있습니다(down). t=0일 때 가격이 오르면 t=1일 때 up branch를 따라 지점 u에 경제가 있게 되고, 가격이 내리면 t=1일 때 down branch를 따라 d에 있게 됩니다. 아래는 각 시점에서 A, B가 평가한 위험자산의 가치입니다. 기호는 대충 보면 이해할 수 있습니다.
VuA=pi_uA*100+(1-pi_uA)*50=(0.5)(100)+(0.5)(50)=75
VuB=pi_uB*100+(1-pi_uB)*50=(0.8)(100)+(0.2)(50)=90
VdA=pi_dA*50+(1-pi_dA)*0=(0.5)(50)+(0.5)(0)=25
VdB=pi_dB*50+(1-pi_dB)*0=(0.2)(50)+(0.8)(0)=10
V0A=pi_0A*VuA+(1-pi_0A)*VdA=(0.5)(75)+(0.5)(25)=50
V0B=pi_0B*VuB+(1-pi_0B)*VdB=(0.5)(90)+(0.5)(10)=50
이렇게 자산의 가격이 불확실할 때 t=0일 때 두 사람의 t=2때의 가격 예상치가 동일하게 50원으로 주어지지만, t=1일 때 u에서 상승론자 B의 기대가격 90원으로 위험자산이 거래되고, d에서는 상승론자 A의 기대가격 25원으로 거래되어, 이를 t=0으로 역산한 거래가격 기대치는 90원과 25원의 평균인 57.5원이 되고 이 값은 t=0 두 사람의 기대가격 50보다 높게 된다, 그래서 57.6-50=7.5원만큼 resale value가 현재가격에 반영되어 합리적인 bubble이 자산가격에 포함되고, 그 결과 risky asset의 가격은 시장참여자의 기대가격 50원보다 높은, 낙관론자의 기대가 반영된 거품 낀 가격으로 거래가 되고 거래량도 폭증하게 되는 일이 발생한다, 뭐 그런 얘기입니다.
이 얘기를 <그림 5>와 연결하면, <그림 6>에서 t=2일 때 가격이 100, 50, 0 대신 80, 50, 20으로 분포의 분산이 축소되면 t=0에서 A, B가 평가한 자산의 가치가 각각 V0A=50, V0B=42로 주어지지만, t=0일 때 거래되는 가격은 54.5원으로서 두 사람의 평가액 50, 42 어느 것보다 높습니다. 그런데 이 가격 54.5원은 <그림 6>에서 원래 보았던 t=0에서의 거래가격 57.5원보다 낮습니다. 예를 좀 더 개선할 여지는 있지만 포인트는 이런 것입니다.
[포인트] t=2일 때 자산가격의 분포가 덜 분산적이 되면 그 자체 시장의 거래가격을 push down하는 효과가 존재한다.
여기에 공매도가 존재하지 않는 주택시장의 특성이 더해지고, 시장가격의 상승은 더 탄력을 받는다고 합니다.
The idea, which dates back to Miller (1977), has to do with the combined effects of short-sales constraints and differences of opinion on stock prices. Miller argues that when there are short-sales constraints, a stock’s price will reflect the valuations that optimists attach to it, but will not reflect the valuations of pessimists, because the pessimists simply sit out of the market (as opposed to selling short, which is what they would do in an unconstrained setting). Thus short-sales constraints can exert a significant influence on equilibrium prices and expected returns. For example, one interesting cross-sectional implication of Miller’s logic is that the greater the divergence in the valuations of the optimists and the pessimists, the higher the price of a stock in equilibrium, and hence the lower the subsequent returns. From Chen et al. (2002: 172).
주택거래에서 공매도(short sale)는 없기 때문에 시장가격의 형성에서 pessimist는 '빠지고' optimist가 주도하게 되고, 분포의 분산이 클수록 상승론자들의 기대에 부응하게 된 더 높은 가격으로 시장이 진행한다는 설명입니다. 이것이 주택부문내 가격의 자기증폭과정입니다. 아래 <그림 8> 오른쪽 타원 내부를 보세요.
4. 문재인 정부의 투기조장론을 지탱하는 3대 구성요소
문재인 정부 때 <그림 5>에서 보듯이 시장가격에 대한 기대의 hetergeneity가 시간이 지나면서 오히려 증가했습니다. 그리고 hetergeneity 증가 그 자체는 <그림 6>에서 보듯이 시장상황이 up이든 down이든 시장가격이 낙관론자의 기대가격에 가깝게 형성되고 진화합니다. 그래서 <그림 5>에서 분포 분산의 증가는 그 자체 시장가격을 견인하는 요인으로 작용했고, <그림 4>에서 수요곡선의 상향 추동으로 나타났습니다. 문 정부 때는 이런 기대의 변화를 부동산대책이 직접 유발했다는 것이 2024.7.15 <표 3>의 내용입니다. 따라서 <그림 7>과 같이 기술할 수 있습니다.
주...오른쪽 아래 상자 안 "유의/비유의" 검정 결과는 <첨부 3> 맨 뒤 출력물 p_values1, p_values2 참고.
<그림 7> 문재인 정부의 투기조장론을 지탱하는 3대 구성요소
출처...2024.7.22 토론문, Sig.는 유의, Insig는 비유의(p value > 0.05)
<그림 8> 주택부문에 대한 정부부문의 반복적 보강간섭
5. 정부-주택 상호작용 모형과 집값의 상승과정
그런데 문 정부에서 28차례 정부대책을 발표했다는 것은 28차례 <그림 4>에서 빨간색 화살표가 위쪽으로 잇달아 늘어섰다는 것을 말하고, 주택부문내 증폭과정이 정부에 의해 다시 증폭되는 2중적 증폭과정이 28차례 작동했다는 것을 말합니다. 그리고 2022년 5월 정권교체는 이들 전체 과정을 추동했던 정부요인이 일시에 소멸한 것으로서, 시장참여자의 hetergenous belief의 급격한 붕괴를 의미합니다. 2024.7.1 토론문에서 보았던 이 그림에서처럼 정권교체 후 약 1년간 분포의 mean과 median간 차이가 극적으로 감소하는 모습을 확인할 수 있습니다.
<그림 9> 부동산부문이 포함된 금융-실물경제 거시모형
급
이런 메커니즘이 작동한 결과, 서울에서 보듯이 주택공급 및 가구신용경로의 심한 폐색에도 불구하고 서울 집값은 장기간 큰 폭으로 과거 추세를 벗어나 상승할 수 있었고, 서울 주택시장에서 투기장적 요소를 고려하면 그렇지 않을 때보다 2024.6.3 <그림 3>에서 보았던 평균회귀 현상을 더 잘 설명할 수 있게 됩니다(다음 주에 데모). 그러면 서울 집값을 설명하는데 시계열 모형에서 변수 몇 개면 족할 수도 있습니다. VAR모형은 횡단면 자료를 이용한 모형이 아니라서 지역간 변이를 설명해야 하는 변수 일체가 빠졌다는 점도 상기하시기 바랍니다(이때 설명변수의 수는 급격하게 감소). 그리고 <그림 9>에서 주요 거시경제변수가 톱니바퀴처럼 맞물려 움직이는 만큼, 그만큼 경로 폐색지점도 많고, 그 가운데 어느 하나라도 크게 문제가 된다면 시스템 전체가 망가진다는 뜻입니다. 그럼 "Housing is business cycle."(Leamer, 2007)이라는 진단에도 불구하고 주택시장의 경기순응성(procyclicality)은 얼마든지 파괴될 수 있습니다. 한국과 서울은 미국과 많이 다른 것 같습니다. 이를테면 피구세가 서울에서 요즘 집값의 80% 정도는 될 만큼 공급경로의 폐색은 놀라울 정도입니다(나중 formal presentation). 문 정부 때 가구신용경로 역시 우선적인 통제대상이었습니다.
이 경우 아래와 같은 심사자 A의 우려(line 8-13)는 정당하지만 설명가능합니다.
선행연구에서 사용한 다양한 변수들을 검토하신 후, 결국 주 분석에서 사용하신 변수는 가격지수, 가계대출, 그리고 정권 더미인 것으로 보입니다. 본문에서는 기타 변수들은 통계적 유의도가 많이 떨어져서 제외하였다고 하셨습니다. 구체적으로 어떤 식으로 검증하셨는지 알 수 없지만, 주택가격지수를 설명하는데 있어 가계대출과 정책적 요인만으로 충분하다는 주장은 일반적으로 학계에서 받아 들여지기 어려울 것이라고 생각합니다.
서울 아파트시장의 가격변동은 지금까지 알고 있던 상식으로 설명이 되지 않습니다. 세 분은 코멘트하시지요.
이혁주 드림
이준구. 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
Chen, Joseph, Harrison Hong, and Jeremy Stein, 2002. Breadth of ownership and stock returns, Journal of Financial Economics 66, 171-205.
Duca, John V. et al., 2021. What Drives House Price Cycle? International Experience and Policy Issues. Journal of Economic Literature 59(3): 773-864.
Leamer, Edward, 2007. Housing Is Business Cycle. NBER Working Paper 13428. Cambridge, Massachusetts: National Bureau of Economic Research.
Quinn, William and John D. Turner, 2020. Boom and Bust: A Global History of Financial Bubbles. Cambridge, UK: Cambridge University Press.
Xiong, Wei, 2013. Bubbles, Crises, and Heterogeous Beliefs, NBER Working Paper 18905. Cambridge, Massachusetts: National Bureau of Economic Research.
<첨부 1> Moon 변수가 가격과 거래량에 미친 영향
install.packages("moments")
library(moments)
library(vars)
temp=read.csv(file.choose(),header=T) # 투기지수 자료 내려받기. 자료는 매월 (아파트 면적, 아파트 거래가격)가 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성. )
View(temp)
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
median=0
kurt=0
avg=0
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
median[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
# # 1st differencing the data. The original series are not stationary.
count=diff(count) /1e3
sales_vol=diff(sales_vol) /1e8
std=diff(std)/1e4
coef_var=diff(coef_var) # 생략 가능. coef_var는 stationary
range=diff(range)/1e4
# # 161 entries starting from 2018.12
count = count[1:161]
sales_vol = sales_vol[1:161]
std = std[1:161]
coef_var=coef_var[1:161]
range=range[1:161]
Data=read.csv(file.choose(),header=T) # 자료 내려받기. 여기서
View(Data)
attach(Data)
endo=cbind(Price,Debt,count,coef_var)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
b=Bcoef(model)[,11] # coefficients of Moon
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,0,1, # Moon --> Price
1,1,1,1, 1,1,1,1, 1, 1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # p value = 0.03
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,1, # Moon --> count
1,1,1,1, 1,1,1,1, 1, 1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,0,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # p value = 0.02
C=matrix(c(1,1,0,1, 1,1,0,1, 1, 1,1,1, # count --> Price
1,1,1,1, 1,1,1,1, 1, 1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.00
C=matrix(c(1,1,1,1, 1,1,1,1, 1, 1,1,1, # Price --> count
1,1,1,1, 1,1,1,1, 1, 1,1,1,
0,1,1,1, 0,1,1,1, 1, 1,1,1,
1,1,1,1, 1,1,1,1, 1, 1,1,1),nrow=4,byrow=TRUE)
R_model=restrict(model, method="man", resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.00
y=array(0,c(4,30))
y[,1]=b # Initial impact of Moon on Price and count.
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
cumul=array(0,c(4,30))
cumul[,1]=y[,1]
for(n in 2:30){cumul[,n]=cumul[,n-1]+y[,n]}
cumul[3,]=1000*cumul[3,] # 거래건수의 단위를 [천]에서 [1 단위]로 바꾸기
plot(cumul[3,],cumul[1,],xlab='거래건수에 미치는 누적 영향(건)',ylab='집값에 미치는 누적 영향(포인트)',pch=8,ylim=c(0.1,0.7),xlim=c(-500,1500))
text(1150,0.2,'1달 후')
text(530,0.41,'2달 후')
text(0,0.65,'3달 후')
text(350,0.52,'수렴 (0.58포인트,-194건)',cex=1.1)
abline(h=cumul[1,30],lty='dotted')
abline(v=cumul[3,30],lty='dotted') # <그림 3> 완성
<첨부 2> 거래가격의 상대도수 분포도 그리기
temp=read.csv(file.choose(),header=T) # 투기지수 자료 내려받기.
2016.5-2017.4: 249-271 <-- 자료가 col 249에서 col 271까지 있음
2017.5-2018.4: 273-296
2018.5-2019.4: 297-320
2019.5-2020.4: 321-344
2020.5-2021.4: 345-368
2021.5-2022.4: 369-392
2022.5-2023.4: 393-416
APdata=temp[,249:416] # data from 2016.5 to 2023.4, seven years. 2 columns for each year stored
year1=0
year2=0
year3=0
year4=0
year5=0
year6=0
year7=0
for(yr in 1:7){data1=0
for(n in 1:12){at=2*n+2*12*(yr-1)
count[at]=sum(!is.na(APdata[,at])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기
x=array(c(APdata[1:count[at],at]),c(count[at],1))
data1=rbind(data1,x)}
if(yr==1){year1=data1[2:length(data1)]/1e4} # The 1st entry of data1 was set to zero. So, we exclude this zero.
else if(yr==2){year2=data1[2:length(data1)]/1e4} # Price data from 2017.5 to 2018.4, 단위=억원
else if(yr==3){year3=data1[2:length(data1)]/1e4} # Price data from 2018.5 to 2019.4, 단위=억원
else if(yr==4){year4=data1[2:length(data1)]/1e4}
else if(yr==5){year5=data1[2:length(data1)]/1e4}
else if(yr==6){year6=data1[2:length(data1)]/1e4}
else {year7=data1[2:length(data1)]/1e4} # Price data from 2022.5 to 2023.4, 단위=억원
}
breaks <- seq(0, 30, by = 2) # Adjust breaks to ensure consistent binning
Price_cut1 <- cut(year1, breaks = breaks, include.lowest = TRUE)
frequency_table1 <- table(Price_cut1) # Frequency table for the first plot
Price_cut6 <- cut(year6, breaks = breaks, include.lowest = TRUE) # Categorize the second data set
frequency_table6 <- table(Price_cut6) # Frequency table for the second plot
midpoints <- head(breaks, -1) + diff(breaks) / 2 # Midpoints of the bins
plot(midpoints, as.numeric(frequency_table1) / length(year1), type = "b", pch = 19, main = "주택가격 분포", xlab = "주택가격(억원)", ylab = "상대도수", xlim = c(0, 30))
abline(v=quantile(year1,0.25),lty='dotted',lwd=1.5)
abline(v=quantile(year1,0.75),lty='dotted',lwd=1.5)
lines(midpoints, as.numeric(frequency_table6) / length(year6), type = "b", pch = 19, col = "red")
abline(v=quantile(year6,0.25),lty='dotted',col='red',lwd=1.5)
abline(v=quantile(year6,0.75),lty='dotted',col='red',lwd=1.5) # <그림 5> 완성
<첨부 3> 문 정부대책 --> 산포도 증가 통계검정
temp=read.csv(file.choose(),header=T) # 자료 내려받기. 자료는 매월 (아파트 면적, 아파트 거래가격)가 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성. )
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
median=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
median[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
# # 1st differencing the data. The original series are not stationary.
count=diff(count) /1e3
sales_vol=diff(sales_vol) /1e8
std=diff(std)/1e4
range=diff(range)/1e4
# # 161 entries starting from 2018.12
count = count[1:161]
sales_vol = sales_vol[1:161]
std = std[1:161]
coef_var=coef_var[1:161]
range=range[1:161]
Data=read.csv(file.choose(),header=T) # 자료 내려받기
View(Data)
attach(Data)
remove(Price,Debt,Jeonse,short,long,Inflow_GDP,Outflow_GDP,REER,sales_vol,std)
D=abs(SumD)
# We construct interation terms to estimate Price(t)=[a1+a2*Moon(t)]*D(t-1)+[a3+a4*Moon(t)]*D(t-2).
D_Moon=D*Moon
library(dplyr)
D_Moon.1=lag(D_Moon)
D_Moon.2=lag(D_Moon,2)
D_Moon.1[1]=0
D_Moon.2[1:2]=0
p_values1=0
p_values2=0
exo1=cbind(Park,Moon,Pandemic)
exo2=cbind(D_Moon.1,D_Moon.2,Pandemic)
for(n in 1:6){if(n==1){endo1=cbind(Price,Debt,sales_vol,std)
endo2=cbind(Price,Debt,D,sales_vol,std)}
else if(n==2){endo1=cbind(Price,Debt,sales_vol,coef_var)
endo2=cbind(Price,Debt,D,sales_vol,coef_var)}
else if(n==3){endo1=cbind(Price,Debt,sales_vol,range)
endo2=cbind(Price,Debt,D,sales_vol,range) }
else if(n==4){endo1=cbind(Price,Debt,count,std)
endo2=cbind(Price,Debt,D,count,std)}
else if(n==5){endo1=cbind(Price,Debt,count,coef_var)
endo2=cbind(Price,Debt,D,count,coef_var)}
else {endo1=cbind(Price,Debt,count,range)
endo2=cbind(Price,Debt,D,count,range)}
model=VAR(endo1,p=2,exogen=exo1)
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # Moon-->산포도
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,0,1),nrow=4,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_values1[n]=1-pchisq(chi2,1)
model=VAR(endo2,p=2,exogen=exo2)
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1, # 문재인 정부의 D-->산포도
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,0,0,1),nrow=5,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_values2[n]=1-pchisq(chi2,2)
}
round(p_values1,2)
[1] 0.74 0.64 0.04 0.84 0.55 0.07 --> 일부 유의
round(p_values2,2)
[1] 0.26 0.68 0.94 0.23 0.63 0.98 --> 모두 비유의
세 분 선생님은 보세요.
<요약> 문재인 정부의 정책개입이 시장의 불확실성을 증가시키면, 장래 예상가격의 산포도가 증가한다. 그런데 주택시장의 thiness, 공급규제, 공매도 부재 등 각종 거래제한적 요소 때문에 시장참여자 일부만이 주택을 보유하게 되면, 시장참여자들의 미래 예상가격 평균이 불변인 경우에도 시장 균형가격은 상승한다. 주택부문내 가구에 대한 신용 및 주택공급경로의 제약 때문에 주택부문에서 이런 경제원리가 제한적으로 작동했지만, 문재인 정부 때는 이런 제약에도 불구하고 주택시장에 대한 보강적 정책간섭을 통해 임기중 시장가격을 지속적으로 올렸다. 그 결과 임기 전반기에는 거래가격과 거래가격의 산포도, 거래량(금액, 건수) 등 주요 투기장 지수가 동시에 커졌다. 반면 임기 후반기에는 거래량이 급감하는데, 잦은 정부의 개입으로 시장이 빠른 속도로 위축되었던 것 같다. 공급 감소는 주택이라는 위험자산의 거래를 더욱 일부 참여자로 제한했고, 장래 예상가격 산포도의 증가 현상과 결합하여 거래물량 감소라는 투기장적 특성의 약화에도 불구하고 임기 전반기보다 더 빠른 속도로 거래가격이 상승했다.
지난 번에 정부의 부동산대책이 시장참여자의 기대에 변화를 주어 시장의 불확실성을 증가시키면, 장래 예상가격의 평균에 변화가 없어도 가격의 산포도를 증가시켜 가격을 올리는 효과가 있다는 점을 확인했습니다. 그 결과 문 정부의 예상과 달리 오히려 수요곡선이 위쪽으로 이동하고, 공급 및 신용규제 등 주택시장의 제한적 자기증폭과정에도 불구하고 정부의 반복적 대응은 집값을 장기간 지속적으로 끌어올렸습니다.
수요-공급분석 틀에서 문 정부의 정부대책이 시장에 미친 영향을 정리하면 <표 1>과 같습니다. 정부대책이 수요-공급곡선과 가격에 미친 영향은 당시 정부 당국의 예상과 반대로 드러났습니다.
<표 1> 지난 주 분석결과가 예상과 달랐던 점
----------------------------------------------------------------------------------------------------------------------------------------------------------
실제 벌어진 일
-----------------------------------------------------------------------------
예상 수요-공급곡선 가격
----------------------------------------------------------------------------------------------------------------------------------------------------------
진보측 입장에서 (1)수요곡선 하향 이동 (1)수요곡선 상향 이동 (1)예상과 반대로 상승
(2)공급곡선에 미치는 (2)공급위축이 컸고, (2)상승폭도 매우 컸음
영향, 없거나 작을 것이다. (3)동일 크기 상향이동
시장주의자 입장에서 (1)주된 효과=공급 위축 공급의 위축만큼이나 --
(2)수요곡선의 상향이동 수요곡선이 상향이동
도 가능하지만 아마도
부차적 효과(?)
----------------------------------------------------------------------------------------------------------------------------------------------------------
주...수요곡선의 상향이동=수요곡선의 우측이동, 공급곡선의 상향이동=공급곡선의 좌측이동=공급의 위축. 그림으로 확인 가능. 맥락에 따라 자유롭게 혼용.
이런 일이 일어난 이유를 미래 예상가격의 산포도가 다를 때 시장 거래가격이 어떻게 변하는지 numerial example을 이용해서 확인했습니다. 이 데모가 시사적이기는 하나 그 직관이 무엇인지 아직 눈에 확 들어오지는 않는 것 같습니다. 오늘은 위험자산의 가격형성 기제를 좀 더 정교화하고 아래 몇 가지에 대해 설명하겠습니다.
(1) 시장교란 --> 자산가격과 거래물량의 동시 증가 현상 설명하기
(2) 임기 전후반 거래물량의 증가 후 감소 추세 vs. 시장가격의 지속적 상승 puzzle 설명하기
지난 주에 문 정부시기 투기는 미래 예상가격에 대한 시장 참여자의 기대를 정부대책이 교란해서 발생한 것이라고 했습니다. 이런 speculation의 근거는 문 정부 임기가 진행되면서 아래 <그림 1>에서 보듯이 거래가격들의 분산이 점점 더 증가했다는 것이었습니다. 정부의 반복적 시장개입은 주택가격에 대한 기대에 변화를 주어 가격분포가 오른쪽으로 이동하고 동시에 더 분산적으로 변했다고 보았습니다.
주...까만선은 2016.5~2017.4(집권 전 12달), 빨간선은 2021.5~2022.4(집권 마지막 12달). 출처=지난 주 <그림 5>
<그림 1> 주택의 특성을 통제하지 않은 표본에서 거래주택들의 가격분포
<그림 2> Miller(1977)의 Fig. 1
정부의 잦은 개입이 시장에 대한 시장참여자의 기대를 교란하면, 사람들의 예상가격 평균에 변화가 없어도 예상가격에서 차이가 증가합니다. 이를테면 <그림 2>에서 예상가격 평균이 G, 예상가격 곡선이 ABC로 주어졌을 때, 이 곡선은 어떤 risky asset에 대한 WTP(willingness to pay)가 되고 따라서 이 자산에 대한 수요곡선이 됩니다. 주택시장은 thin market으로서 주택에 대한 수요가 WTP가 높은 소수의 시장참여자 N명에게 집중될 때, 시장가격은 자산에 대한 평균적 예상 G보다 높은 R로 주어집니다. 서울의 경우 각종 거래제한적 요인, 주택의 공매도 불가능 등 여러 가지 이유에서 거래량 N은 더 작게 주어집니다.
그런데 만약 정부의 시장개입으로 시장참여자의 장래 예상가격간 차이가 커지면, 평균 예상가격 G에 변화가 없어도, 수요곡선이 ABC에서 FBJ로 변하고 시장 균형가격은 종전 R에서 Q로 증가합니다. 수요곡선이 ABC일 때에 비해 FBJ인 경우 사람들 사이에 예상가격 차이가 더 벌어졌습니다. 수요곡선 y축 좌표들의 분산이 커지기 때문에 N 왼쪽 수요곡선상의 점들 y축 좌표들도 서로 다른 정도가 커집니다. 그림에서 수요곡선 GBH는 정부의 교란에도 불구하고 모든 사람들이 risky asset의 장래 예상가격을 동일하게 보는 경우입니다. 이 경우 정부의 시장교란은 공급곡선을 경유하는 영향으로 국한됩니다.
<표 2> 회귀식 오차항의 기술통계, 단위: 만원, 실질가격
--------------------------------------------------------------------------
박 정부 회귀식 문 정부 회귀식
---------------------------------------------------------------------------
최소 -14,1390 -30,7534
1사분위수 -1,1352 -2,2301
중앙값 -1664 -1888
평균 0 0
3사분위수 8956 1,7248
최대 65,5278 87,9970
---------------------------------------------------------------------------
출처...<첨부 2>. 1만 단위마다 구분점 찍음. 즉 -14,1390= -14억 1380만원. 설명변수의 제약 때문에 주택의 동질성이 충분히 보장되지 못했다는 점을 감안하고 읽을 것. 그럼에도 시사적.
출처...<첨부 2>, 실질가격 사용.
<그림 3> 회귀식 오차항의 분포
그런데 <그림 1>에서 주택들은 어떤 달에 거래된 모든 주택들로서 주택의 특성이 통제되지 않은 그런 표본이었습니다. 주택의 동질성을 증가시키고 그림을 다시 그렸을 때도 여전히 거래가격 분포의 분산이 커졌는지 확인해보겠습니다.
국토부 실거래가격 통계에서 제공한 정보를 이용해 아래와 같은 주택가격 회귀식을 박근혜, 문재인 정부 마지막 1년에 대해 각각 추정하고, 오차항(regression error terms, 실제 주택가격 지수 - 예측한 주택가격 지수)을 이용해 <표 2>, <그림 3>을 구할 수 있습니다(비교가 용이하도록 가격은 실질가격 사용).
회귀식: Price(t) = a0+a1*아파트의 층+a2*강남3구 소재 여부+a3*건축연도+a4*아파트의 면적(m2)
<표 2>, <그림 3>에서 박근혜 정부 임기말 1년에 비해 문재인 정부 임기말 1년의 가격분포가 더 분산적이라는 사실이 명확하게 드러납니다. 재화의 공급전망이 불투명해질 때 금기(今期) 재화수요가 증가한다는 경제학 원론의 설명이 바로 이 경우입니다. <그림 3>은 이를 뒷받침하는 중요한 관측입니다. 여기서 오차항은 회귀식 독립변수들이 설명하지 못하는 가격으로서 동질적인 가상 주택에 대해 시장에서 부여한 상이한 가격들의 분포를 보여줍니다. 그런데 동질적 상품에 대한 평가가 다르다(hetergeneous)는 것은 두 가지 의미가 있습니다.
포인트 1: <그림 2>에서 수요곡선이 시계방향으로 회전했다. --> 시장 거래가격의 상승
포인트 2: 시장참여자 사이에 거래를 통해 상호이득을 취할 여지가 더 커진다(곧 설명). --> 거래물량의 증가
<그림 2>, <그림 3>이 각각 probabilistic model, deterministic model이라서 완전히 대응하는 모형이라고 보기는 어렵지만, 두 그림의 직관은 서로 통합니다. 이런 점에 주목해서 이 두 그림을 계속 이용해 설명하겠습니다.
포인트 2에 대해 추가 설명합니다. 이를테면 박근혜 정부시기에 어떤 아파트에 Q1의 가치를 부여한 사람과 Q3의 가치를 부여한 두 사람 A, B가 만나서 거래를 하면 거래를 통해 A, B 사이에 실현되는 교환의 이득은 8956 - (-1,1352) = 20308만원=2억 308만원이 됩니다. 그런데 문재인 정부시기에는 이 값이 3억 9549만원으로 대폭 늘어납니다. 아래 <표 3> 참고. 이때 문재인 정부 시기에는 박근혜 정부때보다 거래가 활성화되고 시장에서 거래되는 자산의 가격도 <그림 2>에서 보듯이 상승합니다(가격상승 과정은 지난 주 Xiong의 설명도 참고할 것).
<표 3> 박근혜, 문재인 정부시기 Q1, Q3 평가가격을 가진 두 사람이 거래할 때 실현되는 거래의 이득
---------------------------------------------------------------------------------------------------------------------
박근혜 정부 때 문재인 정부 때 비 고
---------------------------------------------------------------------------------------------------------------------
Q1 평가자의 가격 (a) -1,1352만원 -2,2301만원 <표 2>에서
Q3 평가자의 가격 (b) 8956만원 1,7248만원 <표 2>에서
거래를 통해 실현되는 2,0308만원 3,9549만원 (b) - (a)
이득
----------------------------------------------------------------------------------------------------------------------
주...만 단위 기수법 사용해 숫자 표기. Q1은 제1사분위 가격, Q3은 제3사분위 가격.
문 정부의 진심에도 불구하고 집값이 기대와 정반대로 움직인 이유에 대해 오늘 논의로부터 중요한 시사를 얻습니다.
[투기억제책의 집값 인상 및 거래량 증가 기제] 투기억제책은 시장거래를 위축시키고,
-공급측 위축요인: <그림 2>에서 N 좌측 이동. 당시 정책은 여기 그림 참고.
-수요측 위축요인: 각종 투기억제척 역시 수요자 pool을 WTP가 높은 거래자로 좁힘-->미래의 예상가격을 높게 평가하거나 집이 정말 필요해서 WTP가 큰 사람들로 pool제한),
미래 예상가격에 대한 기대의 교란은 수요곡선을 시계방향으로 회전시킨다. 이때 더 적은 사람들이 위험 자산인 주택을 보유하고 시장에서 거래되는 가격의 분포는 평균과 분산 모두 커진다. <그림 3>은 그 증거가 되고, 미래 예상가격에 대한 이질성 증가는 <표 3>에서 보듯이 동질적 주택의 거래로부터 실현되는 이득의 증가를 의미하기 때문에 거래는 더욱 증가하는 현상이 발생한다.
<그림 4> 월간 거래금액
<그림 5> 1달 동안 거래된 주택들 가격의 표준편차
정부개입이 초래한 시장교란은 시장의 불확실성 증가를 의미하고, 이런 불확실성의 증가가 거래가격과 물량의 동시 증가를 의미합니다. 그런데 <그림 4>에 따르면 이런 설명은 문 정부 전반기에는 맞지만, 후반기에는 가격만 증가하고 거래물량은 감소합니다. 설명이 필요합니다. 다음 절의 주제입니다.
<그림 6> 문재인 정부 전반기
<그림 7> 문재인 정부 후반기
<그림 6>에서 문 정부 전반기에는 정부의 시장개입으로 수요곡선이 시계방향으로 회전함과 동시에 공급곡선이 오른쪽으로 이동합니다. 이때 가격이 오르고 거래량과 WTP의 산포도(ac > bp0)도 증가합니다. 반면 <그림 7>은 문 정부 후반기에 정부의 반복적 시장교란으로 수요곡선이 계속 시계방향으로 회전하지만 거래량은 줄어드는 상황을 보여줍니다. 이때 거래량은 줄지만 가격은 상승하고 WTP의 산포도(ap2 > cp1)도 계속 증가합니다. 따라서 거래량과 가격분포의 산포도의 동시 증가가 투기장의 심화를 보여주는 지표이지만, 거래량의 감소가 곧 투기장 성격의 완화를 의미하는 것은 아닙니다. 거래량의 감소는 투기장 지표 가운데 가장 중요한 거래가격의 상승을 의미했습니다.
문재인 정부 전반기: 수요곡선 시계방향 회전 + 거래량 증가 --> (가격의 산포도 up, 가격 up)
문재인 정부 후반기: 수요곡선 시계방향 회전 + 거래량 감소 --> (가격의 산포도 up, 가격 up)
그런데 <그림 6>과 달리 <그림 7>에서 거래량이 감소했고 그 결과 거래가격은 <그림 6>보다 더 올랐습니다. 따라서 이 두 그림의 prediction에 따르면 임기 후반의 집값 상승폭이 임기 전반보다 더 커야 합니다. 여기 그림에서 자세히 살펴보면 실제 그런 일이 일어났음을 확인할 수 있습니다.
임기 전반 임기 후반
p1 - p0 < p2 - p1
↑ ↑
<그림 6> <그림 7>
오늘 논의에서 얻는 아주 중요한 교훈을 하나 기술하고 마치겠습니다. 이를테면 정부에서 반투기대책을 강력하게 시행할 때 시장에는 높은 거래가격을 지불할 의사가 있는 사람만 남게 됩니다. 즉 <그림 6>에서 반투기대책을 강하게 시행할수록 가격 c는 위로 올라갑니다. 정부의 시장교란으로 가격분포가 더 분산적으로 변한 것과는 다른 과정입니다. 높은 가격을 지불할 의사가 있는 사람은 두 부류입니다. 집이 꼭 필요한 사람이거나, 주택의 resale value를 높게 평가한 사람(다른 말로 투기꾼이라고 비난 받기도 하는 사람). 다시 말해 투기억제대책은 그 자체 시장 참여자의 pool을 WTP가 높은 사람들로 제한함으로써 시장가격을 올리는 부작용을 낳습니다. 문재인 정부의 반투기대책이 어떻게 실패했는지 그 미시적 기제로서, 진보적 투기억제대책의 '자기 부정적' 과정입니다. counter-intuitive한 관찰이지만 정책적, 이론적 시사가 만만치 않은 기제입니다.
이혁주 드림
Miller, Edward M., 1977. Risk, Uncertainty, and Divergence of Opionio. Journal of Finance, 32(4): 1151-1168.
<첨부 1> 가격분포 곡선의 변화 측정
data=read.csv(file.choose(),header=T) # 내려받기 2016.5-2017.4 및 2021.5-2022.4 서울 아파트 매매가(국토부 실거래가공개시스템, https://rt.molit.go.kr)
View(data)
attach(data)
CPI=array(c(97.6,99.1,99.5,100.0,102.5,107.7),c(6)) # 2017 to 2022
data1=data[1:107927,] # 2016.5에서 2017.4까지 자료
data2=data[107928:139124,] # 2021.5에서 2022.4까지 자료
data2[,4]=data2[,4]*97.6/107.7 # 2021.5-2022.4 가격을 2016.5-2017.4가격으로 변환
model1=lm(price~gu+m2+floor+year_const,data=data1)
resid1=residuals(model1)
model2=lm(price~gu+m2+floor+year_const,data=data2)
resid2=residuals(model2)
hist1=hist(resid1, breaks = 50)
hist2=hist(resid2, breaks = 50) # 참고용 그림
rel_freq1=hist1$counts/sum(hist1$counts)
rel_freq2=hist2$counts/sum(hist2$counts)
plot(hist1$mids,rel_freq1,type='b',xlim=c(-150000,150000),ylab='상대도수',xlab='오차(만 원)',cex=1.3)
lines(hist2$mids,rel_freq2,type='b',col='red')
text(70000,0.32,'박 정부 마지막 1년',cex=1.3)
text(100000,0.1,'문 정부 마지막 1년',col='red',cex=1.3) # <그림 3> 완성
summary(resid1)
summary(resid2) # 출력물에서 숫자를 모아 <표 2> 완성
세 분 선생님께
<요약> 투기장적 요소를 서울 주택시장에 반영해서 주택가격 모형을 만들고, 그런 모형을 이용해 2022년 정권교체 후 주택가격을 예측하면 투기장적 요소를 반영하지 않은 모형에 비해 정권교체 후 급락한 가격을 더 잘 예측한다. 그런데 서울 주택시장의 투기장적 특징은 정부요인, 좀 더 구체적으로 문재인 정부의 정부요인에 좌우되었는데, 이 말은 2022년 5월 윤석열 정부로 정권이 교체되면서 시장의 투기적 요소가 급격하게 감소하고 시장은 투기적 요소가 제거된 종전 가격 추세로 빠르게 복귀한다는 의미이다(주택가격의 평균회귀 현상). 한편 Xiong(2010), Miller(1977)에서 보았듯이 위험자산일수록 현재의 가격이 장래의 시장 전개 시나리오에 영향을 많이 받는다. 이 점을 고려해 2022.5 대선 직전 일정 기간의 가격을 정권교체의 가능성을 고려해 기존 모형을 수정해서 다시 추정하면 대체로 실제 가격추세와 비슷하게 수평인 가격구간이 나타난다. 이상 분석결과를 종합하면, 서울 집값은 진보/보수의 상이한 정권/정책요인이 만들어낸 순환변동으로서, 2003년 노무현 정부 때부터 2022년 5월 정권교체 후 장기 추세로 복귀를 마친 2023년까지 정부요인을 제하고 서울 집값을 설명하기 어렵다.
2003년 노무현 정부 이래 서울 주택가격 변동이 진보/보수 정권/정책 주기를 따르고, 진보정권에서 주택가격이 장기 추세가격을 상회하는 상승패턴을 보였다는 것은, 2000년대 들어 서울 주택시장에서 발생한 투기가 진보정권이 생성한 현상이었다는 것을 시사합니다. 이런 시장에 등장한 투기꾼 역시 진보정권 시장환경의 피조물이라는 것도 시사합니다. 이런 투기꾼이 도덕적 지탄 대상이라면, 그런 투기꾼을 만들어낸 진보정권은 그 이상 도덕적 지탄을 받아야 하는 대상이 되고, misidentified causality 논리를 동원해 투기꾼을 비난하는 인사는 적반하장이 됩니다.
Correct: 진보정부의 정책-->투기-->집값 상승
Wrong: 투기-->(집값 상승,정부대책)
이제 서울 주택시장에서 투기 요소를 고려하고 자료는 문재인 정부 말까지를 이용해 모형을 개발하고 그렇게 개발한 주택가격 모형의 predictive power를 검사해보겠습니다. 투기가 2009년 이후 서울 주택시장에서 가격변동을 잘 설명한다는 점을 반복해 확인했는데, 만일 그렇다면 문재인 정부 주택시장의 투기장적 특징을 반영해 새로 꾸민 모형은 그 predictive power가 그렇지 않은 모형에 비해 더 우수해야 합니다.
거래량 변수, 가격의 변동성 변수 등 투기장 지수가 없는 모형을 이용해 2022.5 이후 서울 주택가격 추세를 추정하면 <그림 1>을 얻습니다. 투기장 지수를 포함한 모형은 아래와 같습니다.
내생변수: Price, Debt, 월간 주택거래량 Sales_volume, 월간 거래가격의 표준편차 Std_dev
외생변수: Park, Moon, Pandemic
출처: 2024.6.3 토론문
<그림 1> Mean reversion in the model without speculation indexes
출처: <첨부 1>
<그림 2> Mean reversion in the model with speculation indexes
<첨부 1>에 따라 추정한 VAR모형을 이용해 2022.5 정권 교체 후 서울 집값을 예측하면 <그림 2>를 얻습니다. 이 그림에서 'Predicted'는 Moon 변수를 제거한 후 유도한 주택가격 예측곡선입니다. predicted value = 추정한 회귀계수× actual value of the explanatory variables이라는 일반적인 방식에 따라 유도했습니다. 실제 가격을 과대 추정하지만 정권교체와 더불어 가격추세가 전환되었음을 명확하게 보여주고, 무엇보다 <그림 1>보다 좀 더 실제 집값에 근접합니다. 추정기간이 2022.5에서 멀어질 수록 근사 오차가 커집니다. 예측하면서 자주 보게되는 일반적인 현상입니다. <그림 2>와 달리 변동성 지수로 다른 지수, 이를테면 IQR을 이용해도 결과는 비슷합니다. <첨부 2> 참고.
이들 그림이 주는 메세지는 명확합니다.
[시사] 정부요인을 빼고 서울 집값을 논하는 것은 별의미가 없다.
비록 2003년부터 2022.4까지 자료를 이용해 모형을 추정했지만, 이 모형의 설명력은 해당 기간의 범위를 넘습니다. 서울 집값은 진보/보수의 상이한 정권/정책요인이 만들어낸 순환변동이고, 이런 순환변동은 최소 윤석열 정부 초기까지 적용됩니다.
출처...<첨부 3>
<그림 3> 서울의 집값
출처...<첨부 4>
<그림 4> 2022.5 전후 서울의 집값
<그림 3>에서 보듯이 2022년 봄 정권교체 전후 집값은 수평구간이 존재합니다. # 표시가 된 곳은 문재인 정부의 부동산대책이 마지막으로 발표된 시점이고 $ 표시가 된 곳은 6달 후(2021.12)로서 정부대책이 집값이 미치는 영향의 90%가 실현된 시점입니다. 주택이 투기자산의 특성을 가지면 가질수록 장래 시장여건의 예상 변화가 현재 가격에 많이 반영될 것입니다. 전에 보았던 Xiong의 그림도 그런 시각을 반영한 pricing model이었습니다. 이때 정권교체에 대한 기대가 반영되면 그런 기대가 현재의 주택가격에 반영될 수 있습니다.
VAR(1) Price 회귀식에서 ΔP(t)=-0.12+0.30*Moon(t)+여타 항을 구할 수 있는데, 2022.5를 t=0으로 놓으면 다음과 같은 식을 얻을 수 있습니다.
문재인 정부시기, P(t) = 경과월*(-0.12+0.30) = 경과월*(0.18) (식1)
윤석열 정부시기, P(t) = 경과월*(-0.12) (식2)
이 식을 그림으로 그리면 <그림 4>에서 봉우리 모양의 곡선이 됩니다. 2022.5 전후로 가격추세가 급격하게 바뀝니다. 그런데 문재인 정부 말 정권교체의 가능성이 만약 50%라면 (식1), (식2)에서 기울기는 0.18과 -0.12의 평균 +0.03으로 주어집니다. P(t)=+0.03t를 정권교체 시기 전후에 덧그리면 대충 <그림 4>에서 완만한 경사구간을 더할 수 있고, 이 구간은 <그림 3>에서 2022년 봄 전후 수평구간에 대응합니다. 장래 주택가격의 변동을 반영해 pricing한 formal model의 예는 Adam et al.(2012)를 참고하세요.
이상 분석결과를 종합하면, 서울 집값은 진보/보수의 상이한 정권/정책요인이 만들어낸 순환변동으로서, 2003년 노무현 정부 때부터 2022년 5월 정권교체 후 장기 추세로 복귀를 마친 2023년까지 정부요인을 제하고 서울 집값을 설명하기 어렵습니다.
<그림 4>는 아래 김수현 박사의 설명방식과 대조적입니다.
"...그러다 2021년 하반기부터 유동성을 축소하기 시작하고, 특히 2022년 미국 발 금리 인상이 본격화되자 집값은 뚝뚝 떨어지고 말았다". 출처: 김수현(2023: 81), 2024.6.3 토론문에 등장
금리 때문이 아닙니다. 정책의 효과가 다하고(당시는 청와대와 국토부는 정신적 공황기) 가격결정 정부요인이 불확실한 정권교체기였습니다. 정권교체 후는 그런 가격결정 요인이 가격에 반영되었던 것이고요. 여기서도 과잉유동성과 연방금리라는 변수를 이용해서 이뻐 보일 때 아무거나 마구 가져다 썼습니다. 둘이 밀접한 관련이 있다는 것은 맞지만 그렇다고 실제 그렇게 필요할 때 가져다 쓸 수 있는지는 또 다른 문제입니다. 그렇게 하지 말라고 대학에서 대학원에서 선생님들한테 교육 받았고 그렇게 학생들 지도하고 있을 텐데, 자신의 신념과 관련된 주제가 등장하면 그때부터는 초등학생하고 구분 안되는 논변을 합니다.
금리의 설명력은 전에 자세하게 설명한 적이 있는데, 정신 나간 소리하는 사람이 김수현 박사 말고도 많아서 아래 다시 요약해 올립니다. 제발 정신 좀 차리세요.
1. 2024.4.22 토론문...미국 연방금리 이용시 0의 하한으로 인한 회귀계수의 편향 문제 발생. 이런 문제를 지닌 발표논문 사례는 해당 토론문 참고.
2. 2024.6.3 토론문
(1) 한국의 CD금리 vs. 미국의 연방금리 vs 서울 집값: 김수현(2023: 81)에서 언급한 내용(위 파란색 인용문). 당시 3자간 관계는 불명확. 여기 그림에서 보듯이.
(2) FRB rates vs. shadow rates: FRB rates는 여기 보듯이 편향문제가 있어서 곤란. shadow rates도 문 정부 출범 초 대비 임기 말 사이에 변동 거의 없었음(0.14%p 차이). 만약 이들 지수가 일부 시기를 잘 설명해도, 문재인 정부 때 집값이 60포인트에서 100포인트(KB지수)까지 상승한 현상을 이 금리론을 이용해 설명할 수 있어야 함. 박진백 외(2021)가 이런 어려움을 구조전환론을 주장하면서 돌파해 보려 했으나 이 논문은 게재되지 말았어야 할 논문. 따라서 금리론은 predictive power에도 문제가 있고 따라서 그렇게 구성한 모형은 유용한 모형이 아님.
(3) 한국과 미국의 기준금리: 문 정부 60달 동안 각각 0.5%p, 0.14%p 변화. 만약 이들 지수가 일부 시기를 잘 설명해도, 문재인 정부 때 집값이 60포인트에서 100포인트까지 상승한 현상을 이 금리론을 이용해 설명할 수 있어야 함. 박진백 외(2021)가 이런 어려움을 구조전환론을 주장하면서 돌파해 보려 했으나 이 논문은 게재되지 말았어야 할 논문. 따라서 금리론은 predictive power에 문제가 있고 따라서 그렇게 구성한 모형은 유용한 모형이 아님. 그냥 엉터리.
다음 주에는 정부요인이 서울의 아파트 분양시장에서 어떻게 작용했는지 알아봅니다. 이번엔 진보정권의 다른 모습을 기대합니다.
이혁주 드림
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
Adam, Klaus, Pei Kuang and Albert Marcet, 2012. House Price Booms and the Current Account. National Bureau of Economic Research Working Paper 17224. Cambridge, Massachusetts: National Bureau of Economic Research.
Miller, Edward M., 1977. Risk, Uncertainty, and Divergence of Opionio. Journal of Finance, 32(4): 1151-1168.
Xiong, Wei, 2013. Bubbles, Crises, and Heterogeous Beliefs, NBER Working Paper 18905. Cambridge, Massachusetts: National Bureau of Economic Research.
<첨부 1> Mean reversion 시연
# 문재인 정부시기 Debt의 평균은 0.633. 이렇게 증가한다고 보고(실제 자료 이용 권장, 시간 절약상 이렇게 함...), 나머지 자료는 실측치를 이용해 임기말과 이후 Price의 trajectory를 추정할 수 있다.
#실제 가격 2022.2~2023.12(이 기간에 대해서만 시연)
pr_level=array(c(100.092,100.1466631,100.2562984,100.4689667,100.6032851,100.6381353,100.4918613,100.2972065,99.62692713,98.21647968,96.80952136,94.78404736,93.6495438,92.55291811,91.65568645,90.85414053,90.59537961,90.38963268,90.33858458,90.57788476,90.78696527,90.82149118,90.72548663),c(23,1))
pr=diff(pr_level) # 22 entries from 2022.3 to 2023.12
debt=array(0.6337,c(22,1))
#투기장 지수 준비
Price_old=read.csv(file.choose(),header=T) # 자료 내려받기. 자료는 매월 (아파트 면적, 아파트 거래가격)가 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성. )
APdata1=cbind(Price_old[,69:432]) # data from 2008.11 to 2023.12
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
med=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata1[,to]))
data1=cbind(APdata1[1:count[n],to])
sales_vol[n]=sum(data1) #매월 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) # 거래주택 가격들의 월 표준편차, 변동성 지수
med[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
# Prepare actual times series.
tem=sales_vol
Sales_vol=diff(tem)
Sales_vol=Sales_vol[160:181]/1e8 # Starts from 2022.3
tem=std
Std=diff(tem)[160:181] # Starts from 2022.3
# Prepare the time series of actual values to simulate the predicted time series from 2022.3 to 2023.12.
endo_var=cbind(pr,debt,Sales_vol,Std) # Dataset of actual values starting from 2022.3
colnames(endo_var)=c('Price','Debt','Sales_vol','Std')
exo_var=array(0,c(22,3)) # Time series for Park, Moon, and Pandemic from 2022.3 to 2023.12
exo_var[1:18,3]=1 # Pandemic ends on August 31, 2023.
exo_var[1:3,2]=1 # Moon ends on 2022.5.
colnames(exo_var)=c('Park','Moon','Pandemic') # Starts from 2022.3
#We prepare the dataset to estimate the VAR(2).
sales_vol=diff(sales_vol) /1e8
sales_vol = sales_vol[1:161] #2008.12 to 2022.4
std=diff(std)
std=std[1:161]
start_date=as.Date('2008-11-01')
time_index <- seq(from = start_date, by = "month", length.out =182)
count_Moon <- count[time_index >= as.Date("2017-05-01") & time_index <= as.Date("2022-04-01")]
summary(count_Moon)
Min. 1st Qu. Median Mean 3rd Qu. Max.
858 3105 5020 6008 8174 15613
Data=read.csv(file.choose(),header=T) ## 자료 내려받기. 여기서
View(Data)
attach(Data)
#Estimate the VAR(2) to simulate the mean reversion.
remove(Park,Moon,Pandemic) # Just in case
endo=cbind(Price,Debt, sales_vol,std)
exo=cbind(Park,Moon,Pandemic)
library(vars)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
B=Bcoef(model)[,10:12] # coefficients of Park, Moon, Pandemic
b=Bcoef(model)[,11]
nu=Bcoef(model)[,9]
y=array(0,c(4,30))
y[,1]=b # Effects of Moon=+1 on the endogenous variables
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # 31.314포인트 인상요인으로 작용했다고 나오면, 지금까지 올바르게 수행한 것이 .
# Predict the 1st differenced values y[,] for 2022.5 to 2023.12.
y=array(0,c(4,22))
# 2022.4 2022.3 2022.3
y[,1]=nu+A1%*%endo_var[2,]+A2%*%endo_var[1,]+B%*%exo_var[3,] # Prediction for 2022.5
y[,2]=nu+A1%*%endo_var[3,]+A2%*%endo_var[2,]+B%*%exo_var[4,] # Prediction for 2022.6
for(n in 3:20){y[,n]=nu+A1%*%endo_var[n+1,]+A2%*%endo_var[n,]+B%*%exo_var[n+2,]}
accumulate=array(0,c(22))
accumulate[1]=y[1,1] # From 2022.5
for(n in 2:22){accumulate[n]=sum(y[1,1:n])}
predicted=array(0,c(8)) # From 2022.5
for(n in 1:22){predicted[n]=pr_level[3]+accumulate[n]}
plot(pr_level[4:23],type='l',xlab='Months elapsed since 2022.4',ylab='KB Price index',ylim=c(80,102),lwd=1.5)
# Starting from 2022.5
lines(predicted,col='red',lwd=1.5) # Starts from 2022.5
text(15,89,'Actual(윤석열 정부)')
text(15,97,'Predicted') # <그림 2> 완성
<첨부 2> Mean - median를 변동성 지수로 이용할 때
# Prepare actual times series.
tem=range
Half_range=diff(tem) # Starts from 2022.3
Half_range=Half_range[160:181]/1e4
# Prepare the time series of actual values to simulate the predicted time series from 2022.3 to 2023.12.
endo_var=cbind(pr,debt,Sales_vol,Half_range) # Dataset of actual values starting from 2022.3
colnames(endo_var)=c('Price','Debt','Sales_vol','Half_range')
exo_var=array(0,c(22,3)) # Time series for Park, Moon, and Pandemic from 2022.3 to 2023.12
exo_var[1:18,3]=1 # Pandemic ends on August 31, 2023.
exo_var[1:3,2]=1 # Moon ends on 2022.5.
colnames(exo_var)=c('Park','Moon','Pandemic') # Starts from 2022.3
# Estimate the VAR model.
range=diff(range)/1e4
range=range[1:161]
endo=cbind(Price,Debt, sales_vol,range)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
B=Bcoef(model)[,10:12] # coefficients of Park, Moon, Pandemic
b=Bcoef(model)[,11]
nu=Bcoef(model)[,9]
y=array(0,c(4,30))
y[,1]=b # Effects of Moon=+1 on the endogenous variables
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # 32.189 points. 이 숫자 나오면 지금까지 올바르게 수행한 것이 됨.
# Predict the 1st differenced values y[,] for 2022.5 to 2023.12.
y=array(0,c(4,22))
# 2022.4 2022.3 2022.3
y[,1]=nu+A1%*%endo_var[2,]+A2%*%endo_var[1,]+B%*%exo_var[3,] # Prediction for 2022.5
y[,2]=nu+A1%*%endo_var[3,]+A2%*%endo_var[2,]+B%*%exo_var[4,] # Prediction for 2022.6
for(n in 3:20){y[,n]=nu+A1%*%endo_var[n+1,]+A2%*%endo_var[n,]+B%*%exo_var[n+2,]}
accumulate=array(0,c(22))
accumulate[1]=y[1,1] # From 2022.5
for(n in 2:22){accumulate[n]=sum(y[1,1:n])}
predicted=array(0,c(8)) # From 2022.5
for(n in 1:22){predicted[n]=pr_level[3]+accumulate[n]}
plot(pr_level[4:23],type='l',xlab='Months elapsed since 2022.4',ylab='KB Price index',ylim=c(80,102),lwd=1.5,main='변동성 지수로 평균가격 - 중위가격 사용시')
# Starting from 2022.5
lines(predicted,col='red',lwd=1.5) # Starts from 2022.5
text(15,89,'Actual')
text(15,97,'Predicted') # 본문의 <그림 5>와 차이 거의 없음.
<그림 A1> 평균회귀 시연
<첨부 3> <그림 3> 그리기
KB=read.csv(file.choose(),header=T) # 내려받기
View(KB)
attach(KB)
dates <- seq(from=as.Date("1986-01-01"), by="month", length.out=457)
start_date <- as.Date("2016-01-01")
start_index <- which(dates >= start_date)[1]
dates_subset <- dates[start_index:length(dates)]
Seoul_subset <- Seoul[start_index:length(Seoul)]
plot(dates_subset, Seoul_subset, xlab='Year', ylab='KB price index', type='l', lwd=1.5)
abline(v=as.Date('2017-05-01'),lty='dotted')
abline(v=as.Date('2022-05-01'),lty='dotted')
text(as.Date('2019-10-01'),90,'문재인 정부',cex=1.3)
text(as.Date('2021-06-01'),93,'#',cex=1.5,col='red')
text(as.Date('2021-12-01'),99.8,'$',cex=1.5,col='red') # <그림 3> 완성
<첨부 4> <그림 4> 그리기
t=1:12
price=0
price[1:12]=0.18*t[1:12] # 문재인 정부시기, P(t)=경과월*(-0.12+0.30) = 경과월*(0.18)
price[13:24]=-0.12*t[1:12]+price[12] # 윤석열 정부시기, P(t)=경과월*(-0.12)
x=-11:12
plot(x,price,type='b',xlab='2022.5 전후 월',ylab='집값',yaxt='n')
abline(v=0,lty='dotted')
세 분 선생님은 보시지요.
<요약> 지난 주까지 알아보았던 기성주택, 즉 재고주택(아파트) 분석에서 이용했던 분석틀을 신축 아파트가 거래되는 분양주택시장에 적용하면 두 시장이 어떻게 다르고 비슷한지 전반적 특징을 파악할 수 있다. 기술(記述)통계를 이용해 알아보면, 문재인 정부시기 분양가는 재고가보다 더 빠르게 올랐고, 거래건수는 임기내내 빠르게 떨어졌다. 재고주택의 거래량은 임기 평균 별다른 변화가 없던 것에 비해 많이 다른 모습이다. 분양가의 산포도는 이전 정부에 비해 확대되어 가격상승 요인으로 작용한 것으로 추정되지만, 이 분포 역시 재고주택가격의 산포도가 문재인 정부시기 확대된 것보다는 덜하다. 이런 관찰결과를 수요-공급분석 틀로 옮기면, 분양 및 재고주택시장에서 공통적으로 수요곡선과 공급곡선이 모두 위쪽으로 이동했다. 그러나 이동한 정도는 두 시장에서 차이가 있었다. 즉 분양주택시장에서 공급곡선의 상향 이동(=좌측 이동)이 재고주택시장에서보다 컸고, 그 결과 분양가가 재고가보다 더 올랐다. 한편 문재인 정부시기에 재고가와 분양가 상승분에서 팬데믹 기여분을 제하고 오른 나머지 모두 정부요인 때문에 올랐다. 2022년 정권이 교체되고 난 후 문재인 정부시기 이상 가격변동(abnormal variation)이 분양가에서 제거되었고, 분양가는 이전 보수정부의 가격추세로 복귀했다(평균회귀). 즉 주택가격의 평균회귀는 재고시장과 분양시장을 가리지 않고 모든 시장에서 관찰되었다.
지금까지 정부요인이 재고주택의 가격 즉 재고가에 미친 영향을 분석했습니다. 이제 관심을 돌려서 분양가에 미친 영향도 알아보겠습니다. 결론은 재고가, 분양가를 가리지 않고 문재인 정부는 집값을 올렸는데, 분양가는 더 심하게 올렸다입니다.
지금부터 아래 자료를 이용해 분석합니다.
재고가...KB국민은행 자료
분양가 및 거래건수...국토부실거래가 공개 시스템
출처...<첨부 1>, 국토부 실거래가공개시스템
<그림 1> 서울 아파트의 분양가와 재고가 변화 추세
출처...<첨부 1>, 국토부 실거래가공개시스템
<그림 2> 분양주택의 월간 거래건수
출처...<첨부 1>, 국토부 실거래가공개시스템, IQR(interquartile range) = 제3사분수 - 제1사분위수
<그림 3> 분양주택가격의 분포
출처...2024.8.5 <그림 5>, KB지수. 같은 색 수직선 사이의 거리는 IQR. 빨간색 선은 문 정부 마지막 12달, 검은색 선은 박근혜 정부 마지막 12달
<그림 4> 재고주택가격의 분포
<그림 1>에 따르면 문재인 정부기간 동안 분양가가 재고가보다 더 빠르게 올랐고, 2000년 팬데믹 이후 두 가격 모두 상승세가 강화되었습니다. <그림 2>에 따르면 거래건수는 임기 중 계속 감소하여 2020.8부터 임기가 끝날 때가 월간 거래건수가 100건도 안 되었습니다. 분양주택시장은 임기중 freezing 상태로 갔던 것 같습니다. 임기 말 거래건수가 지나치게 작아서 <그림 1>에서 보듯이 분양가 월간 평균이 들쑥날쑥하고 그 추세는 정권교체 후까지 지속됩니다(중위가격도 마찬가지). 분양가 변수를 이용해 추정한 모형을 사용해 분양가를 예측하면 좀 문제가 발생할 것 같습니다.
분양가의 상승, 재고가 대비 분양가의 빠른 상승을 올바르게 이해하자면 가격분포의 산포도와 거래량에 주목해야 합니다. 지난 번 재고가 분석에서 얻은 교훈입니다.
첫째, <그림 3>에서 보면 분양가 분포의 산포도가 문재인 정부 들어서 확대되기는 했지만, <그림 4> 재고가 분포의 산포도에 비해 확대 정도가 덜 합니다. <그림 3>, <그림 4>에서 수직선은 IQR(interquartile range)로서 통계학 교과서에서 흔히 범위(range)라고 부르는 통계량입니다. 전에 보았듯이 가격분포의 분산 확대는 시장가격에 대한 기대가 문재인 정부를 거치면서 시장참여자 사이에 더욱 부정적으로 변했다는 말입니다. 이는 수요곡선의 전반적 shift up과 직결된다는 점, 지난 번에 Miller(1977)의 그림을 통해 확인했습니다. 2024.8.7 토론문에서 재고주택시장을 분석하면서 당시 <그림 3>에서 동일한 관찰을 했습니다. 경제학 원론의 설명을 다시 빌리자면, 재화의 공급전망이 불투명해질 때 금기(今期) 재화수요가 증가하는데 이를 수요곡선의 shift out이라고 부릅니다. 수요관리 중심의 부동산정책이 시장불안을 야기하고 집값을 올린다는 시장주의자의 주장이 재고 및 분양시장에서 실제로 문재인 정부 때 관찰되었습니다. 그 연장선상에서 투기억제정책의 완화는
[투기 조장효과] 투기거래를 증가시키기도 하지만
[거래 가격대 확장] 거래가격대 확장과 그로 인한 가격인하 효과도 있고
[공급심리 안정효과] 공급전망에 긍정적으로 작용하여 수요곡선을 하향 안정화하는 효과도 공존한다(수요곡선 반시계 방향으로 회전)
는 말씀입니다. 문재인 정부는 투기 조장효과를 중시하고 나머지 두 효과는 무시했습니다.
둘째, 가격분포가 두 시장에서 유사하게 확대되었음에도, 재고가에 비해 분양가가 더욱 빠르게 상승한 것은 분양주택의 거래량이 재고주택의 거래량보다 더 빠르게 위축되어 발생한 현상 같습니다. 다음에 통제된 환경에서 측정한 후 이런 추측이 올바른 것인지 알아봅시다.
한편 임기 후 분양가는 문재인 정부요인의 소멸과 더불어 주택가격이 상승세를 멈춘 것 같습니다. <그림 1>은 2024.1까지 분양주택 거래가격의 월간 평균 시계열 추세입니다. 임기 말이 가까워지면서 거래건수가 급격하게 감소하고 월간 평균의 변동성이 통계원리에 따라 크게 확대되지만, 과거와 같은 추세는 분명히 꺽이는 모습이 관찰됩니다. 문재인 정부시기 이상 가격변동이 제거된 가격추세가 이전 보수정부 때 가격추세로 복귀합니다. 일종의 평균회귀입니다. 재고가의 경우 급락을 동반한 가격의 정상화였다면, 분양가의 경우 상승속도의 평탄화를 동반한 정상화라는 차이가 있을 뿐입니다.
<그림 2>에서 보았듯이 임기 말에는 분양주택 거래건수가 지나치게 적어 통계분석에 어려움이 있을 것 같다고 했습니다. 이 점을 고려해 정부요인을 정권, 정책변수 등 지금까지 사용했던 측정방식을 모두 이용해서 유의도를 검토해 보겠습니다.
모형 1: 내생변수...재고가, 분양가, 가계부채, 정부대책 <-- 여기 그림에서 방식 2 빨간색 선을 이용한 방식
외생변수...팬데믹
모형 2: 내생변수...재고가, 분양가, 가계부채, 정부대책 <-- 여기 그림 방식2에서 alpha를 측정하는 방식
외생변수...팬데믹, 정부대책*Moon
모형 3: 내생변수...재고가, 분양가, 가계부채 <-- 여기 그림에서 왼쪽 패널에 있는 방식
외생변수...Park, Moon, 팬데믹
지금까지 수행한 분석을 통해 얻는 교훈은 이렇습니다.
[교훈] 진보정권 집권기에 오른 서울 집값(재고가) 대부분은 정부대책의 반복적 발표와 시행 때문이었다.
설명 1: 여기서 정부대책을 '동질적'인 것으로 hypothesize하고 측정해 본 결과 정부대책 더미 회귀계수가 통계적으로 유의했다는 것은 진보정권에서 반복적 정책개입을 통해 가한 시장 충격이 '평균적'으로 유의미하게 집값을 올렸다는 말
설명 2: 정부대책 더미도 정권 더미와 같은 원리에서 사용한 것. 본질적 차이가 있는 것은 아님. 그 이유는 두 가지. 첫째, 정권 더미 Moon(외생변수)의 회귀계수는 임기중 정권요인이 매월 집값에 미친 평균적 영향(단위: 포인트/월). 마찬가지로 정부대책 더미의 회귀계수는 1회 정책개입이 임기중 평균적으로 주택가격에 미친 영향(포인트/회) --> 회귀모형에서 정권 더미의 사용에 동의한다면, 마찬가지로 정부대책 더미의 사용에 이의를 제기하면 안 됨. 둘째, 정책개입 빈도와 정권 더미의 level변수간 상관계수가 노무현 정부 이래 0.94 이상. 통계적으로 훌륭한 proxy variable.
Q: 왜 level변수 사이의 상관계수를? 1차 차분한 변수 사이의 상관계수가 아니고... ???
설명 3: 역사상 관찰되었던 다수의 가격거품 사례와 달리 유동성의 풍부한 공급(예컨대 Quinn and Truner(2020) 참고)이 없어도 정부의 반복적 시장개입으로 인해 장기간 자산가격이 상승하고 거품이 발생했음. 문재인 정부시기 집값 거품의 독특성.
재고가에서처럼 분양가의 경우도 비슷한 관계가 성립할 것으로 예상됩니다. 이들 모형을 이용해 정부요인이 주택가격 변동의 원인변수인지 검정하면 <표 1>과 같습니다. 보수정권의 책임여부를 판단하는데 편리한 모형 2와 모형 3을 이용했습니다. 보수정권에서 정부요인은 분양가과 재고가 모두의 상승요인으로서 유의하지 않습니다. 반면 문재인 정부의 정부요인은 분양이든 재고이든 주택가격 상승을 잘 설명합니다.
<표 1> 정부요인의 주택가격 설명력 검정(그랜저 검정)
--------------------------------------------------------------------------------------------------------------------------------
검정결과
----------------------------- 정부요인은
p value 판정 집값의 상승요인?
--------------------------------------------------------------------------------------------------------------------------------
모형 2 이용 보수정부에서
정책 --> 재고가 0.921 비유의 증거 없음
정책 --> 분양가 0.762 비유의 증거 없음
진보정부에서
정책 --> 재고가 0.001 유의 Yes
정책 --> 분양가 0.019 유의 Yes
모형 3 이용 보수정부에서
정권요인 --> 재고가 0.270 비유의 증거 없음
정권요인 --> 분양가 0.777 비유의 증거 없음
진보정부에서
정권요인 --> 재고가 0.000 유의 Yes
정권요인 --> 분양가 0.028 유의 Yes
-------------------------------------------------------------------------------------------------------------------------------
출처...<첨부 3>, 모형 2, 3에서는 보수정권의 영향을 진보와 분리해 유의도를 측정하는 것이 가능. 보수정부에서 영향이 비유의로 나온 이유는 Price 회귀식에서 보수정부대책의 회귀계수가 lag 1일 때 0.005, lag 2일 때 0.022로서 상호작용항의 계수 0.091, 0.133보다 매우 작기 때문임.
모형 1, 3을 이용해 문재인 정부요인이 집값을 얼마나 올렸는지 측정했습니다. <표 1>이 그 결과인데 모형 2는 생략했습니다. 모형 2의 경우는 모형 1보다 조금 더 크게 나옵니다. <표 1>에 따르면 진보정부와 달리 보수정부에서는 시장개입이 주택가격의 상승요인으로 작용하지 않습니다. 전에 보았던 재고가 그림 이것을 연상시킵니다.
<표 2> 문재인 정부시기 요인별로 주택가격에 미친 영향
-------------------------------------------------------------------------------------------------------------
분양가에 미친 영향 재고가에 미친 영향
사용한 ------------------------------------- -----------------------------------
모형 포인트 % 포인트 %
-------------------------------------------------------------------------------------------------------------
모형 1 정부대책 +40.3 81.2 +26.2 68.4
팬데믹 +16.8 33.8 +15.6 40.8
계 +57.1 115.1 +41.8 109.1
모형 3 정권요인 +41.4 83.4 +30.0 78.3
팬데믹 +9.6 19.3 +11.2 29.2
-------------------------------------------------------------------------------------------------------------
실제 +49.6 100.0 +38.3 100.0
-------------------------------------------------------------------------------------------------------------
출처...<첨부 4> 참고. 문재인 정부시기 분양가는 모두 49.59포인트, 재고가는 모두 38.3포인트 올랐음. %는 이들 두 수치 대비 백분율. <첨부 4>에서 plot(x3)을 하면 SumD-->재고가, 분양가 irf를 구할 수 있음. 95% 신뢰구간이 횡축 위에 위치. 즉 신뢰수준 95%에서 정부대책은 분양가와 재고가에 유의한 영향을 준다는 의미.
분양가와 재고가 모두 검토 결과의 신뢰도는 아래와 같은 의문을 적절히 해소하고 측정했는지에 달렸습니다.
‘팬더믹과 같은 불가피한 요인 때문에 상승한...’ 팬더믹 이전 이후의 차이는 있을 수 있지만 주택가격이 팬더믹 시기에 이뤄진 여러 가지 원인에 의해 상승한 것이지 팬더믹으로 인해 상승한 것을 추정할 수 있는가? 따라서 문재인 정부시기와 팬데믹시기가 겹치는 시기가 있는데 이 둘의 영향을 구분해낼 수 있는가? 출처: 심사자 C의 2차 심사평 line 11-14
엄밀히 말해 계량경제학 교과서에서는 심사자 C와 같은 의문에 직접 답하지 않습니다. 일단 측정하고 나서 회귀계수가 편미분의 계수이고 편미분 계수의 성격(definitional property)상 독립적 영향이라고 말합니다. 이런 측정의 전제는 contemporaneous effect를 분리해 측정할 수 있다는 것입니다. 아마 이런 것이 영향을 미쳐 심사자 C와 같은 코멘트가 나왔을 것으로 추측합니다.
전에 이와 유사한 문제에 대해 한번 다루었으므로, 오늘은 다른 측면에서 초보적이지만 매우 중요한 관찰을 하나 하고자 합니다. 학부 공업수학이나 대수학에 나오는 내용입니다. 이를테면 변수 x의 원인변수가 y, z 등 두 가지가 있고 이들 사이의 인과관계를 함수 f(x,y,z)=0이라고 합시다. 세 변수 사이에 성립하는 수식에서 등호 왼쪽으로 변수 모두를 모으면 이런 수식을 얻습니다. 이 식을 전미분(total differentiation)하면
f1dx+f2dy+f3dz=0 (식1)
가 됩니다. 여기서 f1=∂f/∂x, f2=∂f/∂y, f3=∂f/∂z입니다. dx=x-x0, dy=y-y0,dz=y-y0를 이 식에 대입한 후 다시 정리하면 아래 수식을 얻습니다.
f1x+f2y+f3z=k (식2)
이 식에 k=f1x0+f2y0+f3z0로서 상수입니다. 이제 도함수 f1, f2, f3를 (x0,y0,z0)에서 평가(evaluate)하고 그 값을 (식2)에 대입하면 아래와 같은 모습을 합니다.
ax+by+cz=d (식3)
이 식에서 a, b, c, d는 상수입니다. 여기서 x를 주택가격, y, z를 설명변수라고 하면 (식3)은 y, z을 우변으로 이항하고 양변을 a로 나누면 그 결과식은 VAR모형의 Price equation이 됩니다. VAR모형의 다른 회귀방정식도 같은 원리에 따라 유도할 수 있습니다. 그리고 추정상 발생하는 여러 가지 문제(simultaneity bias, sustained effect 등)를 해결하고 이들 수식에 약간의 마사지를 하면 실제 추정에 사용하는 VAR모형의 수식을 얻습니다.
심사자의 말 "이 둘의 영향을 구분해낼 수 있는가"라는 말은 함수 f(x,y,z)를 (식1)처럼 linearize하면 이론상 가능합니다. 쉽게 얘기해 비선형의 복잡한 함수관계, 즉 기하학적으로 말해서 다차원공간상의 곡면(surface)을 어떤 점에서 평면(tangent hyperplane)으로 approximate해 묘사할 수 있습니다. 그리고 관심 변수 축 방향으로 평면의 기울기를 측정하면 됩니다(why).
과연 이런 근사가 얼마나 가능한지는 경험문제이자 그러한 작업의 지식 생산성(knowledge productivity)에 달려 있습니다. 그런데 해보니까 그런 우려 때문에 팔짱 끼고 있는 것보다 유용하고 흥미로운 관찰을 할 수 있었습니다. 따라서 심사자 C의 우려는 제기할 만했지만, 그런 우려에 근거해 여기서 행하는 이런 류 지적 노력의 가치를 전면 부정할 만큼 compelling하지는 않습니다. 이런 우려가 정당한 reject 사유라면, VAR모형을 이용해 수행한 국내외 논문 모두 게재 불가이고 게재 철회 대상입니다. 과도한 우려는 사람을 불가지론의 함정에 빠지게 합니다. 심사평으로 보면 해당 모형을 실제로 사용해서 논문작성까지 해 본 이력의 소유자 같습니다.
진실을 마주하는 것은 누구에게나 힘든 일 같습니다. 생물학적 호불호 감정에 휘둘렸고 대단히 무리한 코멘트를 했습니다.
이혁주 드림
Quinn, William and John D. Turner, 2020. Boom and Bust: A Global History of Financial Bubbles. Cambridge, UK: Cambridge University Press.
<첨부 1> <그림 1>, <그림 2> 그리기
KB_newprice=read.csv(file.choose(),header=T) #KB 재고가 1986.1-2024.1 여기 457 months
attach(KB_newprice)
P_new=read.csv(file.choose(),header=T) # 자료 내려받기. 2008.1 to 2024.4, 392 data columns
APdata2=cbind(P_new[,1:(392-6)]) # 2008.1 to 2024.1
APdata2=cbind(APdata2[1:350],0,0,APdata2[353:(392-6)]) # 2022.8에는 서울에서 거래건수=0.
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
Q1=0
Q3=0
skew=0
med=0
kurt=0
avg=0
library(moments)
for(n in 1:193){from=1+2*(n-1) # 2008.1부터 2024.1월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata2[,to])) #월간 거래건수. na라고 입력된 data cell 제외 숫자 입력된 cell 개수
data1=cbind(APdata2[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, variability 지수
med[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
Q1[n]=quantile(data1,0.25)
Q3[n]=quantile(data1,0.75)
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
count[176]=0 # 이거 안 하면 1590이 입력되어 있음
sales_vol[176]=(sales_vol[175]+sales_vol[177])/2 # 결측치 자료 기입
std[176]=(std[175]+std[177])/2
med[176]=(med[175]+med[177])/2
coef_var[176]=(coef_var[175]+coef_var[177])/2
range[176]=(range[175]+range[177])/2
avg[176]=(avg[175]+avg[177])/2
start_date=as.Date('2008-01-01')
time_index <- seq(from = start_date, by = "month", length.out =(386/2)) # 2008.1 to 2024.1 created
# Define the start and end dates
start_date_plot <- as.Date('2010-01-01') # ChatGPT가 작성해 제공한 코드
end_date_plot <- as.Date('2024-01-01')
# Find the indices corresponding to the start and end dates
start_index <- which(time_index == start_date_plot)
end_index <- which(time_index == end_date_plot)
# Subset the data
time_index_subset <- time_index[start_index:end_index]
avg_subset=avg[start_index:end_index]
plot(time_index_subset, avg_subset/1000,ylim=c(0,280),typ='l',xlab='',ylab='', lwd = 1.5,cex.lab=1.2)
lines(time_index_subset,Seoul[289:457],col='red')
abline(v=as.Date('2017-05-01'),lty='dotted')
abline(v=as.Date('2022-05-01'),lty='dotted')
text(as.Date('2020-01-01'),200,'문재인 정부')
text(as.Date('2020-01-01'),50,'재고가(KB지수)',col='red')
text(as.Date('2020-01-01'),100,'분양가(단위: 1천만원)',col='red') # <그림 1> 완성
plot(time_index, count,type='l',xlab='',ylab='거래건수/월', lwd = 1.5,cex.lab=1.2)
abline(v=as.Date('2017-05-01'),lty='dotted')
abline(v=as.Date('2022-05-01'),lty='dotted')
text(as.Date('2020-05-01'),600,'문재인 정부')
abline(h=0) # <그림 2> 완성
<첨부 2> <그림 3> 그리기
2016.5 - 2017.4: col. 202/2 - 224/2
2021.5 - 2022.4: col. 322/2 - 344/2
P_new=read.csv(file.choose(),header=T) # 자료 내려받기. 2008.1 to 2024.4, 392 data columns
year1=0
year2=0
for(yr in 1:2){if(yr==1){here=202}
else {here=322}
data1=0
for(n in 1:12){at=here+2*(n-1)
count[at]=sum(!is.na(APdata2[,at])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기
x=array(c(APdata[1:count[at],at]),c(count[at],1))
data1=rbind(data1,x)}
if(yr==1){year1=data1[2:length(data1)]/1e4}
else {year2=data1[2:length(data1)]/1e4}
}
#We have collected two sets of P_new data for 2016.5 to 017.4 and 2021.5 to 2022.4.
breaks <- seq(0, 30, by = 2) # Adjust breaks to ensure consistent binning # ChatGPT의 도움을 받아 작성
Price_cut1 <- cut(year1, breaks = breaks, include.lowest = TRUE)
frequency_table1 <- table(Price_cut1) # Frequency table for the first plot
Price_cut2 <- cut(year2, breaks = breaks, include.lowest = TRUE) # Categorize the second data set
frequency_table2 <- table(Price_cut2) # Frequency table for the second plot
midpoints <- head(breaks, -1) + diff(breaks) / 2 # Midpoints of the bins
plot(midpoints, as.numeric(frequency_table1) / length(year1), type = "b", pch = 19, main ='', xlab = "주택가격(억원)", ylab = "상대도수", xlim = c(0, 30),cex.lab=1.5)
abline(v=quantile(year1,0.25),lty='dotted',lwd=1.5)
abline(v=quantile(year1,0.75),lty='dotted',lwd=1.5)
lines(midpoints, as.numeric(frequency_table2) / length(year2), type = "b", pch = 19, col = "red")
abline(v=quantile(year2,0.25),lty='dotted',col='red',lwd=1.5)
abline(v=quantile(year2,0.75),lty='dotted',col='red',lwd=1.5)
text(6,0.3,'박 정부',cex=1.5)
text(6,0.26,'마지막 1년',cex=1.5)
text(15,0.3,'<-IQR->',col='red')
text(23,0.1,'문 정부 마지막 1년',cex=1.5,col='red') # <그림 3> 완성
<첨부 3> <표 1> 만들기
#모형 2를 이용할 때
library(dplyr)
D=abs(SumD)
D_Moon=D*Moon
D_Moon.1=lag(D_Moon) # 1st entry=NA
D_Moon.2=lag(D_Moon,2) # 1st two entries=NA
D_Moon.1[1]=0
D_Moon.2[1:2]=0
library(vars)
endo=cbind(P_old.d,P_new.d,Debt.d,D)
exo=cbind(Pandemic,D_Moon.1,D_Moon.2)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,0, 1,1,1,0, 1,1,1,1, # 보수정책 --> 재고가
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.921
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, # 보수정책 --> 분양가
1,1,1,0, 1,1,1,0, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.762
C=matrix(c(1,1,1,0, 1,1,1,0, 1,1,0,0, #진보정책 --> P_old.d (total)
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.00196
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,0,0, #진보정책 --> P_old.d (marginal)
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.054
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, #진보정책 --> P_new.d (total)
1,1,1,0, 1,1,1,0, 1,1,0,0,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,4) # 0.0192
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, #진보정책 --> P_new.d (marginal)
1,1,1,1, 1,1,1,1, 1,1,0,0,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.170
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, #P_old.d--> P_new.d
0,1,1,1, 0,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.0048
C=matrix(c(1,0,1,1, 1,0,1,1, 1,1,1,1, #P_new.d--> P_old.d
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.000265
C=matrix(c(1,1,1,1, 1,1,1,1, 1,0,1,1, #Pandemic--> P_old.d
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.000206
C=matrix(c(1,1,1,1, 1,1,1,1, 1,1,1,1, #Pandemic--> P_new.d
1,1,1,1, 1,1,1,1, 1,0,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.0576
C=matrix(c(1,1,1,1, 1,1,1,1, 1,0,1,1, #Pandemic--> (P_new.d,P_old.d)
1,1,1,1, 1,1,1,1, 1,0,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1,
1,1,1,1, 1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=4)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,2) # 0.00122
#모형 3을 이용할 때
내생변수...재고가, 분양가, 가계부채
외생변수...Park, Moon, 팬데믹
data=read.csv(file.choose(),header=T) # 자료 내려받기
View(data)
attach(data)
endo=cbind(P_old.d,P_new.d,Debt.d,Jeonse.d,CD.d)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,0,1,1, #Park--> 재고가
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=5)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.270
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1, #Park--> 분양가
1,1,1,1,1, 1,1,1,1,1, 1,0,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=5)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.777
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,0,1, #Moon--> 재고가
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=5)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.000
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1, #Moon--> 분양가
1,1,1,1,1, 1,1,1,1,1, 1,1,0,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1),byrow=TRUE,nrow=5)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.028
<첨부 4> <표 2> 작성
#모형 2 이용
library(dplyr)
D=abs(SumD)
D_Moon=D*Moon
D_Moon.1=lag(D_Moon) # 1st entry=NA
D_Moon.2=lag(D_Moon,2) # 1st two entries=NA
D_Moon.1[1]=0
D_Moon.2[1:2]=0
library(vars)
endo=cbind(P_old.d,P_new.d,Debt.d,D)
exo=cbind(Pandemic,D_Moon.1,D_Moon.2)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
b1=Bcoef(model)[,10] # coef column of Pandemic
b2=Bcoef(model)[,11] # coef column of D_Moon.1
b3=Bcoef(model)[,12] # coef column of D_Moon.2
A1[,4]=A1[,4]+b2
A2[,4]=A2[,4]+b3
y=array(0,c(4,30))
y[,1]=array(c(0,0,0,1),c(4,1)) #문 정부시기에 정부대책 1회 발표
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*28 # +26.21 point, 재고가. 26.21/38.3=68.4% 설명
sum(y[2,])*28 # +40.31 포인트, 분양가. 40.31/49.59= 81.2% 설명. 49.59=P_new[160]-P_new[101]
y=array(0,c(4,30))
y[,1]=b1 #Pandemic=+1
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # +15.63 point, 재고가. 15.63/38.3=40.8% 설명
sum(y[2,])*26 # +16.79 포인트. 16.79/49.59=33.85% 설명
# 내생변수...재고가, 분양가, 가계부채 <-- 여기 그림에서 왼쪽 패널에 있는 방식
외생변수...Park, Moon, 팬데믹
# 모형 3 이용
endo=cbind(P_old.d,P_new.d,Debt.d)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:3]
A2=Bcoef(model)[,4:6]
b=Bcoef(model)[,9] # coefficient vector of Moon
y=array(0,c(3,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60
[1] 30.02207
sum(y[2,])*60
[1] 41.40387
b=Bcoef(model)[,10] # coefficient vector of Moon
y=array(0,c(3,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # 11.19
sum(y[2,])*60 # 9.65
세 분 선생님께
<요약> 지난 번에 분양주택시장에서 정부요인이 분양가 상승의 주범이었음을 확인했다. 재고주택시장의 경우 문재인 정부의 정책개입은 투기장 지수를 '직접'(first-order effect) 유의하게 자극했고 이 충격이 다시 재고가의 유의한 상승으로 이어졌다(2024.7.25. <표 2>). 분양주택시장에서 같은 검토를 하면, 정부의 정책개입이 분양주택시장의 투기장적 요소를 직접 자극하지는 않았지만, 분양가와 재고가를 매개로 하여 투기장적 요소와 '간접적'으로 결합하여 주택가격을 인상했다. 따라서 재고시장과 분양시장에서 문재인 정부는 직간접 경로로 시장의 투기장적 요소와 상호작용하면서 재고가와 분양가를 끌어올렸다(재고, 분양시장 일반에서 투기조장-집값 인상론). 그리고 정부의 자극은 주택시장 안에서 (1) 분양가와 재고가 사이에 그리고 (2) 주택가격<-->투기장 요소 사이에 존재하는 두 가지 주택시장내 상승과정을 통해 증폭되었고, 이런 주택시장내 증폭과정이 정부요인이라는 시장 밖 요인에 의해 다시 증폭되는 과정을 28회 반복했다. 이런 2중적 증폭과정은 분양 및 재고 주택가격을 임기내내 끌어올렸다. 이 증폭과정에서 분양가가 재고가보다 더 많이 상승한 것은 문재인 정부기간 동안 분양주택의 거래가 크게 위축되었기 때문인데, 재고가의 경우는 임기중 평균적으로 거래량의 감소가 없었다. 그런데 문재인 정부의 정책개입과 그로 인한 거래량 감소는 주택거래를 더욱 소수의 시장참여자로 국한시켰고, 이때 장래 예상가격의 평균에 변화가 없어도 거래가격은 오르게 된다(Miller, 1977). 문재인 정부기간 동안 분양가가 대폭 상승한 것은 정부가 수요측면에서 투기를 조장하고 공급측면에서 공급을 위축시켜 초래한 정부실패였다.
이번 주에는 분양시장에서 흔히 보는 투기장적 요소를 고려하고 정부요인이 분양가에 미친 영향을 다시 분석합니다. 문재인 정부 부동산정책을 관통하는 일관된 주제어는 '투기'였습니다. 원인론으로서 과잉유동성, 처방으로서 투기억제권역, 대출규제, 초과이익 환수, 양도세 중과, 임대주택사업자 포함 다주택자 규제 등등.
따라서 당시 가격변동 패턴은 투기가 생성한 산물이 되는데, 지금까지 수행한 분석에 따르면 그런 가격변동 패턴을 문재인 정부가 야기했습니다. 즉 기성주택의 가격 즉 재고가의 경우 문재인 정부는 투기를 조장하고 집값을 끌어올린 것이 됩니다.
오늘은 분양주택시장에서 투기조장 가설을 검정하고 분양가격의 정권/정책 주기론을 수립합니다. 오늘 분석에서도 문재인 정부가 투기를 조장했다고 이를 때, 투기라는 말은 Kindleberger 교수의 개념 정의를 따르고, 문재인 정부 시기 가격변동에 대해 문재인 정부가 사용했던 용어를 계속 차용합니다. 뒤에 투기조장의 micro기제도 추가 설명하고, 그 이상으로 이 용어의 적절성에 관해 rationalize합니다.
출처...<첨부 1>, 빨간 선은 6달 이동평균, 빨간색 수직선은 문 정부에서 부동산대책 발표를 통해 시장에 개입한 마지막 달(2021.6).
<그림 1> 월간 평균 분양가 추세
출처...<첨부 1>
<그림 2> 거래건수와 거래금액(상관계수=0.98)
<그림 1>은 분양가격 월간 평균과 6달 이동평균을 그린 그림입니다. 문 정부에서 2021.6에 주요 정부대책으로서 마지막으로 발표한 시점인데 이후 분양가는 이동평균 기준 상승추세를 멈추고 2022.5 정권교체 후에도 그런 추세가 이어지다 2023년 들어 급락하는 모습을 보입니다. 전체적으로 정권교체 후 상승추세를 멈추는 현상, 즉 재고가에서 보았던 평균회귀 현상이 여기서도 관찰됩니다. <그림 2>에서는 거래량이 임기 중 급락하는 현상을 보입니다.
주택가격의 interperiod variability는 이미 주택가격 지수에서 반영했으므로, 다른 2가지 투기장 지수를 산출해서 반영합니다.
(1) 거래물량 지수: 월간 거래된 주택의 수(=거래건수, count), 거래주택들의 월간 거래가격 합계(=거래금액, sales_vol, 단위는 만원)
(2)가격 변동성 지수(intra-month): 월간 거래 주택가격들의 표준편차(주택가격 표준편차, std) 혹은 그 변동계수(coefficient of variation), IQR)interquartile range) 등
이제 투기장 지수를 포함한 모형을 이용해 정부의 정책개입이 분양가에 미친 영향을 살펴보겠습니다. 직전 토론문에서 사용했던 모형 3개 가운데 정부부문과 주택부문의 상호작용을 허용한 모형 즉 모형 1을 이용해 검토합니다.
사용할 모형: 내생변수...재고가, 분양가, 가계부채, 정부대책,
분양주택 투기장 지수 2종 <-- 여기 그림 방식2에서 빨간색 공통선을 측정하는 방식
외생변수...팬데믹
자료: 2009.1 ~ 2022.4
이 모형에서 문재인 정부의 정책개입은 +1, 이전 보수정부의 정책개입은 -1로 변수의 값이 부여되었습니다. 이 점 기억하고 추정결과물 <표 1>을 읽으시기 바랍니다. 여기 그림 방식 2에서 alpha를 측정하는 방식을 이용해도 결과에 큰 차이는 없지만, 문재인 정부시기 정부대책이 집값을 올리는 효과가 더 크게 측정됩니다. 아래 표는 보수적 수치입니다.
<표 1> 정책변수 D와 투기장 지수를 포함한 모형의 검토 결과
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
모형 A 모형 B 모형 C 모형 D 모형 E 모형 F
------------------------------------------------------------------------------------------------- 구분
분양시장의 투기장 count, count, count, sales_vol, sales_vol, sales_vol,
지수로 포함한 변수 std coef_var IQR std coef_var IQR
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
1 정부대책의 영향
2 재고가 21.56 22.66 23.25 21.60 22.66 23.33 정부-->주택부문
3 분양가 35.29 36.60 39.72 35.39 36.54 39.93 정부-->주택부문
4 팬데믹의 영향
5 재고가 18.41 14.41 17.41 18.38 14.43 17.36
6 분양가 19.87 7.43 19.55 19.73 7.49 19.42
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
7 변수의 설명력 검정(p value)
8 정부대책--> 분양가 0.04 0.13 0.01 0.04 0.12 0.01 정부-->주택부문
9 정부대책-->(재고가,분양가) 0.02 0.02 0.01 0.02 0.02 0.01 정부-->주택부문
10 정부대책-->투기장 지수 0.94 0.43 0.79 0.74 0.29 0.57 정부-->주택부문
11 2종
12 정부대책 --> 0.06 0.05 0.05 0.04 0.03 0.03 정부-->주택부문
13 (재고가,투기장 지수)
14 정부대책 --> (분양가, 0.31 0.20 0.22 0.20 0.13 0.14 정부-->주택부문
15 투기장 지수)
16 정부대책 -->(재고가, 0.14 0.08 0.10 0.08 0.05 0.06 정부-->주택부문
17 분양가,투기장 지수 2종)
18 투기장 지수 2종 0.25 0.10 0.21 0.24 0.11 0.19 주택부문-->정부
19 -->정부대책
20 투기장 지수 2종-->분양가 0.70 0.48 0.00 0.89 0.61 0.00 주택부문내 상호작용
21 (재고가,분양가) --> 0.06 0.58 0.00 0.03 0.33 0.00 주택부문내 상호작용
22 투기장 지수 2종
23 재고가 --> 분양가 0.01 0.01 0.00 0.02 0.01 0.00 주택부문내 상호작용
24 분양가 --> 재고가 0.00 0.00 0.00 0.00 0.00 0.00 주택부문내 상호작용
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
주...출처는 <첨부 2>. 내생변수는 분양가, 가계대출, CD 금리, 정부대책 및 투기장 지수 2개. 문재인 정부시기 분양가는 모두 50.37포인트, 재고가는 모두 38.45포인트 상승. 정부대책과 Moon변수의 상호작용항을 이용한 결과물은 <첨부 5> 참고. 분석결과에 변화 없음
line 8, 9에 따르면, 재고가와 분양가 모두 정책개입이 유의한 영향을 미쳤고, line 1~3에 따르면 정책개입은 진보의 경우 재고가와 분양가 모두 상승, 보수의 경우 모두 하락을 의미했습니다. 따라서 재고가, 분양가 모두 집값의 정권/정책주기론이 성립합니다(정권요인 검정과 측정은 생략). 재고가와 분양가 모두 팬데믹 요인을 제외하고 오른 집값 모두 문 정부의 정책개입 때문에 올랐습니다. 문제는 여기 확장모형에서도 문재인 정부의 투기조장-집값 인상 가설이 성립하느냐입니다.
정책개입 --> 투기 조장 -> 분양가/재고가 상승?
line 8 ~ 19에는 정부부문과 주택부문간 상호작용의 모습을 볼 수 있는 통계량이 여럿 있습니다. 전체적으로 정부대책 D는 주택가격에 유의한 영향을 미쳤지만, line 10, 11에 따르면 정책개입이 투기장 지수를 '직접' 자극했다는 가설은 채택되지 않습니다. line 14, 15 경우를 보아도 마찬가지로 정부대책이 (분양가, 투기장 지수)에 미치는 영향이 통계적으로 확인되지 않습니다. 이런 검정결과는 재고가와 대조적입니다. 여기 표에서는(2024.7.25 <표 2>) 정부대책이 재고주택시장의 투기장 지수 2종, 주택가격 포함 투기장 3종 모두를 항상(total effect 기준) '직접' 자극하고 집값을 올렸습니다.
이렇게 정부부문과 주택부문 사이가 투기장 지수를 통해 유의한 '직접' 연결이 관측되지는 않지만, 집값(분양가, 재고가)을 경유하여 통계적으로 유의한 연결고리가 확인됩니다. 우선 line 9, 정부대책-->(분양가,재고가)에서 모형과 관계 없이 모두 유의하고, line 8, 정부대책-->분양가에서 여러 모형에서 정부대책 변수는 유의한 설명변수입니다. 특히 우리가 주목했던 IQR을 사용한 모형 C, F의 경우는 예외 없이 유의합니다. 그리고 이들 집값 변수는 투기장 지수 2종과 line 20, 21에서 보듯이 통계적으로 유의한 관계에 있습니다. 이를 그림으로 표현하면 <그림 3>이 됩니다.
주...<표 1>을 이용해 작성. 이전 버전은 2024.7.22 토론문 <그림 1> 참고. 투기장 지수로 IQR을 이용할 때 <표 1>을 그림으로 표현한 것
<그림 3> '직간접적' 경로를 통한 투기조장론의 개념도: 문재인 정부 사례
주...<첨부 2> 맨 뒤. IQR 변수 range.d가 1 표준편차 증가했을 때 분양가의 시계열적 누적 변화. 점선은 95% 신뢰구간
<그림 4> 분양가의 산포도 IQR up --> 분양가 up
출처...<첨부 2> 뒤쪽, range.d는 IQR, 점선은 95% 신뢰구간
<그림 5> 분양가 up --> 가격분포의 산포도 up
출처...<첨부 5>. 정부대책-->count는 그 유의성이 아직 확인되지 않음. 따라서 이건 가설이고 추가 연구가 필요한 주제. x축의 단위는 100
<그림 6> 정부대책 1회 발표가 분양가 및 거래건수에 미치는 영향(추정)
<그림 3>은 정부부문 --> 주택부문의 유의한 관계, 주택부문내 집값<-->투기장 지수간 유의한 관계를 보여주는데, 이는 재고주택시장과 달리 정부부문과 시장의 투기장적 요소가 주택가격을 매개로 '간접' 연결되어 있다는 것을 뜻합니다.
재고주택시장: 정부대책 --> 투기장 지수 <--> 재고가 상승
분양주택시장: 정부대책--> 분양가 상승 <--> 투기장 지수
따라서 문재인 정부시기에 정부부문은 투기장적 주택시장과 직간접적으로 연결되어 있었고, 문 정부의 반복적 정부개입은 주택부문내 증폭과정을 통해 일부 투기장 지수의 상충적 동태에도 불구하고 시장의 투기성을 강화하고 집값을 지속적으로 5년간 올린 것이 됩니다. 서울의 주택시장은 재고, 분양 가릴 것 없이 투기장이 주택가격 상승에서 중요 구성요소로서 작용했고, 주택부문 내 제한적 증폭과정을 정부가 외부에서 강화하는 2중의 증폭과정을 통해 주택가격을 끌어 올렸습니다.
전체 과정:
내부 증폭과정 외부 증폭과정
(재고가 <--> 분양가) 상승 -------------------> IQR ---------------> (분양가 <--> 재고가 상승) ------------> ... New rounds begin. --> 반복 ...
증거: <그림 S1>, <그림 S2> <그림 5> <그림 4> ↑
<첨부 2> 뒤쪽 정부의 정책개입
내부 증폭과정의 추동요인 세 가지:
(1) 수요측 요인: 시장전망의 교란으로 가격의 산포도 증가 --> 수요곡선 시계방향 회전 --> 가격 산포도 증가 --> 수요곡선 high end 쪽 가격분포의 확대 cf. Miller(1977) Fig.1
(2) 수요측 요인: 투기억제에 따라 거래가 위축되고 거래물건 가격대의 상향 조정
(3) 공급측 요인: 투기억제 대책으로 인한 공급 위축
-->이때 시장 거래가격은 전보다 더 높은 것들을 관찰하게 됨
--> Graphical rendering: 이 그림 참고(2024.8.7 토론문 <그림 7>)
다음 주에는 오늘 수행한 분석결과를 분양주택시장과 재고주택시장의 수요-공급분석 틀로 옮기고 비교하는 작업을 하겠습니다. 그리고 '공급-->집값 상승'이라는 진보의 주택공급무용론에 대한 정책시사에 대해 알아보겠습니다.
이혁주 드림
Miller, Edward M., 1977. Risk, Uncertainty, and Divergence of Opionio. Journal of Finance, 32(4): 1151-1168.
<첨부 1> 분양시장의 투기장적 특징
remove(Park,Moon,Pandemic,SumD,D,Debt)
KB_newprice=read.csv(file.choose(),header=T) #KB 재고가 1986.1-2024.1 여기 457 months
attach(KB_newprice)
P_new=read.csv(file.choose(),header=T) # 자료 내려받기. 2008.1 to 2024.4, 392 data columns
APdata2=cbind(P_new[,1:(392-6)]) # 2008.1 to 2024.1
APdata2=cbind(APdata2[1:350],0,0,APdata2[353:(392-6)]) # 2022.8에는 서울에서 거래건수=0.
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
Q1=0
Q3=0
skew=0
med=0
kurt=0
avg=0
library(moments)
for(n in 1:193){from=1+2*(n-1) # 2008.1부터 2024.1월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata2[,to])) #월간 거래건수. na라고 입력된 data cell 제외 숫자 입력된 cell 개수
data1=cbind(APdata2[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, variability 지수
med[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
Q1[n]=quantile(data1,0.25)
Q3[n]=quantile(data1,0.75)
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
count[176]=0 # 이거 안 하면 1590이 입력되어 있음
sales_vol[176]=(sales_vol[175]+sales_vol[177])/2 # 결측치 자료 기입
std[176]=(std[175]+std[177])/2
med[176]=(med[175]+med[177])/2
coef_var[176]=(coef_var[175]+coef_var[177])/2
range[176]=(range[175]+range[177])/2
avg[176]=(avg[175]+avg[177])/2
start_date=as.Date('2008-01-01')
time_index <- seq(from = start_date, by = "month", length.out =(386/2)) # 2008.1 to 2024.1 created
plot(time_index, avg/1000,ylim=c(0,280),typ='l',xlab='',ylab='', lwd = 1.5,cex.lab=1.2)
lines(time_index,med,col='red')
plot(time_index, avg/1e4,typ='l',xlab='',ylab='억원',cex.lab=1.2,lwd=1.3)
lines(time_index,filter(avg/1e4,rep(1/6,6)),col='red',lwd=1.5)
abline(v=as.Date('2022-05-01'),lty='dotted')
abline(v=as.Date('2021-06-01'),lty='dotted',col='red',lwd=1.5)
abline(v=as.Date('2017-05-01'),lty='dotted')
text(as.Date('2020-06-01'),25,'문재인 정부') # <그림 1> 완성
plot(time_index,sales_vol/1e5,type='l',lwd=1.5,ylab='',ylim=c(0,1600))
lines(time_index,count,lwd=1.5,col='red')
text(as.Date('2012-01-01'),20,'월간 거래금액(10억원/월)')
text(as.Date('2012-01-01'),500,'월간 거래건수',col='red')
abline(v=as.Date('2017-05-01'),lty='dotted')
abline(v=as.Date('2022-05-01'),lty='dotted')
text(as.Date('2020-010-01'),1000,'문재인 정부') # <그림 2>
<첨부 2> <표 1> 및 <그림 4> 만들기, 모형 A 이용
library(vars)
data=read.csv(file.choose(),header=T) # 자료는 여기
attach(data)
count.d=diff(count) /100
sales_vol.d=diff(sales_vol) /1e7 # Data starts from 2008.2
std.d=diff(std)/1e4
range.d=diff(range)/1e4
count.d=count.d[12:171] # data from 2009.2 to 2022.4
sales_vol.d=sales_vol.d[12:171]
std.d=std.d[12:171]
range.d=range.d[12:171]
coef_var.d=coef_var[13:172] # Not differenced
x1=cbind(count.d,std.d)
x2=cbind(count.d,coef_var.d)
x3=cbind(count.d,range.d)
x4=cbind(sales_vol.d,std.d)
x5=cbind(sales_vol.d,coef_var.d)
x6=cbind(sales_vol.d,range.d)
exo=cbind(Pandemic)
cumul=array(0,c(15,6))
for(n in 1:6){
if(n==1){endo=cbind(P_old.d,P_new.d,Debt.d,SumD,x1)}
else if(n==2){endo=cbind(P_old.d,P_new.d,Debt.d,SumD,x2)}
else if(n==3){endo=cbind(P_old.d,P_new.d,Debt.d,SumD,x3)}
else if(n==4){endo=cbind(P_old.d,P_new.d,Debt.d,SumD,x4)}
else if(n==5){endo=cbind(P_old.d,P_new.d,Debt.d,SumD,x5)}
else if(n==6){endo=cbind(P_old.d,P_new.d,Debt.d,SumD,x6)}
else {endo=cbind(P_old.d,P_new.d,Debt.d,SumD,x7)}
base=VAR(endo,p=2,exogen=exo)
#분양시장 투기장 지수-->재고가 회귀계수=0으로 놓는 restricted model 만들기
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1, 1,1,1),nrow=6,byrow=TRUE)
model=restrict(base,method='manual',resmat=C)
A1=Bcoef(model)[,1:6]
A2=Bcoef(model)[,7:12]
b=Bcoef(model)[,14] # coef of Pandemic
y=array(0,c(6,30))
y[,1]=array(c(0,0,0,1,0,0), c(6,1)) # 정부대책 +1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[1,n]=sum(y[1,])*28 # Impact of D on P_old
cumul[2,n]=sum(y[2,])*28 # Impact of D on P_new
y=array(0,c(6,30))
y[,1]=b # Pandemic=1 달 지속
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[3,n]=sum(y[1,])*26 # Impact of Pandemic on P_old
cumul[4,n]=sum(y[2,])*26 # Impact of Pandemic on P_new
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # D --> 분양가
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1, 1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,2)
cumul[5,n]=p_value
C=matrix(c(1,1,1,0,0,0, 1,1,1,0,0,0, 1,1, # D --> (재고가,분양가)
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1, 1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[6,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # 정부대책 --> 투기장 지수 2종
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[7,n]=p_value
C=matrix(c(1,1,1,0,0,0, 1,1,1,0,0,0, 1,1, # D --> (재고가,투기장 지수)
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,6)
cumul[8,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # D --> (분양가,투기장 지수)
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,6)
cumul[9,n]=p_value
C=matrix(c(1,1,1,0,0,0, 1,1,1,0,0,0, 1,1, # D -->(재고가,분양가,투기장 지수 2종)
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,8)
cumul[10,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # 투기장 지수 2종 --> D
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1, 1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[11,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # 투기장 지수 2종 --> 분양가
1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[12,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # (재고가,분양가) --> 투기장 지수 2종
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
0,0,1,1,1,1, 0,0,1,1,1,1, 1,1,
0,0,1,1,1,1, 0,0,1,1,1,1, 1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,8)
cumul[13,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # 재고가 --> 분양가
0,1,1,1,1,1, 0,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,2)
cumul[14,n]=p_value
C=matrix(c(1,0,1,1,0,0, 1,0,1,1,0,0, 1,1, # 분양가 --> 재고가
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,2)
cumul[15,n]=p_value
}
round(cumul,2) # <표 1>
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 21.56 22.66 23.25 21.60 22.66 23.33 # Impact of D on P_old
[2,] 35.29 36.60 39.72 35.39 36.54 39.93 # Impact of D on P_new
[3,] 18.41 14.41 17.41 18.38 14.43 17.36 # Impact of Pandemic on P_old
[4,] 19.87 7.43 19.55 19.73 7.49 19.42 # Impact of Pandemic on P_new
[5,] 0.04 0.13 0.01 0.04 0.12 0.01 # D --> 분양가
[6,] 0.02 0.02 0.01 0.02 0.02 0.01 # D --> (재고가,분양가)
[7,] 0.94 0.43 0.79 0.74 0.29 0.57 # 정부대책 --> 투기장 지수 2종
[7,] 0.06 0.05 0.05 0.04 0.03 0.03 # D --> (재고가,투기장 지수)
[8,] 0.31 0.20 0.22 0.20 0.13 0.14 # D --> (분양가,투기장 지수)
[9,] 0.14 0.08 0.10 0.08 0.05 0.06 # D -->(재고가,분양가,투기장 지수 2종)
[10,] 0.25 0.10 0.21 0.24 0.11 0.19 # 투기장 지수 2종 --> D
[11,] 0.70 0.48 0.00 0.89 0.61 0.00 # 투기장 지수 2종 --> 분양가
[12,] 0.06 0.58 0.00 0.03 0.33 0.00 # (재고가,분양가) --> 투기장 지수 2종
[13,] 0.01 0.01 0.00 0.02 0.01 0.00 # 재고가 --> 분양가
[14,] 0.00 0.00 0.00 0.00 0.00 0.00 # 분양가 --> 재고가
# 모형 F에 대해 좀 더 자세히 검토
endo=cbind(P_old.d,P_new.d,Debt.d,SumD,count.d,range.d)
exo=cbind(Pandemic)
base=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1, # 분양시장 투기장 지수 --> 재고가 회귀계수 0으로 놓기
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1),nrow=6,byrow=TRUE)
model=restrict(base,method='manual',resmat=C)
x=irf(model,impulse='range.d',response='P_new.d',cumulative=TRUE,n.ahead=40)
upper=x$Upper$range.d
lower=x$Lower$range.d
irf=x$irf$range.d
plot(irf,type='l',ylab='분양가에 미친 영향 누적, 포인트',xlab='경과월')
lines(upper,lty='dotted',col='red')
lines(lower,lty='dotted',col='red')
abline(h=0) # <그림 4> 완성
x=irf(model,impulse='SumD',response='P_new.d',cumulative=TRUE,n.ahead=40)
plot(x) # <그림 5> 완성
주...가계부채-->정부대책도 비슷
<그림 A1> 정부대책-->가계부채 충격-반응분석
x=irf(model,impulse='SumD',response='Debt.d',cumulative=TRUE,n.ahead=30) # Insignificant
plot(x) # 위 <그림 A1>이 결과물, (+)이나 비유의
x=irf(model,impulse='Debt.d',response='SumD',cumulative=TRUE,n.ahead=30) # Insignificant
plot(x) # 매우 비유의
x=irf(model,impulse='P_old.d',response='Debt.d',cumulative=TRUE,n.ahead=30) # Insignificant
plot(x) # 유의
x=irf(model,impulse='Debt.d',response='P_old.d',cumulative=TRUE,n.ahead=30) # Insignificant
plot(x) # 유의, 분양가 P_new.d도 마찬가지. 생략
endo=cbind(P_old.d,P_new.d,Debt.d,SumD,count.d,range.d)
exo=cbind(Pandemic)
A1=Bcoef(model)[,1:6]
A2=Bcoef(model)[,7:12]
y=array(0,c(6,30))
y[,1]=array(c(0,0,0,1,0,0), c(6,1)) # 정부대책 +1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
sum(y[1,]) # 0.83 = <그림 8> (b) y축에 있는 숫자
x=irf(model,impulse='P_old.d',response='P_new.d',cumulative=TRUE,n.ahead=40)
plot(x) # <그림 S1>
x=irf(model,impulse='P_new.d',response='P_old.d',cumulative=TRUE,n.ahead=40)
plot(x) # <그림 S2>
<첨부 3> 모형 2를 이용해 <표 1> 작성을 재작성했을 때
D=abs(SumD)
D_Moon=D*Moon
D_Moon.1=lag(D_Moon) # 1st entry=NA
D_Moon.2=lag(D_Moon,2) # 1st two entries=NA
D_Moon.1[1]=0
D_Moon.2[1:2]=0
x1=cbind(count.d,std.d)
x2=cbind(count.d,coef_var0)
x3=cbind(count.d,range.d)
x4=cbind(sales_vol.d,std.d)
x5=cbind(sales_vol.d,coef_var0)
x6=cbind(sales_vol.d,range.d)
exo=cbind(D_Moon.1,D_Moon.2,Pandemic)
cumul=array(0,c(6,6))
for(n in 1:6){
if(n==1){endo=cbind(P_old.d,P_new.d,Debt.d,D,x1)}
else if(n==2){endo=cbind(P_old.d,P_new.d,Debt.d,D,x2)}
else if(n==3){endo=cbind(P_old.d,P_new.d,Debt.d,D,x3)}
else if(n==4){endo=cbind(P_old.d,P_new.d,Debt.d,D,x4)}
else if(n==5){endo=cbind(P_old.d,P_new.d,Debt.d,D,x5)}
else if(n==6){endo=cbind(P_old.d,P_new.d,Debt.d,D,x6)}
else {endo=cbind(P_old.d,P_new.d,Debt.d,D,x7)}
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:6]
A2=Bcoef(model)[,7:12]
b=Bcoef(model)[,14] # coef of D_Moon.1
A1[,4]=A1[,4]+b
b=Bcoef(model)[,15] # coef of D_Moon.1
A2[,4]=A2[,4]+b
y=array(0,c(6,30))
y[,1]=array(c(0,0,0,1,0,0), c(6,1)) # 정부대책 +1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[1,n]=sum(y[1,])*28 # Impact of D on P_old
cumul[2,n]=sum(y[2,])*28 # Impact of D on P_new
y=array(0,c(6,30))
b1=Bcoef(model)[,16] # coef of Pandemic
y[,1]=b1 # Pandemic=1 달 지속
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[3,n]=sum(y[1,])*26 # Impact of Pandemic on P_old
cumul[4,n]=sum(y[2,])*26 # Impact of Pandemic on P_new
DtoThree=matrix(c(1,1,1,0,1,1, 1,1,1,0,1,1, 1,0,0,1, # D --> 투기장 지수 3종
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,0,0,1,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,0,0,1),nrow=6,byrow=TRUE)
DtoTwo=matrix(c(1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1, # D --> 투기장 지수 2종
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,0,0,1,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,0,0,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=DtoThree)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,12)
cumul[5,n]=p_value
R_model=restrict(model,method='manual',resmat=DtoTwo)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,8)
cumul[6,n]=p_value
}
round(cumul,2)
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 28.88 24.50 30.65 29.79 25.21 30.97 29.28
[2,] 42.08 30.15 47.49 42.99 31.13 47.75 41.55 --> 분양가 상승치가 모형 1보다 큼
[3,] 13.14 8.14 12.36 12.98 8.19 12.48 13.10
[4,] 12.72 2.25 11.88 12.57 2.23 11.87 13.53
[5,] 0.02 0.05 0.01 0.01 0.04 0.00 0.00
[6,] 0.85 0.62 0.41 0.68 0.48 0.29 0.09
<첨부 4> <그림 5> 그리기+<그림 7> 패널(b)에 기입한 수치 계산하기
endo=cbind(P_old.d,P_new.d,Debt.d,SumD,count.d,range.d)
exo=cbind(Pandemic)
base=VAR(endo,p=2,exogen=exo)
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1),nrow=6,byrow=TRUE)
model=restrict(base,method='manual',resmat=C)
A1=Bcoef(model)[,1:6]
A2=Bcoef(model)[,7:12]
cumul=array(0,c(2,30))
y=array(0,c(6,30))
y[,1]=array(c(0,0,0,1,0,0), c(6,1)) # 정부대책 +1
cumul[1,1]=y[2,1]; cumul[2,1]=y[5,1]
y[,2]=A1%*%y[,1]
cumul[1,2]=y[2,2]; cumul[2,2]=y[5,2]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]
cumul[1,n]=cumul[1,n-1]+y[2,n]
cumul[2,n]=cumul[2,n-1]+y[5,n]}
sum(y[2,]) # Impact of D on P_new
[1] 1.418724 # <그림 7> 패널 (b) y축에 있는 숫자
sum(y[5,]) # Impact of D on count
[1] -0.5293821
sum(y[5,])*28 # -14.822 --> -1482.2건/60달 = -24.7건/월. <그림 6> 패널 (b) x축 좌표값 설정시 사용.
sum(y[6,]) #+0.26>0, 문 정부의 정책개입은 분양가격의 산포도 증가시킴.
cumul=array(0,c(6,30))
cumul[,1]=y[,1]
for(n in 2:30){cumul[,n]=cumul[,n-1]+y[,n]}
cumul[6,]=100*cumul[6,] # 거래건수의 단위를 [천]에서 [1 단위]로 바꾸기
plot(cumul[6,],cumul[1,],xlab='거래건수에 미치는 누적 영향(건)',ylab='집값에 미치는 누적 영향(포인트)',pch=8)
plot(cumul[2,],cumul[1,],type='b',xlab='거래건수에 미치는 누적영향',ylab='분양가에 미친 누적 영향, point')
text(-0.08,0,'최초 충격')
text(0,0.6,'충격 1달 후')
text(0,1.2,'충격 2달 후')
text(-0.2,1,'충격 3달 후')
text(-0.5,1.3,'수렴') # <그림 5> 완성
<첨부 5> D*Moon 상호작용항 이용한 모형을 사용해 <표 1> 및 <그림 4> 만들기
library(dplyr)
D=abs(SumD)
D_Moon=D*Moon
D_Moon.1=lag(D_Moon) # 1st entry=NA
D_Moon.2=lag(D_Moon,2) # 1st two entries=NA
D_Moon.1[1]=0
D_Moon.2[1:2]=0
library(vars)
x1=cbind(count.d,std.d)
x2=cbind(count.d,coef_var.d)
x3=cbind(count.d,range.d)
x4=cbind(sales_vol.d,std.d)
x5=cbind(sales_vol.d,coef_var.d)
x6=cbind(sales_vol.d,range.d)
exo=cbind(Pandemic,D_Moon.1,D_Moon.2)
cumul=array(0,c(14,6))
for(n in 1:6){
if(n==1){endo=cbind(P_old.d,P_new.d,Debt.d,D,x1)}
else if(n==2){endo=cbind(P_old.d,P_new.d,Debt.d,D,x2)}
else if(n==3){endo=cbind(P_old.d,P_new.d,Debt.d,D,x3)}
else if(n==4){endo=cbind(P_old.d,P_new.d,Debt.d,D,x4)}
else if(n==5){endo=cbind(P_old.d,P_new.d,Debt.d,D,x5)}
else if(n==6){endo=cbind(P_old.d,P_new.d,Debt.d,D,x6)}
else {endo=cbind(P_old.d,P_new.d,Debt.d,D,x7)}
base=VAR(endo,p=2,exogen=exo)
#분양시장 투기장 지수-->재고가 회귀계수=0으로 놓는 restricted model 만들기
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),nrow=6,byrow=TRUE)
model=restrict(base,method='manual',resmat=C)
A1=Bcoef(model)[,1:6]
A2=Bcoef(model)[,7:12]
A1[,4]=A1[,4]+Bcoef(model)[,15]
A2[,4]=A2[,4]+Bcoef(model)[,16]
b=Bcoef(model)[,14] # coef of Pandemic
y=array(0,c(6,30))
y[,1]=array(c(0,0,0,1,0,0), c(6,1)) # 정부대책 +1
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[1,n]=sum(y[1,])*28 # Impact of D on P_old
cumul[2,n]=sum(y[2,])*28 # Impact of D on P_new
y=array(0,c(6,30))
y[,1]=b # Pandemic=1 달 지속
y[,2]=A1%*%y[,1]
for(m in 3:30){y[,m]=A1%*%y[,m-1]+A2%*%y[,m-2]}
cumul[3,n]=sum(y[1,])*26 # Impact of Pandemic on P_old
cumul[4,n]=sum(y[2,])*26 # Impact of Pandemic on P_new
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1, # D --> 분양가
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[5,n]=p_value
C=matrix(c(1,1,1,0,0,0, 1,1,1,0,0,0, 1,1,0,0, # D --> (재고가,분양가)
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,8)
cumul[6,n]=p_value
C=matrix(c(1,1,1,0,0,0, 1,1,1,0,0,0, 1,1,0,0, # D --> (재고가,투기장 지수)
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,1,0,0),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,12)
cumul[7,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1, # D --> (분양가,투기장 지수)
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,1,0,0),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,12)
cumul[8,n]=p_value
C=matrix(c(1,1,1,0,0,0, 1,1,1,0,0,0, 1,1,0,0, # D -->(재고가,분양가,투기장 지수 2종)
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,0,1,1, 1,1,1,0,1, 1,1,1,0,0),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,16)
cumul[9,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1, # 투기장 지수 2종 --> 분양가
1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,4)
cumul[10,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1, # (재고가,분양가) --> 투기장 지수 2종
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
0,0,1,1,1,1, 0,0,1,1,1,1, 1,1,1,1,
0,0,1,1,1,1, 0,0,1,1,1,1, 1,1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,8)
cumul[11,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1, # 재고가 --> 분양가
0,1,1,1,1,1, 0,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,2)
cumul[12,n]=p_value
C=matrix(c(1,0,1,1,0,0, 1,0,1,1,0,0, 1,1,1,1, # 분양가 --> 재고가
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,2)
cumul[13,n]=p_value
C=matrix(c(1,1,1,1,0,0, 1,1,1,1,0,0, 1,1,1,1, # 정부대책 --> 투기장 지수 2종
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,1,1,1, 1,1,1,1,1,1, 1,1,1,1,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0,
1,1,1,0,1,1, 1,1,1,0,1,1, 1,1,0,0),nrow=6,byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
p_value=1-pchisq(chi2,8)
cumul[14,n]=p_value
}
round(cumul,2) # <표 1>
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 26.64 23.87 28.42 26.78 24.08 28.42 # Impact of D on P_old
[2,] 42.81 30.50 48.19 43.96 31.76 48.49 # Impact of D on P_new
[3,] 13.75 9.74 12.70 13.73 9.77 12.76 # Impact of Pandemic on P_old
[4,] 12.52 1.36 11.78 12.33 1.35 11.80 # Impact of Pandemic on P_new
[5,] 0.01 0.04 0.00 0.01 0.03 0.00 # D --> 분양가
[6,] 0.00 0.01 0.00 0.00 0.01 0.00 # D --> (재고가,분양가)
[7,] 0.02 0.03 0.01 0.01 0.02 0.01 # D --> (재고가,투기장 지수)
[8,] 0.19 0.17 0.11 0.12 0.11 0.07 # D --> (분양가,투기장 지수)
[9,] 0.07 0.05 0.05 0.04 0.03 0.03 # D -->(재고가,분양가,투기장 지수 2종)
[10,] 0.55 0.42 0.00 0.75 0.54 0.00 # 투기장 지수 2종 --> 분양가 (주택부문내 상
[11,] 0.05 0.52 0.00 0.02 0.26 0.00 # (재고가,분양가) --> 투기장 지수 2종
[12,] 0.01 0.01 0.00 0.02 0.01 0.00 # 재고가 --> 분양가
[13,] 0.00 0.00 0.00 0.00 0.00 0.00 # 분양가 --> 재고가
[14,] 0.87 0.65 0.42 0.70 0.49 0.29 # 정부대책 --> 투기장 지수 2종
오늘은 재고 및 분양시장에서 작동했던 문재인 정부의 정부대책 작동방식을 요약해 비교하고 그 작동원리에 대해 알아봅니다. 그리고 이 작동원리를 윤석열 정부초 주택시장에 적용해보겠습니다. AI machine learning 용어를 빌리면, 문 정부는 training dataset이고 윤 정부는 validation dataset입니다.
지난 주에 문재인 정부기간 동안 분양시장에서도 정부에 의한 투기조장론이 성립함을 보았습니다. 투기조장은 문재인 정부시기 재고가와 분양가를 올리는 기제였는데, 여기서 장래 예상가격에 대한 기대변화, 수요 pool 제한, 공급제한 등 3가지 요인이 가격상승을 유발하는 핵심요인으로 작용했습니다. 특히 투기수요 억제가 수요 pool을 제한함으로써 기대와 달리 시장가격을 올렸습니다. 즉 투기수요 억제책이 시장의 거래자들을 screen해서 실제로 투기꾼을 중심으로 시장을 재편했습니다. 정부요인은 시장에 대한 기대변화를 직접 자극하기도 하고 혹은 주택가격을 매개로 기대변화를 유발하기도 했습니다. 재고주택과 분양주택 시장에서 집값 상승이 정부-주택부문 상호작용 구조하에서 이루어지고 주택부문 안에서는 가격<-->투기장 지수간 상호작용의 결과라는 공통점에도 불구하고, 정부의 시장개입은 분양주택의 공급을 재고주택보다 더 위축시켰고 그 결과 분양가는 재고가보다 임기 중 더 올랐습니다. 아래 <표 1>이 바로 그것이고, 그림으로 옮겨 다시 요약한 것이 <그림 1>, <그림 2>입니다. 여기서 임기중 재고주택의 평균 거래량에 변화가 없었지만, 이 결과가 공급곡선이 좌측이동해서 생긴 결과라는 점도 흥미롭습니다. 거래량 감소가 평균적으로 없었다면 공급곡선의 이동이 없었다고 해석할 만하지만 그러하지 않았습니다. 문 정부는 분양/재고 모두 공급을 위축시켰고, 이 분석결과는 자료 정제 과정을 통해 생성한 자료를 가지고 경제학 원론의 수요-공급 분석틀을 적용해 얻은 결과입니다. 두 시장간 차이는 정도 차이였습니다.
<표 1> 정부요인의 작동방식 비교
------------------------------------------------------------------------------------------------------------------------------------------------
수요곡선 공급곡선 가격 거래량
------------------------------------------------------------------------------------------------------------------------------------------------
분양주택시장 위쪽으로 이동 왼쪽으로 이동 大 상승 大 대폭 감소(임기말 사실상 zero)
재고주택시장 上同 왼쪽으로 이동 無 상승 小 영향 없었음(사실상 zero)
-----------------------------------------------------------------------------------------------------------------------------------------------
주...모든 측정은 임기 평균. 세부 기간 사이에 차이 있을 수 있음.
출처...패널(b) y축에 기입된 수치 0.83(정책개입 1회당 상승 포인트)는 2024.8.15 토론문 <표 1> 모형 C를 이용해 계산(해당 문서의 <첨부 2>에 있는 코드 사용). D1이 D0보다 경사 급한 것은 정책개입으로 인해 시장이 교란되면 장래 예상가격의 분포가 더 분산적으로 변한다는 점을 반영해서 그렸기 때문. Miller(1977) 그림 참고. 패널 (c)에서 정부대책 1회 발표는 56건 거래건수 감소. 문재인 정부시기 재고주택 월 거래건수 평균은 6008, 중위수는 5020. 따라서 56건 감소는 거의 zero에 가까운 숫자(1% 감소).
<그림 1> 수요-공급분석 틀에서 본 재고주택시장의 작동방식
출처...패널 (b) x축 수치는 <첨부 1>에서. 여기서 103은 중위수. 패널 (b) x축에 있는 "25% smaller"가 매월 효과를 발휘하면 매월 분양건수는 이 그림처럼 감소하는 모양을 함(2024.8.15 토론문 <그림 2>). 회계학에서 정률상각시 잔존가치 곡선이 바로 이런 모양. 동일한 수학(數學).
<그림 2> 수요-공급분석 틀에서 본 분양주택시장의 작동방식
한편 문재인 정부시기에 재고/분양주택 시장에서 유동성이 철저히 통제되었음에도 투기장의 특징이 두드러지게 나타났던 것은 정부의 잦은 시장교란이 가격분포의 분산을 증가시키고 거래를 위축시킨 결과의 산물이었습니다. 아래 그림이 두 시장에서 가격거품/붕괴 문헌에서 보는 전형적 사례와 달리 어떻게 이런 일이 일어났는지 보여줍니다.
<그림 3> 과잉 유동성 요인의 영향도 없고 또한 가계신용 경로의 철저하게 봉쇄되었음에도 불구하고 문재인 정부시기에 주택가격이 상승했던 이유
위 그림에서 stock supply가 H라고 합시다. 문재인 정부에서 대책이 1회 발표되면, 주택수요자의 미래 시장에 대한 가격전망이 더 분산적으로 변합니다(2024.8.7 <그림 1> 참고). 즉 수요곡선이 D1 --> D2로 변하고 균형은 A에서 B로 상승합니다. 한편 임기중 강력한 투기거래 억제정책은 거래를 더욱 위축시켜서 수요곡선 D2의 B 대신 C 이상의 지불의사를 가진 수요자들로 거래 pool을 위축시키고, 균형은 다시 C로 이동합니다. 시장은 thin market이라서 이런 균형에 대응하는 개별 공급곡선을 부분시장과 시점에 따라 다양하게 상상해 볼 수 있습니다. 그 연장선상에서 수요곡선도 마찬가지. 그림의 stock supply 하나만 상상할 필요는 없다는 말씀입니다. 높은 지불의사를 가진 수요자는 집이 꼭 필요해서 그런 사람도 있지만 정부가 교란한 시장에서 전보다 더 큰 이득의 기회를 기대하게 된 사람도 있을 것입니다. A, B, C가 왼쪽 위에 몰려 있는 이유로서 금융시장에서는 일부 허용되지만 주택시장에는 없는 short selling도 생각해볼 수 있습니다. 여기서 공급까지 크게 위축되면 stock supply곡선은 좌측으로 이동하여 가격은 더 오르는데, 임기 내내 분양시장이 바로 그랬습니다. 투기억제대책이 시장가격의 상승을 부추기는 아주 중요한 기제입니다.
또한 <그림 3>은 2024.8.5 토론문 <그림 2>에서 여러 사람의 예상과 달리 왜 문 정부에서 정부개입후 새 시장균형이 E1, E2, E3 가운데 어느 것도 아닌 점에서 달성되었는지도 보여줍니다. 기본적으로 수요곡선의 상향이동 때문에 벌어진 일입니다(<그림 3> 왼쪽 위 부분 즉 시장에서 관찰되는 부분으로 국한했을 때 수요곡선은 상향이동한 것이 됨).
<그림 3>에서 묘사한 가격상승과정을 이용하면 재고가가 어떻게 문 정부 전반기에 비해 후반기에 더 빠르게 상승했는지 설명할 수 있습니다. 전반기에는 거래물량이 오히려 증가했지만 후반기에 들어 거래물량이 빠르게 감소했습니다. 즉 전반기와 달리 <그림 3>에서 수직선의 stock supply곡선이 왼쪽으로 이동하는 과정이 반복되었습니다. 이 경우 정부의 시장개입이 재고가에 미치는 영향은 더 크게 나타나야 합니다. 그리고 이런 교란이 수십 회 반복되면 그 영향이 누적되어 누가 보아도 투기꾼들이 판을 치는 세상으로 오해할 만 합니다.
사실 문재인 정부시기에 가계의 신용경로가 철저하게 차단되었음에도 어떻게 재고가와 분양가가 그렇게 계속 상승할 수 있었는지 다양한 추측에도 불구하고 그 자세한 과정은 미지에 가까웠습니다. 김수현, 이준구 박사의 추측도 그 중 일부인데, 과잉 유동성의 영향이 미미한 시장에서 가계대출 억제정책에도 불구하고 집값이 이렇게 수요측의 두 가지 요인(가격분포의 분산 증가+거래 위축)만으로도 상승할 수 있다는 점은 흥미로운 관찰이 되겠습니다. 거래위축이 가격상승의 기저 동인으로 작용했다는 것은 counter-intuitive까지 합니다만, <그림 3>에서 왜 그런지는 명확합니다.
이상 분석결과를 이용해 다음과 정리할 수 있습니다.
[문재인 정부시기 주택가격의 상승과 평균회귀] 정부개입은 장래 주택가격 분포의 분산을 증가시키고(heterogeneous belief의 variance up --> larger IQR) 지불의사가 높은 수요자로 거래를 더욱 국한시킴으로써 이들 두 가지 수요측 요인은 시장가격의 핵심 상승요인으로 작용했다(재고가는 0.58포인트/회, 분양가는 1.08포인트/회 상승; 진보의 투기원인론을 대체하는 미시적 기제가 됨). 이 상승과정이 중요한 것은 주택시장 내 가구신용경로와 공급경로의 폐색에도 불구하고 정부대책이 촉발한 이들 두 가지 수요측 요인만으로도 주택가격이 상승할 수 있다는 점이다(주택시장 내부증폭 과정). 여기에 주택공급 요인이 부가적으로 작용하면, 재고 및 분양주택시장에서 시장간, 시기간 차별화된 가격변동 패턴을 설명할 수 있게 된다. 한편 임기 내내 정부가 중점을 두고 통제했던 가구의 신용경로에도 불구하고(<그림 1> 참고), 문재인 정부는 28회 정부대책을 통해 주택시장 내부 증폭과정을 반복 작동시켰고(외부 증폭과정) 그 결과 임기중 집값은 크게 상승했다. 2022년 정권교체는 주택시장 내외부의 2중 증폭과정을 동시에 제거했다. 그 결과 정권교체와 더불어 재고가와 분양가의 평균회귀 현상이 일어났다. 투기장 지수 측면에서 볼 때, 재고시장을 중심으로 안정화가 뚜렸하게 나타났는데, 분양가격의 경우 가격변동성과 가격수준은 정권교체 이후에도 혼조세를 지속했다. 과도하게 위축되었던 공급의 여파인 것 같다.
<그림 4> 정부-주택부문-정책환경 확장 모형
<그림 4>는 오늘 내용을 주택시장-정부 상호작용 과정을 중심으로 다시 요약한 것입니다. 과잉 유동성, 금리 등 금융요인의 영향이 거의 없었던 서울의 주택시장에서 문재인 정부의 강력한 투기억제 대책에도 불구하고 어떻게 장기간 상승할 수 있었는지 그 structural process를 보여주는 그림입니다. 개방경제적 거시요인의 영향을 강력하게 차단하고 만든 일종의 실험실 조건에서 정부대책이 잘 작동할 것을 기대했지만 결과는 반대였습니다.
따라서 이런 정책환경에서 수행한 사회실험의 결과가 의도와 반대로 나왔다면 문재인 정부 부동산정책 기조의 타당성을 의문시해 볼만 했습니다. 그 정도로 장기간 정부의 거의 모든 자원을 동원해서 noise를 제거한 '실험실'에서 얻은 결과라면 보통은 진지하게 수용하지 않을까 합니다. 결국 그러하지 않았고 이건 김수현 박사 1인에 그치지 않았습니다. 한국의 부동산정책 현장은 그래서 온통 의문 투성이입니다. 나중에 기회가 되면 2가지 기제 혹은 배경을 제시하고 rationalize를 시도해 봅니다.
윤석열 정부가 등장하자마자 집값이 떨어진 것이 이상하기는 합니다. 바로 공급이 늘어난 것도 아니고. 그래서 김수현(2023) 같은 것은 미국 연방금리를 이용해 집값을 설명한 것이고. 눈에 바로 띄지는 않았지만 일시에 변했던 기저 요인 무언가 변했을 것이다, 지금까지 알아본 분석틀에서 보면 그것은 수요의 변화이다가 됩니다. 문재인 정부의 부동산정책이 주택시장의 불확실성을 증가시켜 수요곡선을 시계방향으로 회전시키고 수요곡선 왼쪽 위 가격분포를 확장했다면, 문 정부 정책기조의 반대편에 있던 윤 정부의 정책은 이런 시장심리에 반대 방향으로 작용하여 수요곡선을 반시계방향으로 회전시키고 시장가격의 분포를 좁히는 결과를 가져왔다고 볼 수 있습니다. 즉 <그림 5>에서 공급의 변화가 없는 상태에서도 시장균형은 A에서 B로 이동하고 집값은 하락합니다. 시장심리는 순식간 변할 수 있어 이런 일이 얼마든지 가능합니다. 이 과정에서 Moon 정부요인을 제거하면 가계부채가 줄고, 준 가계부채는 연쇄적으로 집값을 낮춥니다. <그림 6> 참고. 그리고 그렇게 떨어진 집값은 다시 가계부채를 낮추고, 이론상 이런 상강(相降)과정은 수없이 반복됩니다(근거: <그림 6>에서 양쪽 화살표 <---->). 문 정부 때 정부요인 때문에 늘어난 가계부채가 112조원(2023.10.18 토론문 <표 2>)이나 되었다는 것은 이 相降과정의 역할도 작지 않았음을 시사합니다.
<그림 5> 설명 이론의 응용: 윤석열 정부초 주택가격
문재인 정부의 유의,(+) 유의,(+)
시장개입 빈도 ----------------> 재고가 <-----------> 가계부채
↑ <---------------- 분양가 ↑
| Mixed |
| |
└-----------------------------------------------------------┘
비유의, (+)
출처...2024.6.10 토론문 <표 3> 및 <첨부 3>의 파란색 부분. 2024.8.15 <첨부 2> <그림 A1> 근처. 투기장 지수를 고려한 모형에서 집값과 가계부채간 (+) 관계가 잘 드러나는 경향이 있음. 부호가 (+)라는 것은 원인변수 up-->반응변수 up, 원인변수 down-->반응변수 down이라는 말. 따라서 문재인 정부요인을 없애면(원인변수 down) 집값과 가계부채 문제가 동시에 개선(반응변수 down)될 것이라는 점을 시사
<그림 6> 문재인 정부시기 정부의 정책개입 빈도와 집값, 가계부채간 인과관계
그런데 투기원인론에 찌든 사람들한테는 도저히 수용하기 어려운 설명방식이기는 해도, 투기억제대책의 완화는 수요자 pool을 확장함으로써 비싼 값으로 거래하는 사람도 종전보다 늘어나지만 동시에 전보다 낮은 가격으로 거래하는 사람들도 늘어나고 그러나 시장가격 평균은 하락하는 현상도 동시에 발생합니다. 보수정부의 대출규제 완화, 투기지역 지정요건 완화와 해제로 시장균형은 B에서 C로 다시 낮아지는, 있을 수 없는 일이 벌어졌습니다. 주택이라는 고가의 복합적 상품이 거래되는 시장에서 시장의 다양한 수요, 공급 상황을 반영해 시장균형이 변하는 과정을 보여준 것이 여기 그림입니다. 거래된 시장가격의 분포는 전반적으로 이와 일치하는 통계입니다.
우리네 인식지평에서 이건 마술입니다. 한번 더 강조합니다. 이건 시장주의자, 보수가 부린 마술입니다.
이 마술의 기저에는 무엇보다 수요곡선 D의 회전이 있었습니다. 이 논의가 언젠가 새로 등장할 진보정부에 주는 시사는 작지 않은데, 방금 논한 이유 때문에 진보정부에서 주택가격의 안정을 크게 기대하는 것은 무리가 아닐까라는 생각이 듭니다. <그림 5>에서 수요곡선을 회전시킬 정도로 시장의 신뢰를 주자면, 진보 부동산정책관의 근본적 변화가 있어야 하는데 이것이 얼마나 현실적인 시나리오일지 회의적이라서 그렇습니다.
뒤에 보게될 주택부족은 fact라는 점, 진보 정부요인 작동--> 시장의 불확실성 증대와 투기적 특성 강화 및 가격 상승, 진보 정부요인의 제거=시장 안정이라는 부분 명제를 어느 것 하나라도 받아들이면, 다른 부분명제도 논리적 귀결로 수용해야 하고 결국 진보 부동산정책론의 허위성까지도 직면해야 합니다. 이런 도정(途程)에 진입할 만큼 무모하거나 용기가 있는 사람은 별로 없을 것 같습니다.
다음 주 주제입니다. 지금까지 한 분석결과에 따르면 진보의 부동산정책은 전반적으로 인과론적 허위이고 그렇다면 진보 부동산정책론의 총화인 문재인 정부 정책은 그 성공을 장담할 수 없게 됩니다(=운이 따를 때만 성공). 통계분석 결과에 따르면 실제로 행운이 따르지 않아서 오히려 집값을 부추겼습니다. 다음 주에는 이런 형태의 진보불운론을 뒷받침하는 분석을 더 해봅니다. 뭐가 되었든 수십년 동안 수없이 많은 이들이 cherish해온 신념들입니다. 할 수 있는 데까지 해봅시다.
이혁주 드림
<첨부 1> <그림 2> 패널 (b) 관련
2024.8.15 토론문 <첨부 1>에 있는 APdata2를 이용해서 다음 명령어 실행
time_index <- seq(from=as.Date('2008-01-01'), by = "month", length.out =length(APdata2)/2)
time_subset=time_index>=as.Date('2017-05-01') & time_index<=as.Date('2022-04-01')
subset_count <- count[time_subset]
summary(subset_count)
Min. 1st Qu. Median Mean 3rd Qu. Max.
8.0 39.5 103.0 188.5 222.5 1590.0
세 분은 보시지요. 오늘은 분양가와 재고가간 관계에 관한 기존 문헌을 system dynamics의 관점에서 재구성하고, 두 가격간 상호작용의 시계열적 패턴에 진보 vs. 보수 정부요인이 어떻게 다른 영향을 주었는지 살펴봅니다. 이 접근법을 이용하면 주택가격의 정권/정책 주기론에 포착되지 않은 제2의 체계적 변동요인을 식별해 낼 수 있습니다. 한편 지금까지 수행한 분석에 따르면 문재인 정부 집값 자료의 생성과정(data generating process)을 임의성이 지배했다는 시사를 얻습니다. 이렇게 정부대책이 임의성에 지배 당한 경우, 문재인 정부 때 일부 시기에 있었던 주요 가격 등락을 random walk모형을 이용해 자연스럽게 설명할 수 있습니다. 지금까지 애용했던 VAR모형으로는 설명하지 못했던 집값 시계열입니다. 오늘 분석의 독특한 기여입니다.
<기술 요약> 주택가격 시스템이 어떤 충격을 받아 변하면, n월 후 주택가격의 변동은 3가지 부분 변동의 합으로 주어진다. 정부요인 때문에 변한 부분(정부요인 변동 부분), 집값 변동 기대치 가운데 n월까지 실현된 부분(기대변동 실현분), 일정 시간이 지나면 그 효과가 사라지는 과도변동 부분 등이 그것이다. 보수정부에서 가격이 안정적이었던 것은 정부요인 부분이 없는 상태에서 마지막 두 가지 변동이 작은 크기였기 때문이다. 반면 진보정부에서 집값이 높았던 것은 정부요인에 의한 변동이 나머지 두 부분을 압도해서 집값을 올렸기 때문이다. 그런데 재고가와 분양가는 파동(wave)처럼 고저(高低) 순환변동하면서 상호 영향을 미치는데, 재고가와 분양가가 자신 및 상대에 미치는 누적 영향은 단조 증가적(montone increasing)이거나 감쇠 진동적(damped oscillating)으로 전개되는 패턴을 보이고, 분양가가 분양가에 미치는 영향은 크지만 분양가가 재고가에 미치는 영향은 거의 없었다. 그런데 주택가격에 정부요인 이외에 체계적 변동요인으로서 진동적 요소가 있다는 말은 서울의 아파트값에 정부요인이 생성한 큰 순환변동 이외에 상시적으로 존재하는 소규모의 체계적 변동이 존재한다는 말이다. 따라서 서울 집값의 변동=정부요인에 의한 변동+집값의 자기 진동적 성격에 의한 변동+여타 요인에 의한 변동으로 구성된다는 말이다.
한편 진보의 허위 부동산정책론에 따르면, 문재인 정부시기 정부정책은 비과학에 근거한 임의선택적 요소가 있었고, 집값의 정권/정책주기론에 따라 그 임의요소가 당시 집값의 대부분을 결정했을 것임을 시사한다. 이는 표류경향(drift) 항이 양수인 '표류경향 임의행보 모형'(random walk with drift, RWD)을 이용해 당시 주택가격 변동을 재현해 낼 수도 있다는 의미이다. 표류경향(drift) 항이 (+)인 RWD과정으로 문재인 정부시기 주택가격 변동을 재현하면, 당시 집값 추세와 비슷한 패턴의 가격변동 곡선을 만들어 낼 수 있다. RWD과정에서 가격이 일시적으로 등락하는 시계열은 흔히 관찰되는 현상인데, 이 경우 2019년 전후 실재했던 가격 등락 현상을 정권 상수와 random error 2가지만을 이용해 설명할 수 있게 된다. 지금까지 여기 사이트에 등장했던 논설로 설명할 수 없었던 현상을 상상가능한 모형 가운데 가장 간단한 모형, 즉 RWD 모형으로 설명가능하다는 의미이다. 이러한 모의실험 결과는 진보의 허위 부동산정책론과 주택가격의 정권/정책 주기론이라는 두 경험명제가 시사하는 바(hypothetico-deduction) RWD라는 가설이 자료를 통해 그 가치가 입증(confirm)되었다는 것이고, 가설의 당시 가격변동 설명력을 통해 그 근거 명제 두 가지의 타당성도 함께 뒷받침되는 실험 결과를 얻었다는 의미이기도 하다. 그런데 일단 RWD모형의 타당성을 확보하고 나면, 문재인 정부 당시 상향추세에서 관찰되었던 (minor) deviation은 그것이 어떤 것이든 random event로서 관찰가능한 일들이 된다. 최근까지도 당시 주택가격의 변동에 대해 다양한 논의가 있는데, 이들 논의는 RWD모형이 random error 취급한 event에 대해 rationalize를 시도한 것이 된다.
진보는 기본적으로 주택문제의 해결이 공급에 있지 않다고 보는데, 공급이 주택가격을 올리는 부작용까지 있다고 주장하는 사람도 있습니다. 지금까지 분석결과에서도 재고가와 분양가는 상승작용해서 어느 하나라도 오르면 다른 것도 오른다는 인상을 주기에 충분합니다. 이 그림 오른쪽 위쪽 상자 안을 보면 두 가격이 양방향으로 유의하게 영향을 주고받습니다. 문헌 요약으로서 <그림 1>도 참고.
재고가 up --> 분양가 up: 그림(누적영향)
분양가 up --> 재고가 up: 그림(누적영향)
출처...2023.9.11 토론문 <그림 1>. x축변수는 독립변수, y변수는 종속변수. 아래 <표 1>에서 서울의 경우 어떤 곡선이 성립하는지 확인 가능.
<그림 1> 분양가와 재고가 사이의 관계
이런 관계에 따르면, 분양가이든 재고가이든 가격안정을 이룩하기 위해 가격을 규제해서 동반하락시켜야 한다는 진보의 주장이 설득력이 있는 것 같습니다. 오늘 주제는 바로 이 문제입니다. 결론부터 말하면, 분양가/재고가 상호작용 이슈는 진보, 보수라는 정책환경의 문제로서 보수정부에서라면 크게 문제가 되지 않고, 주택시장의 불안요인으로서 주택가격의 변동성에 대한 인식은 과장되어 있습니다.
이제 분양가 對 재고가 논쟁을 VAR모형과 연결하고 정부요인 통제시 두 가격간 상호작용이 어떻게 일어나는지 알아봅니다. 아래 회귀식은 VAR(1)을 돌린 결과입니다. 직관은 동일해서 변수와 차수가 가장 간단한 식을 추정했습니다. 지난 번 여기 그림도 이런 방식의 모형화가 말이 된다는 점을 시사합니다.
재고가(t)=0.01+0.65*재고가(t-1)+0.01*분양가(t-1)+0.13*Moon(t)+0.13*Pandemic(t) (식1)
(0.06)*** (0.00)*** (0.05)** (0.07)*
분양가(t)=0.24+0.28*재고가(t-1)-0.68*분양가(t-1)+0.97*Moon(t)+0.47*Pandemic(t) (식2)
(0.82) (0.06)*** (0.82) (1.06)
괄호 안의 값은 표준오차. * p value<0.10, ** p value<0.05, *** p value<0.01
출처...<첨부 1>
(식1), (식2) 빨간색 계수가 양수라는 것은 <그림 1> 상향 직선처럼 가격 하나가 오르면 다른 것도 오른다는 말입니다. 반면 파란색 계수에 따르면 분양가 up -->분양가 down합니다. 이런 상반된 효과를 종합하면 재고가와 분양가는 서로 보강/간섭 등 두 가지 상반된 영향을 주고 받을 것임을 시사합니다. 이런 변동성은 집값의 정권/정책 주기론에 부가하여 서울 집값에 체계적인 변동요소가 존재한다는 것을 보여줍니다. 그런데 (식1)에서 분양가 변수의 회귀계수가 0.01로서 매우 작다는 것은 분양가-->재고가 영향이 매우 작다는 것도 시사합니다. 이 경우, <그림 1>에서보는 다양한 패턴의 관계가 두 집값 사이에 관측되어야 합니다. 집값의 파동적 등락에 Moon, Pandemic 등 경제외적 요인이 추가되면 이들 경제외적 요인은 shift factor로서 그림의 곡선을 훅훅 움직이게 하고 이로써 두 집값 사이의 관계는 더 다양한 동태적 패턴이 나타나게 됩니다. 그런데 위 회귀식에 따르면 외생변수의 회귀계수가 작지 않은 크기로서 집값을 단조 증가시키지만, 집값 자체는 등락 즉 자기 상쇄원리가 작동하기 때문에 전체적으로 경제적 요인보다 정권요인이 집값의 변동에 미치는 영향이 더 클 것 같다고 예상해 봅니다. 이들 문제를 dynamic system관점에서 다시 살펴보고, 진보 정권요인이 집값에 미치는 영향이 압도적으로 컸고 그래서 경제변수의 집값 영향은 크지 않았다는 점을 수치해석을 통해 확인하겠습니다.
(식1), (식2)를 행렬과 벡터를 이용해 아래와 같이 다시 쓸 수 있습니다.
재고가와 분양가의 초기값 y1이 어떤 값으로 주어졌을 때, 이후 그 아래 식처럼 주택가격들이 전개됩니다. y(t)는 첫째 원소가 t월 재고가, 둘째 원소가 t월 분양가인 벡터, nu는 0.01, 0.24로 이루어진 절편 벡터(여기 자료가 1차 차분자료이므로 차분방정식을 level변수로 변환하면 이 nu는 시간 변수 t의 계수), A는 회귀계수 행렬, x(t)는 첫째 원소가 Moon 정권 더미의 값(0 혹은 1), 둘째 원소가 Pandemic 시기에 속하는지 여부를 나타내는 1 혹은 0 값이 부여된 벡터, B는 그 회귀계수 행렬입니다. ν는 Greek alphabet nu입니다. y(t)의 각 원소가 1st differenced entry이고, 시차를 두고 각 entry가 다른 entry에 영향을 받도록 설계했기 때문에, 이 system of equations는 dynamic하고 feedback이 존재해서 간단하지만 system dynamics 모형이 됩니다. 생태학의 고전적 동적균형 모형이 그런 예이고, 공학 분야에서는 광범위하게 쓰이는 미분방정식 체계의 이산모형(discrete version)이자, 선형대수학이 광범위하게 적용된 고리짝 stochastic first-order difference equation system의 예(例)가 여기 모형입니다(Goldberg, 1958). 사족을 달면 심사자 B의 코멘트 line 15-17, "이 학술지에 게재된 기존 연구들과 글을 구성하는 방식, 수식 양식, 그래프 양식 등이 상이함"도 이런 현실을 간과해서 나온 것 같고요. 우리한테 익숙한 방법론, 사고방식의 뿌리부터 다시 생각해야 할 만큼 현 상황은 혼돈입니다. 익숙치 않은 스텝 하나하나가 시비의 대상이 되는 건 이해하지만 이를 읽어 내는 태도와 식견은 분명 여러 모로 문제가 있습니다.
(식3) transitory term에서 시간이 경과하면 즉 n이 증가하면 A^(n-1)은 0으로 수렴합니다. 그래서 이름이 과도변동 항이 되었습니다. 같은 식 우변 둘째 항은 월간 재고가, 분양가 변동 time trend를 보여주는 절편항 nu가 시간이 지나면서 집값 변동에 주는 영향을 보여줍니다. level변수로 표현된 집값 시계열을 직선으로 근사시킬 때 이 직선의 기울기가 대충 벡터 nu에 포함된 원소 값이 됩니다. n을 무한대로 보내고 우변 둘째 항을 모두 더하면
가 되고 이 값은 월간 변동 y(t)의 기대치 즉 Ey(t) (외생변수 요인 제외)가 됩니다(근거: 아래 유도과정). 여기서 I는 2*2 단위행렬, A는 VAR(1)의 계수행렬입니다.
제도적 환경(보수정권 vs. 진보정권) 이슈는 사상하고 어떤 이유 때문에 분양가가 어떤 달에 1 point 한번 증가했다고 합시다. 즉 식(3)에서 y1=[0,1]'이 됩니다. 학부 linear algebra에 나오는 eigenvector의 성질을 이용하면, 행렬 A를 이용한 선형 변환(linear transformation)은 eigenvector를 이용해 매우 간단한 형식으로 표현할 수 있습니다. 이 원리에 따라 (식3) 우변 첫째 항을 아래 (식6)과 같이 고쳐 쓸 수 있습니다(<첨부 1> 참고).
(식6)에서 y1이라는 1회 충격이 n월 후 재고가와 분양가에 미친 월간 영향은 z_n이 되는데 이 z_n은 우변 두 항의 합으로 주어집니다. 첫 번째 벡터 v1=[-0.01,0.99]'는 계수행렬 A의 첫째 eigenvector, 두 번째 벡터 v2=[0.97,0.20]'는 A의 두 번째 eigenvector입니다. 그리고 lambda1, lambda2는 eigenvector v1, v2 각각에 대응하는 eigenvalue입니다. 우변 두 번째 항의 계수 0.012가 첫 번째 항의 계수 0.997에 비해 매우 작은 값이라서, 위 식의 값은 전반적으로 첫 번째 항이 좌우하게 됩니다. 그런데, 첫 번째 항에서 0.99는 -0.01보다 압도적으로 큰 값이고, 0.99가 z_n의 두 번째 원소인 분양가의 크기에 직접 영향을 미치는 위치에 있기 때문에, (식6)에 따르면 과도변동 항 z_n의 변동은 전체적으로 (식6) 우변 첫째 항 특히 분양가의 변동에 크게 영향을 받을 것임을 시사합니다.
그리고 (식6) 우변 두 번째 항은 양수인데 반해 우변 첫 번째 항은 계수 (-0.69)^n가 n의 값에 따라 양음의 값은 취하기 때문에 z_n은 그 크기가 커졌다 작아졌다 합니다. 따라서 첫 번째 항의 변동은 두 번째 항의 단조 증가 변동(누적치 기준)에 등락 변화를 줍니다. 그러나 (식6)의 두 항은 승수 (-0.69)^n, (0.66)^n가 n이 커지면서 0으로 빠르게 근접하기 때문에 (식6)은 전체적으로 0으로 수렴하고, 따라서 t=n까지의 합 즉 누적치는 일정한 값으로 수렴합니다. 수학적으로 보면, y1이 t=n 가격에 미치는 누적영향은 z_n을 t=1에서 t=n까지 z_1, z_2, z_3, ..., z_n을 모두 더한 ∑zt로 주어지는데, 개별 항 zt가 등락하기 때문에 이들의 합인 ∑zt는 시계열적으로 등락하면서 어떤 값으로 수렴하는 모양을 하게 됩니다.
출처...<첨부 1>. 과도변동 항 z_n을 그린 그림. VAR모형에서 변수의 개수를 늘리는 등 현실성을 더하고 이 그림을 다시 그려도 질적으로 동일한 그림을 얻는데 재고가에 미친 영향은 사실상 zero. 오른쪽 <표 1> 분양가-->재고가 +0.04가 나온 이유(여기서도 사실상 zero effect). 여기 그림은 매우 단순한 모형을 이용했지만 핵심 메시지는 올바름.
<그림 2> 분양가 1포인트 상승이 재고가와 분양가에 미치는 영향(누적치)
<표 1> 분양가와 재고가가 각각 1.0포인트 증가할 때 장기적 영향(누적치 기준)
--------------------------------------------------------------------------------------
영 향
경 우 ---------------------------------- 유의도
재고가 분양가 10%에서
--------------------------------------------------------------------------------------
재고가 +1.0p +2.38p +0.23p 모두 유의
분양가 +1.0p +0.04p +0.45p 모두 유의
--------------------------------------------------------------------------------------
출처...<첨부 2>. 변수는 재고가, 분양가, 가계부채, 금리, 정권변수 사용. 과도변동항과 기대변동 실현항의 합. 분양가-->재고가 irf그림은 여기 참고. 분양가 --> 재고가의 영향이 +0.04p로서 <그림 2>의 0.012와 다름. 두 그림에서 사용한 모형이 약간 달라서 발생한 문제. 그러나 본질적으로 같은 측정 결과(the same order of effect).
한편 (식6)에서 y1=[1,0]일 때 즉 재고가만 +1.0포인트 변했다면 (식6)을 다음과 같이 다시 쓸 수 있습니다.
(식6)의 c1보다 (식7)의 c1이 많이 작습니다. 즉 '신상'이 시장가격 변동성에 주는 영향이 중고가의 4배(=0.997/0.21)나 될 만큼 크다는 말입니다. 즉 과도변동 항만 놓고 보면 재고주택보다 분양주택이 집값의 단기 변동성에 훨씬 큰 영향을 미칩니다. <그림 2>는 분양가가 1.0포인트 시스템 외부요인 때문에 증가했을 때 분양가와 재고가의 과도변동 항이 n월 후 얼마나 변했는지(누적치)를 보여줍니다. (식6), (식7)에서 본 가격등락적 시계열 패턴을 그림에서 명확하게 볼 수 있습니다.
<표 1>에서는 분양가가 어떤 이유 때문에 1.0포인트 상승했을 때 과도변동 항+기대변동 실현항이 최종적으로 얼마나 집값에 영향을 주는지 보여줍니다. 분양가-->재고가의 경우 영향이 사실상 0에 가깝습니다. 하지만 다른 효과들은 그 영향이 작지 않습니다. 재고가의 경우는 최초 충격 +1.0p가 최종적으로 2.38p 증폭 상승으로 귀결되기까지 합니다. 충격의 모습이 세부적으로 차이는 있지만, 전체적으로 주택가격의 변동성이 작지 않은 영향을 받음을 알 수 있습니다.
이상 분석결과로부터 분양가이든 재고가이든 철저하게 관리해서 주택시장의 과도한 변동성을 통제할 필요가 있다고 주장할 수 있습니다. 이 말이 과연 얼마나 맞는 말인지 알아보겠습니다. 결론은 일정한 qualification이 필요하다입니다.
그 첫 번째 논거입니다. 위 결론이 타당한지는 위 모의실험의 전제였던 충격 시나리오가 얼마나 현실적이냐에 달려 있습니다. 만약 예상하지 못했던 가격 충격이 자주 발생한다면 <그림 2>, <표 1>과 같은 일이 자주 발생할 것입니다. 이런 시나리오의 현실성을 검토해 봅시다. 앞서 살펴 본 VAR모형 (식1), (식2)의 오차항이 이와 관련된 정보를 일부 가지고 있습니다. 이들 오차항은 정부요인을 통제하고 나서 남은, 설명되지 않은 가격변동 즉 오차항들로서, 이들 오차항은 회귀식의 성격상 (+), (-) 항이 뒤섞여 있는 (이론상) white noise입니다. 따라서 이를테면 이런 충격이 연속적으로 (식1)-(식2) 가격시스템에 작용해도 결국 그 영향이 바로 상쇄되어 아주 우연한 경우가 아니면 몇 달이 지나면 그 충격이 averaging-out되어 (식1)-(식2) 가격시스템이 구현했던 fundamental price로 바로 복귀할 것입니다. <그림 3>이 바로 그 결과물입니다. 시장이 알아서 잘 care해 줍니다.
주...<첨부 3> 보수 시나리오. 11달부터는 이전 공급된 주택의 가격에 대한 영향이 점차 소멸되는 시기
<그림 3> 보수 정권에서 분양주택이 10달 동안 달마다 공급되었을 때 분양가에 미친 영향(누적)
출처...<첨부 1>. 위 그림은 누적영향이 아님. 어떤 월까지 누적영향은 곡선의 높이를 해당 월까지 하면 됨. 위 그림에서 빨간선은 문재인 정부 때만 나타남. 보수정부에서는 없음.
<그림 4> 분양가 1포인트 상승 및 문 정부 한 달 집권이라는 충격(즉 Moon(t)=+1)이 동시에 적용되었을 때 n월차 재고가에 미친 영향(누적치 아님)
집값의 파급효과(spillover)를 고려해 철저하게 관리해야 한다는 주장을 qualify해야 하는 두 번째 논거는 이렇습니다. <그림 4>에서는 분양가가 +1.0포인트 외부충격으로 상승하고 문재인 정권이 1달 지속했을 때 이런 동시 충격이 n월차 분양가를 얼마나 올렸는지 보여줍니다(누적 영향 아님). 문 정부 1달 지속의 영향이 다른 두 영향을 압도합니다. 물론 문 정부는 1달이 아니라 60달 지속되었습니다. 더구나 분양가 +1.0포인트라는 충격이 있다면 그 똑같은 확률로 분양가 -1.0포인트라는 충격도 있습니다. 이때 그림에서 까만 선, 파란 선은 정확히 상쇄되어 0의 값을 가집니다. 그러나 문재인 정권더미의 영향은 60회 반복 작용하여 빨간 선은 나홀로 누적 상승합니다. 이 결론은 여기 사이트에서 일관되게 관찰했던 것입니다. 따라서 <그림 4>가 시사하는 바는 명확합니다.
[시사] <표 1>에서 보듯이 투기를 경계하는 것은 맞지만, 정치적, 경제적 요인 가운데 서울 아파트값에 미친 영향은 문재인 정부요인이 압도적이었고 따라서 문재인 정부요인의 제거가 곧 주택가격의 안정과 등치(等値)였다.
그런데 일단 진보 정부요인을 제거하고 나면 남는 것으로서 집값의 변동성에 영향을 주는 것은 재고가-분양가 사이에 체계적으로 존재하는 소규모 변동입니다(systematic variation as opposed to random variations). 결국
서울 집값의 변동 = 진보 정부에 의한 변동(대규모 진폭)+재고가-분양가 사이에 존재하는 또 다른 체계적 변동 + 여타 변동
이라는 말인데, 이 얘기를 좀 더 해보겠습니다.
(식3)에서 nu를 제외하고 나머지 항 모두 계수행렬 A를 포함합니다. 그런데 (식7)에서 보듯이 A의 두 eigenvalue lambda1, lambda2는 절대값 기준 비슷한 크기이지만 부호가 반대이고, A의 어떤 변환으로 주어진 (식3)의 y_n은 시계열적으로 등락합니다. 따라서 서울 집값(재고가 및 분양가)은 가격시스템 자체의 성격 때문에 시계열적으로 등락하면서 어떤 값으로 수렴하는 모양을 합니다. 이 경우 서울 집값의 변동이 어떤 random error항 때문에 발생하기도 하지만 이것 말고도 주택가격이 변동적 특성을 가지고 있다는 말입니다. 아래 링크는 <그림 2>, <표 1>의 내용을 충격-반응분석도로 보여줍니다.
재고가 +1 point --> (재고가, 분양가) 누적영향, <첨부 2>
분양가 +1 point --> (재고가, 분양가) 누적영향, <첨부 2>
이들 그림에 따르면, 가격 충격은 단조 증가적으로 전개되거나 혹은 감쇠 진동적(damped oscillating)으로 전개되는데, 집값의 변동성은 주택가격에 존재하는 감쇠 진동적 특성 때문에 관찰됩니다.
또한 이들 그림에 따르면, 집값은 순환변동 과정을 거치면서 주택시장이 일종의 Walrasian equilibrating process를 거쳐 다시 안정상태를 회복합니다.주1 이 분석결과는 전체적으로 주택시장이 시장에 가해진 충격을 흡수하고 몇 달 안에 스스로 안정을 찾아간다는 점을 보여줍니다. 주택시장의 이런 모습은 정부의 고강도 시장개입이 불가피하다는 여러 연구자들의 생각과 배치됩니다.
다음 절에서는 외부충격에 의한 이런 변동성조차 그 충격이 극단적인 것이 아닌 한(진보 정부요인, 팬데믹) 큰 문제가 되지 않고, 주택시장의 불완전성을 지나치게 강조한 정부개입이 오히려 시장불안을 야기하고 주택가격을 상승시키는 주요 원인으로 작용했다는 점에 관해 알아보겠습니다.
여기 주택논쟁 사이트 개설 이래 반복적으로 확인했던 진보 부동산정책론의 허위성, 그리고 오늘 추가로 확인한 분석결과가 시사하는 바는 문재인 정부 부동산정책에 임의성이 있었다는 것이고, 집값의 정권/정책 주기론에 따르면 그러한 임의성이 문재인 정부 주택가격을 대부분 결정했을 것입니다. 이런 hypothetico-deductive hypothesis가 올바른지 재보고자 합니다.
진보의 허위 부동산정책론 --> 문재인 정부 부동산정책 의사결정=임의적
집값의 정권/정책 주기론 --> 그런 임의성이 문 정부 집값을 대부분 결정
집값의 시계열이 임의성에 지배를 받았다면 주택가격은 random walk라는 확률과정(stochastic process)으로 간주할 수 있고, 그러한 확률과정이 consistent하게 우상향 혹은 우하향의 시계열 패턴을 보였다면 이 random walk를 random walk with drift(RWD)로 specialize할 수 있습니다. 물론 문 정부의 가격추세가 'consistent'하게 통계적으로 유의한 (+)의 기울기임을 우리는 이미 알고 있습니다.
진보의 허위 부동산정책론 ----> 진보정부 정책선택의 임의성 ---------------------> 주택가격의 RWD
+ 집값의 정권/정책 주기론 ↑ (변동의 대부분+주요 특성 설명)
진보의 (+) 편향
(positive drift term)
만약 RWD가설이 타당하고 지금까지 볼 수 없었던 유용한 결과물을 준다면, RWD가설을 낳은 진보 부동산정책론의 비타당성은 또 한번 통계적으로 확인(confirm)이 되는 것입니다. 이제 본격적으로 RWD과정에서 실현되는 서울 집값 스케줄을 생성해 봅시다.
'표류경향이 있는 임의행보' 과정 즉 random walk with drift (RWD) 과정을 재현하기 위해 아래와 같이 생각을 풀어 구현합니다.
진보의 Price Process, 이번 달 가격 = 지난 달 가격 + drift term + stationary error term
= 지난 달 가격 + (+)/(-) drift term + error term of the normal times
= 지난 달 가격 + (+) drift term + 보수정부의 주택가격 변동과정에 등장하는 error term <--지금까지 수행한 분석결과 이용
= 지난 달 가격 + (+) drift term + white noise
--> 이번 달 가격 - 지난 달 가격 = 월간 가격변동
= (+) drift term + white noise
==> RWD 가격변동
주...<첨부 3>. 원점으로 가격 조정. 여기 RWD모형은 2020년 봄 팬데믹 요인에 의한 가격상승을 고려하지 않았음. 팬데믹 요인에 의한 가격상승을 위 그림에 추가하면 실제 가격 스케줄에 더 근접.
<그림 5> RWD process하 분양가 스케줄 vs. 실제 분양가 스케줄
쉽게 말해 문재인 정부 가격스케줄은 이전 보수정부 가격스케줄에 매월 얼마씩 가격이 증가하는 drift 항 하나 추가해서 서울 아파트값의 월간 변동을 모델링할 수 있다 그런 말씀입니다.
<그림 5>는 문재인 정부 시기 분양가가 RWD과정을 따를 때 구현되는 분양가 시계열 모의실험 결과입니다(검은 실선). 임기 후반으로 가면서 일치성이 떨어지지만(팬데믹 미고려) 2019년 전후 있었던 가격의 등락을 잘 구현해 냅니다. 재고가의 경우는 분양가보다 더 그럴듯하게 나옵니다. 연습문제.
[관찰] RWD과정에서 주요 등락이 한 차례 정도 구현되고 그 진폭도 2019년 전후 가격 등락의 진폭과 유사한 크기이다. 이것이 유연의 일치는 아닌 것 같다. 만약 그렇다면 문재인 정부 부동산정책의 임의성 가설은 그 타당성이 더 올라가게 된다. 매우 흥미로운 관찰.
지금까지 여기 사이트에 등장했던 논설과 모형(=VAR모형)로 설명할 수 없었던 현상을 상상가능한 모형 가운데 가장 간단한 모형, 즉 RWD 모형을 이용해서 그 시계열 패턴을 구현했다는 것은 RWD모형의 예측 타당성을 보여주는 사례가 됩니다. 또한 이 모의실험 결과는 진보의 허위 부동산정책론과 주택가격의 정권/정책 주기론이라는 두 경험명제가 시사하는 바(hypothetico-deduction) RWD라는 가설이 자료를 통해 그 가치가 입증(confirm)되었다는 것으로서, 가설의 설명력을 통해 그 근거 명제 두 가지의 타당성도 함께 뒷받침되는 실험 결과를 얻었다는 의미이기도 합니다.
이제 이런 RWD모형을 어떻게 유용하게 활용할 수 있는지 예를 하나 더 들어 봅시다. RWD모형을 이용하면 심사자 B처럼 추측에 의한 방식이 아니고도 당시 있었던 수많은 small deviation을 설명할 수 있는 길이 열립니다. 물론 관심변수와 개별 변동의 원인에 대한 통계적 유의 여부를 직접 보여주는 것은 아니지만, 개별 사례에 대해 특정 원인론을 제기하면서 추측을 사실인 것처럼 타인을 대상으로 고집하는 일은 피할 수 있습니다.
문재인 정부시기 가격이 상승하자 정부는 매입자에 대한 LTV, DTI 규제를 강화하면서 유동성을 규제하였음. 이 때 문재인 정부가 잘못한 것은 서민금융으로 규정지어졌던 주택가격의 50~70%이상 수준에 달하는 전세대출의 확대였음. 출처: 심사자 B의 심사평 line 37-40
문재인 정부 당시 집값 변동에 대해 다양한 논설이 당시뿐 아니라 이후에도 이어졌고, 김수현(2023), 이준구(2023), 앞서 살펴본 심사평도 그런 논설입니다. 이런 논설들과 달리 여기 RWD모형에 따르면 문 정부의 진보편향적 가격상승+random error 항으로 당시 가격변동을 설명할 수 있습니다. 기본적으로 진보의 부동산정책론이 허위라고 본다면 그 실현 역시 random error와 같은 형태로 시장에서 실현될 것입니다. 따라서 이 모형에 따르면 당시 개별적 가격변동은 큰 줄기에서 상향추세를 제하고 어떤 변동이 나타나도 이상하지 않은 것이 됩니다. 술 주정뱅이가 뒤틀거리며 왼쪽으로 갈 때 무슨 특별한 이유가 있어서 그런 것이 아니고, 또 오른쪽으로 갈 때 무슨 특별한 이유가 있어서 그런 것이 아닙니다. 닭장 속에 닭 가두고 불섶 하나 던지면 닭들이 이리 날뛰고 저리 날뜁니다. 심사자 B처럼 불섶을 저래 안 던지고 이래 던졌다면 닭들이 이래 날뛰지 않고 저래 날뛸 수도 있었다고 한들 그게 무슨 의미가 있느냐 그런 말씀입니다. random 방향으로 random 높이로 날뛴 것은 똑같은데... 이준구(2023), 김수현(2023)이 고민했던 온갖 abnormality를 이 RWD모형 하나로 환원시키는 것도 이론상 가능합니다.
새 학기가 열릴 때까지 당분간 쉽니다. 여기 문서가 수백 쪽에 달하지만, 지금까지 한 것이래야 문재인 정부 때 오른 서울 아파트값이 문 정부의 실정(失政) 때문이었다가 모두입니다. 우리 논의의 시계(視界)는 이제 2017년 5월입니다. 당시 문재인 정부 당국뿐 아니라 보수, 시장주의자, 보통 사람 등 서울 집값이 지나치게 높다고 생각한 사람이 많았습니다.
따라서 지금까지 한 논의가 의미가 없지 않지만 왜 2017년 집권 당시 집값이 높았냐고 물으면 할 얘기가 별로 없습니다. 과잉유동성도 아니고 투기도 아니고 다른 수요 요인도 아닌거 같기는 한데 아직 잘 모르겠다 정도??? 또한 문재인, 윤석열 정부를 가른 중요한 차이가 수요곡선의 회전방향이었는데, 왜 그렇게 반대방향으로 회전했는지 그 배경이 무엇이었는지 분명한 설명이 필요합니다.
이제 진짜 어려운 질문에 답할 때가 왔습니다. 그래야 "더 쎄게 했더라면"이라는 미련이 왜 기본적으로 문제가 되는지, 그리고 독야청청 계획계가 한국 부동산의 정치경제학적 지평에서 왜 grand designer인지 이해할 수 있습니다.
논의의 전면에 계획계가 등장하는 순간입니다.
이혁주 드림
주1...VAR모형의 전제는 data generating process가 stationary하다는 것. 변수를 적절하게 선택한 후 추정한 모형에서 VAR모형을 구한 후, 구한 모형을 model이라는 이름으로 저장했을 때 R에서 roots(model)하면 model의 eigenvalue를 보여줌. 이들 eigenvalue의 절대값이 모두 1 미만임. 이때 (식7)에서 이미 확인했듯이 y_n이 n이 증가하면서 0으로 수렴. 즉 가격 등 내생변수의 시계열이 비록 등락이 있을지언정 일정한 값으로 수렴하고 system of equations는 안정상태를 회복하게 됨.
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
Goldberg, Samuel, 1958. Introduction to Difference Equations. New York: Dover Publications.
Lutkepohl, Helmut, 2005. New Introduction to Multiple Time Series Analysis. Berlin: Springer.
<첨부 1> Eigenvalue problem
먼저 수식을 유도한다. 행렬 A의 eigenvalue를 λ1 λ2라고 하면 λ1 =-0.69, λ2=0.66, 각 eigenvalue에 대응하는 eigenvector를 v1, v2라고 하면 v1=[-0.01,0.99]', v2=[0.97,0.20]'이 된다('는 transpose 기호, <첨부 1> 참고). V=[v1,v2]로 놓고 y1을 v1, v2의 선형 조합으로 다시 표현하면, y1=c1*v1+c2*v2=[v1, v2]c=Vc, c=[c1,c2]'인 식으로부터 c=V-1y1을 유도할 수 있다. c의 첫째 항이 c1, 둘째 항이 c2가 된다. 이제 이런 사실들을 이용해서 Any1을 아래와 같이 eigenvector의 선형조합으로 만들 수 있다.
위 식에서 lambda가 A의 eigenvalue일 때 lambda^n은 A^n의 eigenvalue라는 사실을 이용했다. 곧 설명할 절차에 따라 A의 eigenvalue와 eigenvector를 구하고 initial shock을 y1=[0,1]'이라고 할 때 eigenvalue, eigenvector를 (식8)에 대입하면 다음과 같은 식을 얻는다.
본문 <그림 1>이 등장했던 곳에서 특히 문제시가 되었던 것은 분양가 규제였다. 일단 제도적 환경(보수정권 vs. 진보정권) 이슈는 사상하고 어떤 이유로 해서 분양가가 1 point 증가했다고 하자. 즉 (식9)에서 y1=[0,1]'이 된다. y1을 eigenvector의 선형조합으로 표현하면 c=V-1y1=[0.997, 0.012]가 된다. 즉 c1=0.997, c2=0.012로서 이 값을 (식9)에 대입하면 아래 수식을 얻는다.
위에서 사용한 수치는 아래 절차를 거쳐 산출했음.
data=read.csv(file.choose(),header=T) # 자료는 여기
attach(data)
endo=cbind(P_old.d,P_new.d)
exo=cbind(Moon,Pandemic)
model=VAR(endo,p=1,exogen=exo)
A=Bcoef(model)[,1:2]
B=Bcoef(model)[,4:5]
nu=Bcoef(model)[,3]
V=eigen(A)$vectors
Lambda=diag(c(eigen(A)$values),2)
V
[,1] [,2]
[1,] -0.01254341 0.9783487 # 1열이 첫번째 eigenvector v1
[2,] 0.99992133 0.2069632 # 2열이 두번째 eigenvector v2
Lambda
[,1] [,2]
[1,] -0.6925809 0.0000000
[2,] 0.0000000 0.6622842
v1=V[,1]
v2=V[,2]
lambda1=Lambda[1,1]
lambda2=Lambda[2,2]
y1=array(c(0,1),c(2,1)) # 분양가만 +1.0포인트 올라갈 때
c=solve(V)%*%y1
c1=c[1]
c2=c[2]
y1=array(c(1,0),c(2,1)) # 재고가만 +1.0포인트 올라갈 때
c=solve(V)%*%y1
c1=c[1] # -0.21
c2=c[2] #1.02
z=array(0,c(2,20))
cumul=array(0,c(2,20))
z[,1]=array(c(0,1),c(2,1))
cumul[,1]=z[,1]
for(n in 2:20){z[,n]=c1*lambda1^n*v1+c2*lambda2^n*v2
cumul[,n]=cumul[,n-1]+z[,n]}
plot(cumul[2,],cumul[1,],type='b',xlab='분양가에 미친 영향(누적), 포인트',ylab='재고가에 미친 영향(누적), 포인트',xlim=c(0,1.5))
text(0.8,0,'충격')
text(1.37,0,'1달후')
text(1.05,0.0075,'2달후')
text(1.4,0.0065,'3달후') # <그림 2> 완성
y1=array(c(0,1),c(2,1)) # 분양가=+1
x=array(c(1,0),c(2,1)) # Moon(t)=1, No pandemic
sum1=array(0,c(2,30))
sum2=sum1
sum3=sum1
Grandsum=sum1
sum1[,1]=y1
sum2[,1]=0
sum3[,1]=0
Grandsum[,1]=sum1[,1]+sum2[,1]+sum3[,1]
sum1[,2]=A%*%y1
sum2[,2]=nu
sum3[,2]=B%*%x
Grandsum[,2]=sum1[,2]+sum2[,2]+sum3[,2]
for(n in 3:30){sum1[,n]=A^(n-1)%*%y1
sum2[,n]=sum2[,n-1]+A^(n-2)%*%nu
sum3[,n]=A^(n-2)%*%B%*%x
Grandsum[,n]=sum1[,n]+sum2[,n]+sum3[,n]}
plot(sum1[1,],type='l',ylim=c(0,0.2),xlab='경과월',ylab='포인트')
lines(sum2[1,],col='blue',lwd=1.5)
lines(sum3[1,],col='red')
text(8,0.1,'(식3)의 정부요인 항',col='red')
text(15,0.05,'(식3)의 기대변동 실현항', col='blue')
text(8,0.01,'(식3)의 과도변동 항')
lines(sum1[1,]+sum2[1,]+sum3[1,],lty='dotted')
text(16,0.47,'합계=(식3)의 좌변 y_n') # <그림 3> 완성
<첨부 2> <표 1> 만들기
endo=cbind(P_old.d,P_new.d,Debt.d,CD.d) # 위와 동일
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo)
A1=Bcoef(model)[,1:4]
A2=Bcoef(model)[,5:8]
impact=array(c(1,0,0,0),c(4,1)) # 재고가 +1 point
y=array(0,c(4,20))
y[,1]=impact
y[,2]=A1%*%y[,1]
cumul1=array(0,c(4,20))
cumul1[,1]=y[,1]
cumul1[,2]=cumul1[,1]+y[,2]
for(n in 3:20){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]
cumul1[,n]=cumul1[,n-1]+y[,n]}
sum(y[1,]) # 2.38
sum(y[2,]) # 0.23
여기서 irf(model,impulse='P_old.d',cumulative=TRUE,n.ahead=20,ci=0.9)한 후 95% 신뢰구간을 검토하면 모두 0을 포함하지 않고 양수 구간에 위치. 따라서 재고가 +1.0포인트 충격은 재고가를 2.38포인트 유의하게 증가시키고, 분양가도 0.23포인트 유의하게 증가시킴.
impact=array(c(0,1,0,0),c(4,1)) # 분양가 +1 point
y=array(0,c(4,20))
y[,1]=impact
y[,2]=A1%*%y[,1]
cumul2=array(0,c(4,20))
cumul2[,1]=y[,1]
cumul2[,2]=cumul2[,1]+y[,2]
for(n in 3:20){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]
cumul2[,n]=cumul2[,n-1]+y[,n]}
sum(y[1,]) # 0.035
sum(y[2,]) # 0.45
plot(cumul1[1,],xlab='Months elapsed',ylab='point (cumulative)',type='l',ylim=c(-1,3))
lines(cumul1[2,])
abline(h=0)
text(12,0.5,'재고가-->분양가',cex=1.4)
text(12,2.5,'재고가-->재고가',cex=1.4)
plot(cumul2[1,],xlab='Months elapsed',ylab='point (cumulative)',type='l',ylim=c(-1,3))
lines(cumul2[2,])
abline(h=0)
text(12,-0.12,'분양가-->재고가',cex=1.4)
text(12,0.6,'분양가-->분양가',cex=1.4)
여기서 irf(model,impulse='P_new.d',cumulative=TRUE,n.ahead=20,ci=0.9)한 후 90% 신뢰구간을 검토하면 모두 0을 포함하지 않고 양수 구간에 위치. 따라서 분양가 +1.0포인트 충격은 재고가를 0.035포인트 유의하게 증가시키고, 분양가도 0.45포인트 유의하게 증가시킴.
<첨부 3> 모의실험하기
<첨부 2>에 이어서 실행
#보수 시나리오
# Estimate the parameters. ChatGPT 제공 코드
library(MASS)
fit <- fitdistr(ehat_Conserv[2,], "normal") # MLE estimates
mean_est <-fit$estimate[1]
sd_est <- fit$estimate[2]
# Create a histogram of the data
hist(ehat_Conserv[2,], probability = TRUE, breaks = 30, col = "lightblue", main='Normal approximation of the error terms', xlab ='Reg. errors in the P_old.d equation',xlim=c(-4,4))
# Superimpose the normal distribution curve
curve(dnorm(x, mean = mean_est, sd = sd_est), col = "red", lwd = 2, add = TRUE)
아래는 결과물. 이제 여기 분포에서 random error를 원하는 만큼 추출해서 그 영향으로 분양가가 얼마나 영향을 받는지 측정한다.
repetition=10000
impacts=rnorm(repetition,mean_est,sd_est)
total=array(0,c(repetition))
for(iter in 1:repetition){
y=array(0,c(4,30))
y[,1]=array(c(0,impacts[iter],0,0),c(4,1))
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
total[iter]=sum(y[2,])
}
hist(total,xlab='분양가에 준 충격',ylab='관측비율',probability=TRUE,main='',xlim=c(-8,8)) # <그림 5> 완성
#진보 시나리오
# Estimate the parameters. ChatGPT 제공 코드
librarry(MASS)
fit <- fitdistr(ehat_Prog[2,], "normal") # MLE estimates
mean_est <-fit$estimate[1]
sd_est <- fit$estimate[2]
repetition=10000
impacts=rnorm(repetition,mean_est,sd_est)
total=array(0,c(repetition))
for(iter in 1:repetition){
y=array(0,c(4,30))
y[,1]=array(c(0,impacts[iter],0,0),c(4,1))
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
total[iter]=sum(y[2,])
}
hist(total,xlab='분양가에 준 충격',ylab='관측비율',probability=TRUE,main='',xlim=c(-10,10),ylim=c(0,0.6)) # <그림 6> 완성
#시나리오 3: 10회 연속 독립적 분양충격이 있을 때
fit <- fitdistr(ehat_Conserv[2,], "normal") # MLE estimates
mean_est <-fit$estimate[1]
sd_est <- fit$estimate[2]
series=array(0,c(10,30))
for(iter in 1:10){impact=rnorm(1,mean_est,sd_est)
y=array(0,c(4,30))
y[,1]=array(c(0,impact,0,0),c(4,1))
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
series[iter,]=y[2,]}
sum_effect=array(0,c(20))
for(m in 1:10){
sum=0
for(i in 1:m){sum=sum+series[i,m]}
sum_effect[m]=sum}
sum=0
for(m in 11:20){
for(i in 1:10){sum=sum+series[i,m]}
sum_effect[m]=sum}
plot(sum_effect,type='b',ylim=c(-2.5,2.5),xlab='Month',ylab='분양가에 미친 누적영향, 포인트')
abline(v=10,lty='dotted')
text(14.3,2,'-->이후 분양주택 공급')
text(15,1.5,'더 이상 없음') # <그림 3> 완성
#시나리오 4: Garbage can model
set.seed(123) #여기 번호 123을 다른 번호로 바꾸거나 혹은 이 line을 삭제하면 본문 <그림 8>과 다른 모양을 그림을 생성
fit <- fitdistr(ehat_Conserv[2,], "normal") # MLE estimates
mean_est <-fit$estimate[1]
sd_est <- fit$estimate[2]
drift=sum(P_new.d[101:160])/60
n <- 60 # Number of steps
steps <- rnorm(n,mean_est,sd_est) # Generate 'n' random steps from a normal distribution
RW_drift <- cumsum(steps+drift)
months=seq(from=as.Date('2009-01-01'), by = "month", length.out =160) # 160=dataset "data"의 obs의 수
months_subset=months[months>=as.Date('2017-05-01') & months<=as.Date('2022-04-01')]
P_new.d_subset=P_new.d[months>=as.Date('2017-05-01') &months<=as.Date('2022-04-01')]
actual=cumsum(P_new.d_subset)
plot(months_subset,RW_drift,type='l',ylim=c(0,70),xlab='Year',ylab='분양가')
lines(months_subset,actual,col='red')
text(as.Date('2019-06-01'),7,'Actual',col='red')
text(as.Date('2021-09-01'),29,'Random walk')
text(as.Date('2021-06-01'),25,'with drift') # <그림 8> 완성
수신: 이창무, 김수현, 변창흠, 박은철, 김경민 박사
<요약> 2022년 5월 서울 주택가격에서 문재인 정부와 팬데믹 때문에 오른 가격을 제하면 2017년 5월 주택가격이 주어진다. 그런데 당시 청와대는 과잉유동성 때문에 주택가격이 높았다는 인식을 가지고 있었는데, 이 과잉유동성론은 지금까지 분석한 결과에 따라 그 타당성이 부정되었다. 오늘은 2017년 5월 문재인 정부 집권 첫 달 주택가격의 적정성을 판별할 수 있는 기준을 마련하기 위해 rational planning framework라는 규범적 분석틀에 토대를 두고 주택공급 측면에서 계획가의 사명을 실현할 수 있는 비용-편익 기준을 도출한다. 실제 도출은 도시 및 교통계획 분야에서 활용하는 토지이용-교통 일반균형 모형 이론모형의 simple version으로서 '간편모형'을 이용해 유도한다. 도출한 기준에 따르면, 계획가는 수요가격과 공급가격간 차이인 가격격차(price gap)가 주택공급에 따른 부작용 즉 외부비용(external cost)과 일치하도록 주택스톡을 관리해야 하고, 두 수치간 차이는 주택의 과소 혹은 과다 공급을 의미한다. 또한 도출한 결과에 따르면 주택공급과 관련해 발생하는 사회적 순편익 총계는 편익과 비용이 발생하는 도시활동체계 각 부문의 비용과 편익을 분리해 측정한 후 더해서 구할 수 있음도 보여준다(MECE). 이 점은 원하는 만큼 다양한 활동을 포함한 시스템으로 '간편모형'을 확장하고 각 부분시스템에서 발생한 비용과 편익을 측정해 더함으로써 주택공급에 따른 사회적 순편익을 계산할 수 있다는 의미이다. 도출한 비용-편익 기준은 공리주의적 도덕률을 계획활동에 적용하고 연역적 추론과정을 거쳐 유도한 논리적 귀결(implication)로서 공리적(功利的) 계획가에게 실천적 imperative가 되며, 활동 결과물의 계획적, 도덕적 가치를 판단하는 기준이 된다. 계획가는 이 기준을 적용한 결과에 대해서도 받아 들일 도덕적 책무가 있고, 여기에는 도덕적 상찬과 비난도 포함된다.
논의를 다시 시작합니다. 오늘부터는 계획가로 분류되는 인사들을 중심으로 그들의 생각을 알아봅니다. 지금까지 검토했던 신화는 아래와 같습니다.
[진보 신화] 집값은 투기 때문에 높다.
서울 집값의 정권/정책 주기론에 따라 2003년 이래 서울 집값 상승은 대부분 진보정부의 정부요인(정권, 정책) 때문이었습니다. 유동성이라는 "연료"의 공급이 없어도 가격 거품과 투기가 시장에서 장기간 지속될 수 있다는 것을 보여주는 일종의 특이사례입니다(Quinn and Turner, 2020). 정부의 잦은 시장교란이 가격분포의 분산을 증가시키고 거래를 위축시킨 결과의 산물이었는데, 이 기제는 매우 흥미로운 관찰로서 향후 관련 연구를 하면서 중요한 토대가 될 것 같습니다. 한편 진보의 허위 부동산정책론과 집값의 정권/정책 주기론을 이용해 구성한 주택가격의 임의행보(RWD) 모형은 문재인 정부 시절 집값 추세를 잘 replicate해 냅니다. RWD모형은 진보의 허위 부동산정책론과 정권/정책주기론의 타당성을 보여주는(confirm) 실험결과입니다. 이론과 실험은 과학을 지탱하는 두 기둥인데, 진보의 인과론과 일치하는 경험 증거는 단 한 사례도 관찰되지 않았고 다양한 방식으로 수행한 검토와 실험에서 반복적으로 그 타당성이 부정되었습니다. 이를테면, RWD 과정이 확인되었다는 것은 그 자체 진보에게 당혹스러운 정도를 넘어 모멸감, 수치심을 느끼게 하기에 충분한 분석결과였습니다. [진보의 신화]는 검증결과와 설명방식, 수립 명제의 예측력 등 여러 측면에서 그 타당성이 부정되었습니다. 특히 투기억제대책이 수요곡선에 작용하여 수요가격을 자극하는 요인 두 가지를 확인했던 것은 의외의 이론적 성과였습니다(2024.8.19 토론문 <그림 3> 참고).
이러한 분석결과로부터 보수와 시장주의자는 다음과 같이 결론을 내릴 것 같습니다.
[보수 신화] 높은 집값은 진보정부의 산물이다.
한양대 이창무 박사는 아래 글에서
https://www.joongang.co.kr/article/25050045#home
“서울의 주택 공급 부족 문제는 용도지역 제도의 문제가 아니라 독선적 행정의 누적된 부작용 때문이다.”라고 진단합니다. 여기서 "누적된 부작용"은 진보정부(박원순 시정 및 문재인 정부) 시기에 누적된 부작용으로 읽힙니다. 정권 비정(比定)을 하면서 해당 글 "완장 차고 인허가에 거들먹거리던 공무원들"이라는 문구를 참고했습니다. 이런 인식을 연장하면 [보수 신화]가 됩니다.
오늘부터 [보수 신화]와 '이창무'의 인식을 중심으로 보수와 시장주의자가 가진 상식의 타당성을 검토합니다. 이유 몇 가지가 있습니다. 이창무 박사의 인식은 주류 계획가의 입장을 대변하는데, 이런 입장을 앞으로 '이창무'라고 대표하겠습니다.
(1) 보수와 시장주의자의 입장이 진보의 대척점에 있다고 해서, 진보 정책관의 부정이 곧 보수와 시장주의자 시각의 타당성을 시사하는 것은 아닙니다. 이론과 관찰이 일치한다고 이론이 맞다는 보장도 없습니다. 더 당혹스러운 것은 policy outcome이 보수, 진보 각자의 입장을 동시에 confirm하기도 하는데, 이창무 박사의 글에서도 관찰되고 문 정부 초에도 관찰되었던 일입니다. 이런 경험은 각자의 신념을 서로 다른 방향으로 강화합니다. 쉬뢰딩거의 고양이는 아니더라도 인과론적 관점에서 공존해서는 안 되는 일이 공존합니다. 이런 상황이라면 온전한 사람도 머리가 돌아야 정상입니다.
(2) [보수 신화]의 문제가 무엇인지 명확히 규명하지 않으면 차기 진보정부에서 '김수현'이 또 등장하고 어쩌면 더 쎈 '전강수'도 등장합니다. 김수현 박사가 가졌던 의문이 아직 해소된 것은 아닙니다. 과잉유동성 원인론이 부정되었지만, 해소되지 않은 의문은 '김수현'으로 하여금 또 다른 원인론을 쇼핑하게 할 겁니다. 그럼 '김수현'보다 더한 '전강수'의 등장도 시간문제입니다.
(3) 주택시장에서 계획가는 매우 중요한 역할을 합니다. 일상적인 토지이용계획, 토지이용 규제, 밀도계획, 주택계획, 교통계획, 도시재생, 도시설계, 도시계획위원회 등등. 여기 논란과 별개로 학술적 관점에서 주택문제와 계획가의 역할을 연결 짓는 작업도 그 자체 의미가 있습니다.
요약하면, 연구조작적 관점에서 보았을 때 [보수 신화]를 검토하는 일은 <그림 1>에서 진보정부에서 올린 가격을 제거한 가격추세 즉 새롭게 구성한 fundamental price가 과연 적정 수준인지, 그리고 왜 그런 가격추세를 보이는지 따져보는 것이 됩니다. 여기 사이트에서 '거품'이라는 용어는 'upward price movement over an extended range that then implodes'라는 Kindleberger 교수의 정의를 따릅니다(토론문 2024.8.5 토론문에 있는 인용문 참고). 본원가격이라는 용어는 경제시스템의 구조가 결정하는 가격으로서 이를테면 밀도규제 상한이 구속적이라면 이로 인해 본원가격은 올라갑니다. 안전진단 기준, 도시계획위원회 심의과정에서 통상 충족시켜야 하는 각종 명시적, 묵시적 규제와 제한, urban designer가 도시와 단지를 설계할 때 미적, 기능적, 위생적 고려에서 적용하는 각종 기준도 마찬가지로 본원가격에 영향을 줍니다. fundamental price의 적정성을 따져보겠다는 것은 이런 계획관행의 전반적 타당성까지 따져보겠다는 말입니다.
출처...2024.7.8 토론문 <그림 2>
<그림 1> 진보정부가 만든 가격거품을 제거했을 때 서울 아파트가격 지수(재고아파트)
시계(視界)는 이제 2017년 5월 문 정부 집권 초입니다. 지금까지 사용했던 통계분석 기법은 이제 쓸모가 없고, 개념적 논의를 통해서만이 답할 수 있는 주제라서 의문에 답하려면 다른 분석기법이 필요합니다. 학술적으로 정리하는 의미도 있고 학술외적으로도 고려할 것이 있어 부득불 미적분학을 이용해 설명드리겠습니다.
수요가격과 공급가격 간 차이 즉 가격격차(price gap)의 성격을 규명하기 위해 이 가격격차를 도시계획 분야의 토지이용-교통 일반균형 모형을 이용해서 도출합니다. 이 모형은 이산모형(discrete model)이고 확률론적 모형이라서 다루기가 다른 모형보다 다루기가 상대적으로 쉽습니다. 개략적으로 모형에 대해 설명하면 이렇습니다. 부족한 설명은 Hirte et al.(2022)를 참고하세요. 여기 논쟁을 wrapping할 때 사용할 이론이고, '이창무'처럼 지극히 정상적이고 건전한 상식을 가진 계획가의 주택관을 검토할 때 사용할 개념적 도구를 개발하는 과정입니다.
가상의 도시는 두 개의 구역(zone) i=1, 2로 구성되어 있고 구역 1에 모든 고용이 집중되어 있으며, 모든 토지는 주거용도로만 이용됩니다(이 가정은 일반화 가능). 효용함수는 u(x(i),h(i))로서 h는 각각 주거 서비스, x는 주거 서비스 제외 재화들의 소비량을 말합니다. 주거 서비스의 가격은 구역 i에서 r(i), x의 가격은 1입니다. 각 가구는 두 구역 가운데 더 높은 구역을 선택해 거주합니다. 이 도시에서 과밀혼잡에 따른 비용은 교통 혼잡 하나만 존재한다고 가정하고 논의를 진행합니다(일반화 가능).
다양한 이유 때문에 공급에 H0 수준으로 제한적으로 공급될 때, 주택가격 p(i)와 한계비용 α(i) 사이에 차이가 생기는데 이 차이가 가격격차(price gap) p(i)-α(i)가 됩니다. 위 수식 상자 맨 뒤에 있는 수식 (식9)는 price gap g(i)의 변화가 토지임대료 r(i), 주택서비스 임대료 p(i)의 변화와 어떻게 관련되어 있는지를 보여줍니다. 도시 주민의 후생을 극대화하는 주택공급 수준 H0를 결정할 때 이 식을 아주 유용하게 사용합니다.
<그림 2> 주택공급 과부족을 판단하는 방법
이제 주택을 추가공급할 때 도시주민의 전반적인 후생이 증가하는지 감소하는지 따져 봅니다. 만약 <그림 2>와 같은 상황이라면 주택이 부족하고, 이때 주택공급 규제 H0를 증가시킬 때 후생수준 W는 증가합니다. 지금부터 H0를 증가시킬 때 W가 증가하는지 혹은 감소하는지 판별합니다. dW/dH0>0 즉 H=H0에서 W의 기울기가 양수이면 H0<H*로서 <그림 2>와 같은 상황이고 주택공급이 부족한 겁니다.
(식10)에 따르면, 주택공급에서 발생하는 이득(건축비 제외)이 과밀혼잡의 비용보다 크다면 후생함수의 변화율 dW/dH0가 양수로서 H0의 증가가 후생 W의 증가로 이어집니다. (식10) 우변 첫째 항이 price gap g(i)를 포함한다는 점을 확인하세요. 이 경우 이 도시에서 <그림 2>와 같이 현 주택공급 수준이 최적수준 H*보다 낮은 것이 됩니다. 그러나 거꾸로 (식10)에서 과밀혼잡 비용이 주택공급에서 발생하는 이득보다 크다면 현 공급수준 H0에서 평가한 W의 기울기가 음수이고 이는 <그림 2>에서 H0가 H*보다 크다는 의미입니다.
여기 기준은 주택공급 측면에서 계획가가 어떤 선택을 해야 하는지 rational planning framework라는 규범적 분석 틀에서 유도한 결과물로서, 기존 주택공급 과부족 판단기준과 많이 다릅니다. 따라서 이렇게 연역적 도출과정을 거쳐 얻은 기준을 큰 무리 없이 적용하고 얻은 시사라면, 그 정책적, 계획적 시사는 일종의 논리적 귀결(implication)로서 공리적(功利的) 계획가에게 계획성과(outcome)의 가치를 판단하는 기준이자 실천적 imperative가 됩니다.
그리고 기준 도출의 전제가 되었던 공리주의적 가치를 계획가의 규범으로서 배척할 특별한 이유가 없다면, 그렇게 도출한 기준이 시사하는 도덕적 상찬과 비난도 받아 들여야 한다는 의미입니다.
개념적으로 중요한 스텝입니다. 숙고하시기 바랍니다.
이혁주 드림
Quinn, William and John D. Turner, 2020. Boom and Bust: A Global History of Financial Bubbles. Cambridge, UK: Cambridge University Press.
선생님들은 보시지요.
<요약> 주택공급 측면에서 계획가가 어떤 선택을 해야 하는지 합리적 계획모형(rational planning framework)이라는 규범적 틀에서 분석한 결과에 따르면, 계획가는 수요가격과 공급가격간 차이인 가격격차(price gap)가 주택공급에 따른 부작용 즉 외부비용(external cost)과 일치하도록 주택공급을 관리할 때 사회적 후생이 극대화된다. 이를테면 만약 가격격차>외부비용이면, 주택의 추가공급을 통해 그 차이만큼 사회적 순편익이 발생하므로 현 공급수준은 과소공급 상태가 된다. 이 비용-편익 기준을 “서울의 주택 공급 부족 문제는 용도지역 제도의 문제가 아니라 독선적 행정의 누적된 부작용 때문이다.”라는 이창무 박사의 진단에 적용하면, 독선적 행정의 부작용이 상대적으로 적었던 시기에 공익추구적 계획가는 집값의 73%에 달하는 가격쐐기(price wedge)를 주택가격에 반영하고 이로써 주택공급이 생성하는 외부비용이 내부화되도록 주택공급을 관리했다는 것을 시사한다. 그리고 이창무 박사는 이러한 시장의 상태를 정상적 상태 혹은 (근사)바람직한 상태라고 평가한 것이 된다.
본격 논의합니다. 지난 주에 아래 식을 유도했습니다.
<그림 1> 주택이 공급될 때 발생하는 소비자 편익
<그림 1>은 (식1) 우변 첫째 항의 의미를 보여줍니다. 주택이 추가공급되면 주택가격이 하락하는데 이는 곧 price gap g(i)의 감소로 이어져서 주택소비자에게 모두 H(i)*(-∆g(i))만큼 편익이 증가합니다.
따라서 (식1)은 주택공급에 따른 사회적 순편익이 주택공급 증가에 따른 주택부문의 순편익 증가와 외부비용의 합으로 주어진다는 것을 보여줍니다. 한계건축비는 대체로 일정한 편인데 이때 ∆g(i)= ∆p(i)가 되고, 주택부문의 순편익 증가는 소비자 잉여 증가와 같습니다. 왼쪽 그림입니다.
(식1)을 수치해석적으로 경로적분하면 구성요소별 기여를 계산할 수 있습니다. (식1) 좌변에서 W를 MUI(단위는 utile/원)로 나누었으므로 좌변은 화폐단위로 표시됩니다.
(식1)에 따르면 주택공급의 과부족 여부는 주택공급에 영향을 미치는 행위의 부문별 편익과 비용을 따로 고려하고 합산한 결과를 이용해 판단할 수 있습니다. 여기서 주택공급에 영향을 미치는 행위는 밀도규제 포함 다양한 계획규제와 행정을 포함합니다. 이혁주(2019), 이혁주-유상균(2021)에서 다루었던 밀도규제는 여기 공급규제의 특수 사례입니다. 전에 아래와 같이 말한 적이 있습니다.
나중에 용적률 규제론을 공급규제 일반으로 일반화하면, 이 박사의 공급규제론은 부동산정책 논쟁에서 공급중심적 시각의 주요 논설이 되어 수요중심적 시각과 대비되는 관점으로 재평가될 것 같습니다. 출처...2024.1.23 토론문
여기서 이 분석틀을 더 확장하면 외부비용에 경관비용처럼 계획가가 중시하는 다른 비용도 더 고려할 수 있다는 것도 (식1)이 주는 메시지입니다. 왜냐하면 경관은 앞서 본 주택, 교통부문과 다른 부문입니다. 김홍배 외(2024)에 기술된 비용-편익의 기본 원리이기도 합니다.
이제 (식1)의 의미가 명확해졌습니다.
[주택공급 과부족 판단기준: 비용-편익 기준] 주택공급의 과부족은 주택공급을 할 때 주택부문에서 발생하는 가격격차(price gap)와 공급이 초래하는 외부비용(external cost)을 비교해 판단할 수 있다. 만약 주택 1채 공급에 따라 발생하는 가격격차가 그에 따른 외부비용보다 크다면 주택은 과소 공급된 것이 된다.
(식1)을 좀 더 익숙한 틀로 옮기고 '비용-편익 기준'의 의미를 다시 살펴보겠습니다. 후생함수를 똑 같은 기호 W를 사용해 표현하되 도시경제를 구성하는 각 주체의 경제적 후생상태를 수요곡선(inverse demand function)을 이용해 파악할 수 있다고 합시다. 이때 (식1)을 유도하면서 상이한 MUI(marginal utility of income) 때문에 제기되었던 analytical complication을 초장부터 우회할 수 있습니다.
출발은 같습니다. 계획가는 의식하든 하지 않든 다음 문제를 푸는 것으로 theorize할 수 있습니다.
여기서 H0는 주택재고 수준, B는 사회적 편익, C는 사회적 비용입니다. 계획가는 주택공급 수준 H0를 적절히 조절해서 이 식을 극대화합니다. 즉 dW/dH0=social marginal benefit, SMB - social marginal cost, SMC =0이 되도록 H0를 선택합니다. 지난 번에 보았던 이 그림 곡선의 정점에서 이 조건이 성립합니다. 공공복리 극대화는 대한국토-도시계획학회 윤리강령에도 나오는 규범입니다.
후생변화율 dW/dH0 = SMB - SMC
= 주택공급에 따른 한계 편익 - (한계 건축비 + 한계 과밀혼잡 비용)
= 주택가격 - 한계 건축비 - 한계 과밀혼잡 비용 <-- 한계 편익 = 수요곡선의 높이 = 주택가격
= price gap - 한계 과밀혼잡 비용 <-- price gap = 주택가격 - 한계 건축비
= 0
따라서 다음과 같은 관리지표를 얻습니다.
[계획가의 규범적 관리지표] Price gap = 외부비용 (식3)
(식1)은 <그림 1>에서 검은색 사다리꼴 면적을 이용한다면, (식3)은 같은 그림에서 점선으로 둘러싸인 사다리꼴을 이용해 적정 주택공급 수준을 characterize합니다. (식3)이 좀 더 친숙한 formulation입니다.
한편
Statement: “서울의 주택 공급 부족 문제는 용도지역 제도의 문제가 아니라 독선적 행정의 누적된 부작용 때문이다.”
Equivalent statement: 독선적 행정의 누적된 부작용은 서울에서 주택공급 부족 문제를 야기했다.
--> 독선적 행정의 누적된 부작용이 제거된 상태라면 서울의 주택공급 부족 문제는 존재하지 않았다.
+ Rational planning framework에서 서울의 주택공급 부족 문제가 존재하지 않았던 시기에 price gap = external cost.
--> “독선적 행정의 누적된 부작용”이 상대적으로 덜 존재했다고 볼 만한 시기로서 박원순 시장 임기 직전인 2011년 서울의 주택시장에서
['이창무'의 진단] price gap ≒ 외부비용 이라는 방정식이 성립하도록 주택공급 수준 H0가 관리되었다.
가 됩니다. 이때 계획가는 주택의 공급수준에 영향을 미치는 다양한 물적, 가격정책적 수단(price and quantity instruments)을 이용해 외부비용을 주택가격에 내부화한 것이 됩니다. <그림 2> 참고. 그런 수단으로서 밀도규제, 투기억제권역의 지정 같은 것도 있고, 재건축, 재개발 인허가 과정에서 주택공급의 양과 속도에 영향을 미치는 각종 규제도 H0에 영향을 미칩니다. 모든게 모든 것에 영향을 미치는 순환적 인과관계가 내재된 일반균형 환경으로 시야를 확대하면, 각종 투기억제 수단으로 활용되는 경제적 수단도 H0에 영향을 미칩니다.
<그림 2>의 price gap은 <그림 3>에 따르면 박 시장 임기 첫해 주택가격의 73%였습니다(평균가격 기준, 임기는 2011년 11월 실제 시작).
주...비용은 모두 한계(marginal) 개념
<그림 2> 합리적 계획 틀에서 해석한 서울 아파트값의 구성
자료...국토교통부 실거래가 공개시스템. Tax rate는 price gap이 아파트값 평균에서 차지하는 비율. 공급가격=marginal construction cost(MCC)로 놓음. MCC는평균비용과 거의 차이가 없어서 국토교통부 고시 표준건축비를 MCC로 사용
<그림 3> price gap 추세
이창무 박사님께 질문합니다. Rational planning framework에서 박사님의 진단을 해석하면, 박원순 시정(市政) 직전에 price gap을 외부비용과 일치시킴으로써 집값의 73%에 달하는 주택의 외부비용을 내부화하도록 주택공급을 관리했고, 공익추구적 planner가 선택하고 형성한 이런 시장 상태를 박사님은 '정상적 상태' 혹은 (근사)바람직한 상태라고 평가한 것이 됩니다.
잘못 해석했다면 바로 잡아 주시고, 크게 잘못이 없다면 왜 이런 상태가 합리적 계획모형의 지향과 일치하는지 설명해 주시지요.
이혁주 드림
김홍배, 윤갑식, 이현경, 2024. 계획가와 정책가를 위한 비용편익분석론. 서울: 박영사.
이혁주, 2019. 토지공개념과 밀도규제 - 계획가치론적 비판. 「국토계획」 54(2): 170-191.
이혁주-유상균. 2021. 밀도규제의 구속성과 규제의 타당성 검토: 서울 아파트단지를 중심으로. 「국토계획」 56(5): 44-59.
이창무 박사님께 질문합니다.
합리적 계획 패러다임을 따를 때, “독선적 행정의 누적된 부작용”이 상대적으로 덜 존재했다고 볼 만한 박원순 시장 임기 첫 해 2011년 서울의 아파트 시장에서
['이창무'의 진단] price gap ≒ 외부비용 (식1)
이라는 등식이 성립하도록 물적, 경제적 계획수단을 사용해 주택공급의 제(諸)단계에서 계획가는 주택공급 수준 H0를 관리했습니다.
부연하면, 아파트용 토지가 일정 면적으로 주어졌을 때, price gap > 외부비용인 경우 추가적인 토지의 투입 없이 아파트 공급을 조금씩 늘리면 그렇게 할 때마다
(1) price gap=집값(down) - 한계 건축비(up or const.) 감소
(2) 외부비용 증가
결과: price gap(감소) - 외부비용(증가) 감소,
즉 price gap - 외부비용의 크기가 감소합니다. <그림 1> 참고.
<그림 1> Price gap > 외부비용일 때
이때 price gap과 외부비용간 차이의 감소에 비례해서 사회적 순편익이 새로 발생합니다. 이를테면 그림에서 주택공급이 H0일 때 사회적 잉여는 ABEF로 주어지지만 공급을 화살표만큼 늘리면 잉여는 ACDF가 되고 그 차액인 BCDE만큼 사회적 잉여가 추가로 발생합니다. 이 경우 주택은 과소공급 상태였다고 판정할 수 있습니다.
두 값의 차이가 사라지고 더 이상 사회적 순편익이 발생하지 않을 때 '공급'을 멈추면 (식1)이 성립하고, 주어진 아파트용 토지의 면적에서 사회적 잉여가 극대화됩니다. 즉 왼쪽 그림에서 두 곡선이 교차하는 점까지 주택공급을 늘렸을 때 (식1)이 성립하고 welfare triangle의 면적이 최대가 됩니다. 여기서 H0는 주택공급에 영향을 미치는 계획시스템 내 다양한 활동의 총화로서 주어지고, 비단 용적률 규제의 결과로서만 해석할 필요는 없습니다.
만약 price gap < 외부비용이라면, 아파트의 공급밀도 혹은 전체 volume이 과잉일 가능성이 있기 때문에 아파트 단지의 밀도를 줄이고 저밀개발을 유도하거나 혹은 서울인구를 분산하고 억제해서 서울 시계내 주택수요를 줄이는 방안에 대해서 생각해 보아야 합니다.
장기적으로는 아파트용 토지면적도 가변 투입요소이고 이때 (식1)은 재검토되어야 하고 시나리오에 따라 분석은 복잡해 집니다. 타주거용지로/에서 전용하는 경우, 주거용지가 아닌 토지로/에서 전용하는 경우 등 분석은 복잡해지고 토지의 기회비용 하나만 어찌어찌 가감하는 것 이상으로 복잡한 비용-편익분석 문제가 됩니다. 2024.9.2 토론문에 실린 분석모형을 이용하면, 비록 이론모형이지만 무엇을 어떻게 비용-편익분석에 반영해야 하는지 중요한 실무적 지침을 얻을 것으로 기대합니다. 이 연구는 후배 연구자들의 몫으로 돌립니다. 현실에서는 market distortion이 심한데, 이를테면 세금과 규제간 상호작용 같은 문제는 여기 논의에서 부차적이지만 비용-편익분석에 반영하는 경우 직관적으로 어떻게 해야 하는지 그렇게 명료하지 않습니다. 아파트 대(對) 다른 유형의 주택 문제도 비슷합니다. 다양한 시나리오에서 MECE 방식으로 분석하고자 할 때 2024.9.2 토론문에 실린 이론모형이 쓸모가 있습니다.
이렇게 시야를 장기로 확대하면 분석이 복잡해지지만, (식1)은 단기지표로서 이용상의 간편성, 후속 연구의 출발점(benchmark)으로 사용될 수 있다는 점 등 규범적, 실무적 관리지표로서 유용합니다.
합리적 계획모형의 시각에서 보았을 때 주택가격에 존재하는 가격격차는 계획시스템이 주택부문에 부과한 Pigouvian tax입니다. 이제 이창무 박사님이 이러한 아이디어를 담은 (식1)을 설명할 차례입니다.
이혁주 드림
이창무 박사님은 대답하시지요.
최근까지 살펴본 바에 따르면, 진보의 주요 명제와 정책론에 경험적 증거가 부족합니다. 쉽게 말해 그냥 a hodgepodge of speculations입니다. 그러나 정책론의 경험적 증거 부족이 곧 이들의 기저인식에 오류가 존재한다는 것을 시사하지는 않습니다.
[진보의 기저인식] 집값이 지나치게 높고 정의롭지 못하다.
박사님께 드린 질문은 이 기저인식의 타당성과 직접 관련된 질문이기도 합니다. 가능성은 2가지입니다.
가능성 1: 부동산정책론도 기저인식도 오류를 내포하고 있다.
가능성 2: 부동산정책론은 허위이지만, 기저인식은 올바르다.
만약 이 기저인식이 올바르다면, 언제고 제2, 제3의 문재인 정부가 등장합니다. 또한 해당 논설에는 면밀한 검토가 필요한 다른 주장도 있습니다.
아래는 이 박사님의 학계 및 사회활동 목록입니다. 이런 활동을 하는 분의 의견입니다. 여느 유튜버가 하는 소리가 아닙니다. 따라서 그 타당성은 검증대상입니다.
[기타경력]
- 2024.3~2025.2(현) 한양대학교 교수평의원회. 평의원.
- 2023.7~2026.7(현) 아시아부동산학회(AsRES). BOD member(이사).
- 2021.3~2025.2 (현) 대한국토도시계획학회. 이사.
- 2022.8~2024.11(현) 국토교통부 장관 정책자문위원회. 위원.
- 2022.8~2024.2(현) 국토교통부 성과관리 자체평가위원회. 위원.
- 2023.6~2024.6(현) 2025 인구주택총조사 자문위원.
- 2023.8~2024.8(현) 서울특별시. 명예시장(도시계획).
- 2021.10~2023.10(현) 서울특별시 도시계획위원회. 위원.
- 2021.9~2023.9(현) 서울특별시 지방보조금관리위원회. 위원.
- 2021.4~2023.3(현) 한국자산관리공사. 공공개발 자문위원.
- 2020.10~2022.9(현) 서초구 경부간선도로 입체화 자문위원회. 위원.
- 2020.1~2022.12(현) The International Academy of Financial Consumers. BOD member(이사).
- 2019.1~2020.12(현) 한국부동산분석학회. 명예회장 및 연구윤리위원장.
- 2018.7~2023.7(현) 아시아부동산학회(AsRES). BOD member(이사).
- 2019.1~(현) 한국부동산금융투자포럼. 학술위원장.
- 2016.9~2020.8(현) 기획재정부 자체규제심의위원회. 위원.
- 2018.1~2023.1(현) 국토교통부 공공지원 민간임대주택 자문위원회 위원.
- 2014.5~2022.4(현) 경인 지역통계발전협의회. 전문위원.
- 2016.9~2020.9(현) 공무원연금공단. 실물자산운용위원회. 위원.
- 2015.8~2020.8(현) 경기도시공사 투자심의위원회. 위원.
- 2013.5~2021.5(현) 주택금융공사. 주택금융전문가협의회. 전문위원.
- 2011.6~2022.6(현) 한국감정원. 연구자문위원.
- 2011.3~2021.2(현) 한국토지주택공사 기술심사평가위원.
- 2020.5~2022.5(현) 한국지방행정연구원 지방투자사업관리센터 자문위원회 위원.
- 2019.11~(현) 하나자산신탁. 부동산자문위원회. 위원.
- 2015.6~2023.6(현) 부동산분석. 한국감정원. 편집위원.
- 2013.9~2019.9(현) LH공사. LHI Journal 편집위원회. 편집위원.
- 2015.3~2020.3(현) 주택도시금융연구. 주택도시보증공사. 편집위원.
- 2016.1~(현) 서울부동산포럼. 이사.
- 2020.9~(현) 천안직산 공공지원민간임대주택 공급촉진지구 총괄계회가(MP). 한국토지주택공사.
- 2017.1 ~ 2018.12 한국부동산분석학회. 회장.
- 2017.7 ~ 2018.7 아시아부동산학회(AsRES). 회장.
- 2016.1 ~ 2016.12 한국주택학회. 회장.
- 2017.1 ~ 2018.12 국토교통부 중앙도시계획위원회. 위원.
- 2014.1 ~ 2017.1 국토교통부 중앙부동산공시가격위원회. 위원.
- 2013.6 ~ 2017.7 기획재정부 국유재산심사위원회. 위원.
- 2013 ~ 2017 국토교통부 주거정책심의회. 위원.
- 2013 ~ 2015 대통령직속 지역발전위원회. 위원.
- 2011 ~ 2013 서울특별시 건축위원회 및 도시건축공동위원회. 위원.
- 2010 ~ 2012 서울특별시 주택정책심의위원회. 위원.
- 2010 KBS. 객원해설위원
- 2005 ~ 2008 부동산114(주). 부동산DB연구소 소장.
- 2016.7 ~ 2017.7 아시아부동산학회(AsRES). 선임 부회장(President Elect).
- 2015.7 ~ 2016.7 아시아부동산학회(AsRES). 부회장.
- 2012.7 ~ 2015.7 아시아부동산학회(AsRES). 이사.
- 2013 ~ 2016 한국부동산분석학회. 부회장.
- 2016 한국주택학회. 회장
- 2013 ~ 2016 한국부동산분석학회. 부회장
- 2013 ~ 2015 한국주택학회. 부회장
- 2013 ~ 2014 한국주택학회. 편집위원장
- 2007 ~ 2014 한국주택학회. 학회지 편집위원
- 2011 ~ 2012 한국부동산분석학회. 편집위원장
- 2008 ~ 2012 한국주택학회. 학술위원장
- 2013 ~ 2016 대한국토도시계획학회. 상임이사
- 2006 ~ 2009 대한국토도시계획학회. 학회지 편집위원
- 2013 ~ 2015 대통령직속 지역발전위원회. 위원
- 2009 ~ 2014 주택산업연구원. 이사
- 2012 ~ 2013 기획재정부. 부담금운용평가단. 평가위원
- 2012 ~ 2013 경기도시공사 평가위원회. 위원
- 2011 ~ 2013 서울특별시 도시건축공동위원회. 위원
- 2011 ~ 2013 서울특별시 건축위원회. 위원
- 2012 ~ 2013 2030 서울플랜 수립 추진위원회. 위원
- 2008 ~ 2012 대한국토도시계획학회. 이사
- 2008 ~ 2012 대한국토도시계획학회. 국제학술교류위원장
- 2010 ~ 2012 서울특별시 주택정책심의위원회. 위원
- 2011 ~ 2012 한국토지주택공사 마케팅자문위원회. 위원
- 2010 ~ 2011 서울특별시 주거환경개선사업 시기조정위원회. 위원
- 2010 ~ 2011 친서민 주택정책 전문가 포럼. 자문위원. 국회 국토해양위
- 2010 경기도시공사 선진화위원회. 위원
- 2010 KBS. 객원해설위원
- 2008 ~ 2010 서울시 주거환경개선 정책자문위원회. 위원
- 2009 ~ 2010 미래에셋 부동산114(주) 자문위원
- 2008 동탄2신도시 특화방안 자문위원
- 2007 ~ 2008 서울시 공공디자인 위원회 위원
- 2005 ~ 2008 부동산114(주). 부동산DB연구소 소장
- 2007 ~ 2008 광교명품신도시특별계획 자문위원
- 2007 ~ 2009 서울메트로 디자인자문위원
- 2007 ~ 2008 한국지역학회. 편집위원
- 2007 ~ 2008 한국디벨로퍼협회. 전문위원
- 2007 ~ 2008 대한주택학회. 이사
- 2007 ~ 2010 대한주택학회. 부학술위원장, 부편집위원장
- 2007 ~ 2008 한국부동산분석학회. 상임이사
- 2002 ~ 2006 한국부동산분석학회. 이사
- 2005 ~ 2007 한강유역환경청 사전환경성 검토 및 환경영향평가 자문위원
- 2002 ~ 2005 ㈜ R2Korea. 자문위원
- 2000 ~ 2005 ㈜ 모두넷 부동산 114. 자문위원
- 2004 공인중개사 시험 출제위원
- 2004 경상남도 인사위원회, 출제위원
- 2003 서울시 강남구청, 행정자문위원
출처...https://changmoo.hanyang.ac.kr/
합리적 계획모형이 시사하는 윤리강령을 존중하는 계획가라면, '이창무'는 주택공급의 부작용(external cost)이 왜 price gap만한 크기라고 생각하는지 설명해야 합니다.
이혁주 드림
'
이창무 박사님은 보시지요.
이창무 박사는 중앙 및 서울시 도시계획위원, 서울시 명예시장(도시계획)입니다. 즉 서울시와 국토교통부에서 이 박사의 계획관, 주택관을 endorse했다는 뜻입니다. 한국주택학회 회장도 마찬가지입니다. 학회장에 선임되었다는 것은 회원들 다수가 이창무 박사의 주택관을 endorse했다는 의미입니다.
그런데 합리적 계획론의 시각에서 이창무 박사의 말 "서울의 주택 공급 부족 문제는 용도지역 제도의 문제가 아니라 독선적 행정의 누적된 부작용 때문이다."를 해석하면, "독선적 행정의 누적된 부작용"이 상대적으로 적었던 2011년 박원순 시정(市政) 첫해에 집값 대비 주택공급의 부작용(external cost)이 담배 세율만큼 컸음을 시사합니다. 공리적 계획가라면 가격격차가 외부비용과 일치하도록 주택공급 수준을 관리하기 때문입니다.
이를테면 외부비용이 집값의 73%라면, 가격격차가 집값의 73%가 되도록 공리적 계획가는 주택공급 수준을 관리하고, 제대로 된 계획시스템에서라면 집값=한계건축비+외부비용으로 주어집니다. 그런데 이 비율 73%는 담배 세율 74%보다 1%p 낮습니다.
결과적으로 이창무 박사는 집을 담배 취급했습니다. 그리고 정부와 한국주택학회에서 그런 이창무 박사의 주택관, 계획관을 endorse했다는 것은 정부와 한국주택학회도 결과적으로 집을 담배 취급하는 주택관을 가지고 있다는 의미입니다.
설명해야 합니다.
이혁주 드림
이창무 박사님은 보시지요.
이창무 박사는 중앙 및 서울시 도시계획위원, 서울시 명예시장(도시계획)입니다. 즉 서울시와 국토교통부에서 이 박사의 계획관, 주택관을 endorse했다는 뜻입니다. 한국주택학회 회장도 마찬가지입니다. 학회장에 선임되었다는 것은 회원들 다수가 이 박사의 주택관을 endorse했다는 의미입니다.
그런데 합리적 계획론의 시각에서 이창무 박사의 말 "서울의 주택 공급 부족 문제는 용도지역 제도의 문제가 아니라 독선적 행정의 누적된 부작용 때문이다."를 해석하면, "독선적 행정의 누적된 부작용"이 상대적으로 적었던 2011년 박원순 시정(市政) 첫해에 집값 대비 주택공급의 부작용(external cost)이 담배 세율만큼 컸음을 시사합니다. 공리적 계획가라면 가격격차가 외부비용과 일치하도록 주택공급 수준을 관리하기 때문입니다.
여기서 가격격차는 정책변수 H0가 결정하는 변수로서 계획가의 통제하에 있고, H0를 어떻게 놓느냐에 따라 아파트공급에 따른 외부비용도 결정됩니다. 주택공급 정책변수 H0를 작게 하면 가격격차가 더 커지고, H0를 크게 하면 가격격차가 작아지기 때문에, H0를 적절하게 조절함으로써 가격격차를 moving target인 외부효과와 일치시킬 수 있습니다.
주....H0는 계획시스템에 의해 공급된 양, H*는 최적 공급수준, 사회적 한계비용=한계건축비+외부비용. 외부비용도 marginal 개념. 그럼에도 교과서에서 그냥 외부비용이라고 표기(오해하면 안 됨). 토지의 기회비용은 여기 사회적 한계비용(SMC)에서 제외됨. 규제의 적절성을 논의하는 자리. 소유권이 거래되는 경우 주택 매매가격은 자산의 가치가 되므로 토지가격이 포함됨. 토지라는 투입요소가 binding한 경우가 아니라면 토지의 기회비용을 SMC에 반영하면 안 됨.
<그림 1> Price gap vs. external cost
좀 더 구체적으로, 외부비용이 집값의 73%라면, 가격격차가 집값의 73%가 되도록 공리적 계획가는 주택공급 수준 H0를 관리하고, 제대로 된 계획시스템에서라면 집값은 외부비용과 일치하는 price wedge를 한계건축비에 얹은 값, 즉 집값=한계건축비+가격격차=한계건축비+외부비용으로 주어집니다. <그림 1>에서 주택공급 H0가 H*와 일치할 때 이 방정식이 성립합니다. 그림에서 보듯이 집값=한계건축비+가격격차 > 한계건축비+외부비용일수도 있고(과소 공급), 집값=한계건축비+가격격차 < 한계건축비+외부비용일수도 있습니다(과잉 공급).
그런데 합리적 계획시스템이 산출한 암묵적 외부비용이 서울에서 아파트값의 73%로서 이는 담배 세율보다 1%p 낮습니다. 결과적으로 이창무 박사는 집을 담배 취급했습니다. 그리고 정부와 한국주택학회에서 그런 이창무 박사의 주택관, 계획관을 endorse했다는 것은 정부와 한국주택학회도 결과적으로 집을 담배 취급하는 주택관을 가지고 있다는 의미입니다.
설명해야 합니다.
이혁주 드림
이창무 박사님은 보시지요.
여기 사이트의 일관된 입장은 측정해보자는 것이고, 그래서 재보니 진보의 상식과 주장 다수에서 오류를 발견했습니다. 이런 결과는 유령명제의 확인, 과잉유동성론과 집값 경기적 주기론의 부정, 집값의 정권/정책 주기론 및 진보의 허위 부동산정책론 수립 등으로 요약되었습니다.
그 대척에 있는 보수와 시장주의자들의 scholarship이 견실했더라면, 한국 사회의 절반을 구성하는 faction이 이 정도로 엉망이 되지 않습니다. 보수의 scholarship은 진보가 가진 핵심 의문에 대해 전혀 답을 하지 못했던 것 같습니다. 진보 한두 사람은 멍청한 짓 할 수 있어도 한 faction이 오류에 빠졌을 때는 그 대척에 있는 보수의 설명 방식을 진보가 이해하지 못해서이고, 그 이유가 보수의 생각과 설명방식에 존재하는 심각한 문제 때문일 수도 있다는 점을 의심해야 합니다. 이념의 차이, 세계관의 차이로 돌리기 전에, 부동산 이슈의 정치화를 말하기 전에, 대립으로 싸움으로 투쟁으로 가기 전에 easy-going하는 연구자가 아니라면 취해야 할 자세입니다.
벌써 몇 해전 어느 방송에서 주택문제에 대해 선대인 씨하고 토론할 때, 선대인 씨의 기초 학력에 의문을 표했던 적이 있습니다(유튜브에 있음. 주소 찾지 못함). 당시 어떤 이유에서이건 선 씨가 이 박사님의 설명이 충분하다고 느끼지 않아서 생긴 일이었습니다. 만약 그때 그런 인사들한테 연구자들이 더 잘 설명할 수 있었다면 선 씨한테 그런 정도의 평가를 해야 하는 상황은 피할 수 있었을 것입니다. 그런 '학력부족자'가 당시 이재명 지사의 중요 참모로 일했습니다. 만약 이재명 지사가 대선에서 승리했다면 어떤 식으로든 중요한 역할을 했을 겁니다. 문재인 정부 season 2가 반복되었을 것이고, 여기 주택논쟁 사이트도 2022년 5월 조종(弔鐘)을 울렸을 것입니다.
선대인 씨는 지식 소비자이지 생산자는 아닙니다. 선 씨 사례는 일차적으로 그의 지적 의문에 답하지 못했던 진보의 scholarship 때문에 발생했지만, 동시에 보수 scholarship의 한계를 보여주는 사례이기도 합니다. 계획계의 스칼라십은 진보와 보수가 상대를 이해할 수 없는 존재로 인식하게 하는 근인(根因)으로 작용했습니다.
이창무 박사처럼 건전하고 상식적인 인사의 생각을 검토하는 것은 그래서 중요합니다. 김수현, 변창흠, 김경민, 박은철, 전강수 박사의 구멍 난 스칼라십을 이창무 박사 같은 분이 채우고 이들이 가졌던 의문을 일부라도 해소하는 역할을 해주어야 합니다. 연구커뮤니티에서 먼저 정리해야 하는 문제입니다. 침묵한다고 문제가 해결되지 않습니다. 다만 이연(移延)할 뿐입니다.
2011년 박원순 시정 첫해 주택공급의 부작용(external cost)이 어떻게 집값의 70%를 넘었는지 보통의 계획가이자 정부와 학계에서 지지를 받는 '이창무'의 설명이 있어야 합니다. 만약 이렇게 문제를 characterize하는 것이 마음에 안 든다면, 대안적 틀을 제시하고 설명해도 좋습니다. 그러나 어느 경우라도 external cost=price gap=집값의 73%=Pigouvian tax rate라는 합리적 계획모형의 규범적 시사에 관해 설명할 수 있어야 합니다.
이해불가한 일로 가득차 있어 제정신이기 힘든 세상이어도 넘어지지 않으려면 연구자들이 sense-making해야 합니다.
이혁주 드림
이창무 박사님은 보시지요.
문재인 정부 이후 진보와 보수 부동산정책관의 인식지평은 더 분열적으로 변한 것은 아닌지 우려가 됩니다. 이것이 '이창무'가 답해야 하는 이유입니다. 왜냐하면 '이창무'의 인식이 그 근인(根因)으로 의심되기 때문입니다.
문재인 정부 이후 진보 쪽 입장에 어떤 변화가 있는지 먼저 살펴봅시다. 외견상 큰 변화가 감지되지 않고 사람에 따라서는 오히려 더 강화되었습니다. 이준구(2023)는 변화가 감지되지 않은 사례입니다. 심사자 B, 심사자 C의 경우(1차 심사평, 2차 심사평) 문재인 정부가 두 사람을 혼란스럽게 했던 것으로 추정되지만, 커다란 입장 변화가 있었던 것 같지는 않고 여전히 시장에서 그 원인을 찾는다는 인상을 받습니다. 반면, 김수현(2023)은 신념이 더 강화된 사례가 됩니다. 윤석열 정부 등장 후 김수현(2023)에서 "정책신뢰 상실"이라고 입장을 정리했다는 것은 더 세게 했더라면 성공할 수도 있었다는 의미입니다. 만약 '김수현'이 재집권 후 책임을 다시 진다면 더 세게 나올 것으로 예상됩니다. 전강수 박사도 신념을 더 강화한 사례입니다. 처음부터 문 정부 정책을 반대했다고 입장을 분명히 한 '전강수'는 문 정부 실패사례를 보면서 확신을 더 다지게 되었을 것으로 보입니다(종전 이메일 참고). 보수정책에 거부감을 가진 사람들 가운데도 비슷한 사람이 있겠지요. 인과론을 시궁창에 처박은 작가들은 희망사고가 시키는 대로 이유를 찾으면 거기에 항상 '이쁜' 이유가 널려 있고, 없으면 '풍차'를 새로 만들어 세우면 되고... 정책은 별 거 없습니다. 그런 작품대로 시행하면 그게 정책입니다. 이렇게 randomness에 지배 받을 때 서울 집값은 28차까지 한 주정뱅이가 새벽에 집 찾아가는 걸음새 모양을 하게 되고 그 empirical confirmation이 RWD(random walk with drift) 모형이었습니다(2024.8.22 토론문 참고).
보수와 시장주의자의 경우 문재인 정부 이후 자기 확신은 더 깊어졌습니다. 진보 중에는 문 정부 사례를 보고 반성하는 사람도 일부 있었을 것으로 보이지만, 보수와 시장주의자는 거의 예외 없이 종전 입장을 더 강화하는 계기가 되었습니다.
용적률 500%를 허용하는 4종 주거지역을 신설해 용도지역 체계를 뿌리째 흔들 성마른 해법에 매달리고 있다. ... 지난해 4월 오세훈 서울시장 취임 이후 ‘신속통합기획’ 같은 전향적인 태도 변화만으로도 짧은 기간 동안 상당한 변화가 일어나고 있다. 7층으로 묶였던 2종 주거지역 완화 조치를 제외하면 제도적 뒷받침도 거의 없이 이룬 성과다. [출처: 중앙일보 2022.2.22 오피니언: 시론] https://www.joongang.co.kr/article/25050045
살짝 바꾸었는데도 이런 효과를 보았다는 것은 반(反)진보적 부동산정책의 타당성을 보여주는(confirm) 움직일 수 없는 증거가 됩니다. 그런데 이런 평가를 한 이창무 박사는 아래와 같은 사람입니다.
[수상내역]
- 2023 한국주택학회 상반기 학술대회 최우수논문상(논문발표)
- 2022 한국부동산분석학회 상반기 학술대회 우수논문상(논문발표)
- 2022 한국부동산분석학회 상반기 학술대회 우수논문상(논문발표)
- 2021 한국주택학회 하반기 학술대회 우수논문상(논문발표)
- 2021 한국부동산분석학회 하반기 학술대회 우수논문상(논문발표)
- 2021 대한국토도시계획학회 추계학술대회 우수논문상(논문발표)
- 2021 한국주택학회 상반기 학술대회 우수논문상(논문발표)
- 2021 한국부동산분석학회 상반기 학술대회 우수논문상(논문발표)
- 2021 대한국토도시계획학회 춘계산학학술대회 우수논문상(논문발표)
- 2020 대한국토도시계획학회 추계학술대회 우수논문상(논문발표)
- 2020 감사장. 기획재정부 자체규제심의위원회 민간위원. 부총리겸 기획재정부 장관
- 2020 한국부동산연구원, 2020년 우수논문상(학회지)
- 2019 한국부동산분석학회, 상반기학술대회 우수논문상
- 2018 대한국토도시계획학회 추계학술대회 우수논문상
- 2017 한국주택학회, 정기학술대회 우수논문상(학회지)
- 2017 한국주택학회, 정기학술대회 우수논문상(논문발표)
- 2017 한국부동산분석학회, 정기학술대회 최우수논문상(피인용부문)
- 2017 한국부동산분석학회, 정기학술대회 우수논문상(논문발표)
- 2016 한국주택학회, 우수논문상
- 2015 대한국토도시계획학회, 학술상-우수논문상
- 2014 한국부동산분석학회, 최우수논문상
- 2013 한국주택학회, 최우수논문상
- 2012 한국주택학회, 우수논문상
- 2011 한국주택학회, 우수논문상
- 2009 한국주택학회, 우수논문상
- 2009 서울시 표창장, 서울특별시 주거환경개선정책 자문위원회
- 2008 한국주택학회, 우수논문상
출처...https://changmoo.hanyang.ac.kr/
학계에서 이런 정도로 신뢰하는 연구자라면 "서울의 주택 공급 부족 문제는 ... 독선적 행정의 누적된 부작용 때문이다.”라는 평가는 이창무 박사 한 사람의 평가를 넘어 보통의 계획가이자 반진보적 성향의 '이창무' 다수가 공유하는 평가라는 뜻입니다. 즉 반진보적 성향의 인사는 '이창무' 사례에서 보듯이 문재인 정부를 거치면서 진보적 부동산정책의 부당성을 더욱 확신하게 되었습니다.
방향은 반대이지만 '이창무'도 전강수, 김수현 박사처럼 기존 신념을 더 굳혔습니다. 그 결과, 계획계뿐 아니라 한국사회에서 보수와 진보간 거리는 더 멀어지고, 그 거리에 비례하여 더욱더 존중, 대화, 타협, 상호 포용 대상이 아닌 관계가 됩니다. 현 모순을 만들어낸 기성질서(establishment)는 더 공고해지고, 부동산은 주택은 더욱더 정파적 경쟁과 이념적 반목, 투쟁의 대상이 됩니다. 진보가 다시 집권하면 옷을 바꾸어 입은 '김수현', '전강수'가 등장하고 부동산의 탈상품화가 더 진전된 형태로 다시 추진되면서 현대 한국의 제도적 토대로서 재산권에 큰 변화가 있을 것 같습니다. 이건 간단한 문제가 아닙니다(한상훈, 2021; 한상훈 박사 토론 p.10). 그리고 보수가 집권하면 정확히 이전 정책을 뒤집는 진자운동을 반복합니다.
지금 한국사회는 성급하게 아무 말 대잔치 중이고, 이렇게 좌우 막론하고 부동산 작가가 점령한 공론의 장에서는 어떤 논의도 의미 있게 이루어 질 수 없습니다. 한국은 더 이상의 탈상품화 논의를 할 만한 정서적, 지적 준비가 되어 있지 않고, 보수와 시장주의자의 처방도 마찬가지입니다.
이런 혼돈의 중심에 부동산과 주택이 있고, 주택과 부동산은 계획가의 전통적 직역(職域)입니다. 과연 서울 집값이 온전히 진보의 책임이고 보수와 계획계는 독야청청할 수 있는 것인지 따져 보아야 하는 이유입니다.
['이창무' 진단의 의미] 합리적 계획모형에 입각할 때, 2011년 price gap ≒ 외부비용이 성립하도록 공리적 계획가가 서울의 주택공급을 관리했다는 것은 서울에서 아파트 과잉공급으로 인한 폐해가 매우 커서 담배에나 적용하는 고율(高率)의 세금을 아파트에 부과함으로써 과도한 공급과 소비, 보유를 억제하고자 함이었다.
'이창무'의 생각이 현 맥락에서 무엇을 시사하는지 이제 뚜렷이 보았다면, 가치재인 사적재(私的財)이지만 자산가격의 절반 이상이 그 부작용에 따른 비용으로 구성되어야 한다고 보는 rational planner '이창무'는 corrective penalty가 왜 이렇게 커야 하는지 설명해야 합니다. 문재인 정부를 거치면서 주택관과 계획관의 intelligence를 더욱 확신하게 된 이창무 박사라면 응당 설명할 수 있습니다.
이혁주 드림
김수현, 2023. 부동산과 정치. 경기도 파주: 오월의 봄.
이준구, 2023. 누가 내 집 마련의 꿈을 빼앗아 갔는가? 경기도 고양: 문우사.
한상훈, 2021. 자본주의 사적 토지소유의 역사적 한계와 대안적 토지재산권의 구성(논평). 김학열-이혁주(편), 토지공개념과 국토-도시계획: 계획현상의 이해와 실천, pp.120-127. 서울: 보성각.
이창무 박사님께
이 박사님의 진단이 타당한지 검토하고 있습니다.
그러자면 rational planning이라는 moral framework에서 출발해 연역적으로 도출해 낸 implication으로서 price gap에 대해 설명하셔야 합니다. deductive inference의 특성상 reasoning 과정에 오류가 없고 구성개념에 무리가 없다면, 그 implication은 논리값으로서 true가 부여됩니다. 이제 남은 것은 price gap의 moral implication을 경험적 implication, 근거와 연결하는 작업입니다.
대한민국 planning system 전반의 intelligence뿐 아니라, 진보에 대한 비판으로서 근거가 분명한지 판별하자면 박사님의 설명이 있어야 합니다.
대답하시지요.
이혁주 드림
설명이 부족한 것 같군요.
시점을 2011년 박원순 시장 임기 직전에서 임기중으로 옮기고 질문을 rephrasing해 보겠습니다.
<그림 1>에 따르면 2008년 금융위기 이후 price gap이 가장 작았던 때는 2013년 7월이었습니다. 이후 문재인 정부 출범 2017년 5월까지 상승한 집값(빨간 선분)을 모두 "독선적 행정의 누적된 부작용" 탓으로 돌린다 해도 물음표에 해당하는 가격격차는 설명이 안 되고 남습니다. 바로 이 지점입니다. 지난 주에 2가지 이유 때문에 대답해야 한다고 했던 것이 바로 이것 때문입니다.
박사님의 대답 여하에 따라 다음 항목에 대한 판단이 결정됩니다.
(1) 한국 planning system 전반의 intelligence
(2) '이창무' 포함 보수와 시장주의자의 진보 비판 근거의 타당성
주...국토교통부 실거래가시스템의 재고주택 중위 매매가를 이용해 작성. <첨부 1>에 자료 있음.
<그림 1> 박원순 시장 재임 기간 서울 아파트가격 가운데 추가 설명이 필요한 부분
이혁주 박사의 사고과정을 좀더 설명 드리겠습니다. 사족을 달면 수도권 한 연구기관을 방문해 junior researcher와 잠깐 얘기를 한 적이 있었는데, 꽤 진지한 연구자였습니다. 그런데 이혁주 박사의 설명이 도통 이해하기 어렵다면서 거의 울 지경이었습니다. 농담이 아니고 내버려 두었으면 울음이 터져 나올 것 같은 얼굴이었습니다. 이후 못난 선배들이 한국의 미래를 책임질 새싹 연구자들의 지적 욕구에 답하지 못해서 생기는 일이라고 반성을 많이 했습니다. 중언부언이어도 이해 바랍니다.
가격격차의 성격 규명을 위해 처음 착목했던 부분은 주택의 benefit, cost 가운데 비용 쪽이었습니다. 그랬던 것은 분석상 편리해서였습니다. 왜냐하면 benefit 쪽에서 볼 때 price gap에 온갖 것이 뒤섞여 있고 섞여 있는 구조도 복잡해서 얘기를 풀어가기가 만만치 않았습니다. 그런데 합리적 계획모형이라는 규범적 분석 틀을 이용하면 benefit인 price=willingness to pay와 달리 공급비용(social marginal cost)은 손쉽게 MECE 방식으로 분리해 측정할 수 있습니다. 좀 더 구체적으로, 수요곡선의 성질로부터 price = SMB, rational planning paradigm으로부터 SMB=SMC이고, 이 두 방정식으로부터 price = SMC ≡ MCC+EC을 유도할 수 있습니다. 이제 이 식에서 변수를 이항하면 EC = price - MCC ≡ price gap라는 방정식을 얻게 됩니다. 마지막 식은 방정식이라서 특정 주택공급 수준에서만 성립하고, 이 방정식(equation)을 성립시키는 공급량이 바로 계획가가 생각하는 최적 공급수준 H*가 됩니다.
≡는 등호 =와 달리 definition symbol. 이를테면 price - MCC를 price gap이라고 부르고 싶을 때 price gap ≡ price - MCC라고 씀. 하지만 저자들이 보통 ≡이라는 기호는 잘 쓰지 않고 등호를 이용해 대신 자주 표현
SMB=social marginal benefit, SMC=social marginal cost, MCC=marginal construction cost, EC=external cost
MECE: mutually exclusive and collectively exhaustive
그림에서 이 박사님이 아직 설명하지 않은 부분 즉 물음표의 길이만큼 가격격차가 남아 있습니다.
이혁주 드림
<첨부 1> 자료 및 R 코드
seoul=read.csv(file.choose(),header=T) # 자료 내려받기 단위: 만원/평
View(seoul)
attach(seoul)
taxrate_med=(Median-Const_cost)/Median
start_date <- as.Date("2006-01-01")
time_index <- seq(from = start_date, by = "month", length.out =179)
plot(time_index,taxrate_med,type='l',ylim=c(0,1),ylab='Tax rate',xlab='',lwd=2)
segments(x0 = as.Date('2017-05-01'), y0 = 0.637, x1 = as.Date('2017-05-01'), y1 = 0.734, col = "red", lwd = 3)
segments(x0 = as.Date('2013-07-01'), y0 = 0.637, x1 = as.Date('2017-05-01'), y1 = 0.637, lwd = 2)
text(as.Date('2013-07-01'), 0.6,'2013.7')
text(as.Date('2017-05-01'), 0.6,'2017.5')
segments(x0 = as.Date('2017-05-01'), y0 = 0, x1 = as.Date('2017-05-01'), y1 = 0.637, lwd = 2,lty='dotted')
text(as.Date('2017-05-01'), 0.3,'?',cex=3)
abline(h=0)
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
A good is a merit good. But, the govt taxes it heavily. What comes to your mind?
ChatGPT said:
A classic example that comes to mind is cigarettes. Cigarettes are a private good because they are excludable and rival in consumption. They are often considered a "merit good" from a public health perspective in the sense that reducing their consumption is believed to benefit society. Despite their negative externalities (such as health issues and healthcare costs), governments tax them heavily to discourage consumption and offset the societal costs associated with smoking.
You said:
Cigarettes are a demerit good.
ChatGPT said:
You're absolutely right—cigarettes are a classic example of a demerit good, as they tend to have negative externalities. A more fitting example of a merit good that is also heavily taxed might be gasoline or petrol. While it offers private benefits and is necessary for transportation, the government often taxes it heavily to account for environmental concerns and encourage the adoption of cleaner alternatives.
You said:
Is gasoline a merit good?
ChatGPT said:
You're correct; gasoline is not a typical merit good. Merit goods are those that provide benefits to society and are often under-consumed if left to the private market (e.g., education and healthcare). Gasoline doesn't fit this description, as its consumption results in negative externalities like pollution.
A better example of a private good that might be considered a merit good and still taxed by the government could be sugary drinks or alcohol. While they have private benefits, they are often taxed to discourage overconsumption and address public health concerns.
You said:
I don't think sugary drinks or alcohol is a merit good.
ChatGPT said:
You're right—sugary drinks and alcohol are not merit goods. They are actually examples of demerit goods, as their consumption can lead to negative health outcomes. Merit goods are typically things like education, healthcare, or public transportation, which provide broader social benefits beyond the individual consumer's private gain.
You said:
It seems that you have a hard time finding a merit good that is taxed heavily. Right?
ChatGPT said:
Yes, it can be tricky because merit goods are typically subsidized or provided at low cost to encourage their consumption. However, one example of a merit good that is often taxed is higher education. In many countries, tuition fees are taxed, and there may be other forms of taxation related to education (such as VAT on educational materials), despite education being considered a merit good due to its positive externalities for society.
You said:
Give me specific examples of the tuition fees taxed.
ChatGPT said:
You're right, and I should clarify that in many countries, tuition fees themselves are not directly taxed. However, there are a few related examples where taxation still impacts merit goods like education:
Value-Added Tax (VAT) on Educational Services:
In some countries, private educational services, such as private tutoring or training courses, may be subject to VAT.
For example, in the UK, most university tuition fees are exempt from VAT, but other private educational services may incur VAT.
Textbooks and Study Materials:
In some countries, students must pay VAT on textbooks, school supplies, or other study materials.
For example, in the United States, sales tax on textbooks can apply, depending on the state.
Graduate Tax:
Some countries, like the UK, have income-contingent student loan repayments that act like a graduate tax, where graduates repay their tuition fees as a percentage of their income once they earn above a certain threshold. This isn't a direct tax on tuition but can be seen as a form of tax on the investment in education over time.
These examples show that while tuition itself might not be directly taxed, the broader educational experience can still incur some form of taxation.
You said:
It seems that you have a hard time finding a merit good that is heavily taxed. Right?
ChatGPT said:
Yes, you’re absolutely right. Most merit goods are typically subsidized or provided at lower costs by governments to encourage their consumption due to their positive externalities. Heavy taxation is more common for demerit goods that have negative externalities, such as cigarettes, alcohol, or sugary drinks, to discourage consumption.
Finding a heavily taxed merit good is indeed challenging because it goes against the typical government policy of encouraging merit goods. If you have any other questions or need further clarification, feel free to ask!
You said:
So, the conclusion is that merit goods are not taxed heavily and are typically tax-exempt or subsidized. This implies that when a good is taxed heavily, we may classify it as a demerit good.
ChatGPT said:
Yes, that's a fair conclusion. Generally, if a good is taxed heavily, it's often because it has negative externalities that the government wants to discourage—characteristics of demerit goods. Demerit goods, like alcohol, tobacco, and sugary drinks, impose societal costs such as health care burdens or environmental damage, which justify heavy taxation.
In contrast, merit goods—those that provide broader social benefits like education, healthcare, and public transportation—are usually subsidized or offered at reduced costs to promote their consumption. Therefore, if a good is subject to heavy taxation, it is more likely to be classified as a demerit good.
You said:
In fact, the very definition of merit goods is at variance with heavy taxation. This is why you could not find a single case of merit goods heavily taxed.
ChatGPT said:
Exactly! The very concept of merit goods implies that they generate positive externalities, which is why governments tend to support them through subsidies, incentives, or free provision rather than imposing heavy taxes. Merit goods, by definition, should be accessible and encouraged for the public good. This is fundamentally at odds with heavy taxation, which is usually reserved for goods with negative externalities (demerit goods) to curb their consumption.
So, you're right—there's a clear mismatch between the nature of merit goods and heavy taxation, which explains why finding an example of a heavily taxed merit good is difficult, if not impossible.
이혁주 드림
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
이혁주 드림
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
그렇게 할 때는 이유가 명확해야 합니다.
이혁주 드림
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
그렇게 할 때는 이유가 명확해야 합니다.
이혁주 드림
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
그렇게 할 때는 이유가 명확해야 합니다.
그런 이유로서 이 박사님이 제시할 이유는 다음 3가지 요건을 갖추어야 합니다. (1) 규범적 계획의 틀에서 도출되었으면서, (2) 왜 무겁게 과세해야 하는지 이 질문에 답을 하고, (3) 그 논리적 시사로서 주택의 과부족에 관해서도 의미 있게 답하는 그런 것이어야 합니다.
지금 필요한 건 파격적이면서도 생산적인 논의입니다. 이런 논의가 필요한 이유는 다음과 같습니다.
첫째, 지금 상황은 엄중합니다.
둘째, 지금까지 논쟁은 다람쥐 쳇바퀴였습니다.
셋째, 진보와 계획가들의 안목, 분석력이 어떤지 보았습니다.
대답하시지요.
이혁주 드림
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
그렇게 할 때는 이유가 명확해야 합니다.
아래는 2010년대 초 합리적 계획시스템이 작동한 서울의 주택부문에서 벌어진 일입니다.
Planner's problem: Maximize social welfare
--> Social marginal beneft ≡ price + external benefit
= social marginal cost <-- Rational planning system
≡ MCC + external cost
--> price gap ≡ price - MCC = external cost - external benefit
--> external cost = price gap + external benefit
= 집값의 70% + external benefit <-- 2010년대 재고 아파트값 및 당시 건축비 통계
> 집값의 70%
따라서 현재와 같은 과세는 다음과 같은 상황에서 정당화됩니다.
경우 1: 피구세 = external cost > 집값의 70%
경우 2: 피구세 = external cost >> external benefit
경우 3: 순 외부비용 ≡ external cost - external benefit
= 집값의 70%
이혁주 드림
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
그렇게 할 때는 이유가 명확해야 합니다.
아래는 합리적 계획시스템이 작동한 서울의 주택부문에서 2010년대 초반 벌어진 일입니다.
Planner's problem: Maximize social welfare
--> Social marginal beneft ≡ price + external benefit
= social marginal cost <-- Rational planning system
≡ MCC + external cost
--> price gap ≡ price - MCC = external cost - external benefit
--> external cost = price gap + external benefit
= 집값의 70% + external benefit <-- 2010년대 재고 아파트값 및 당시 건축비 통계
> 집값의 70%
따라서 현재와 같은 과세는 다음과 같은 상황에서 정당화됩니다.
경우 1: 피구세 = external cost > 집값의 70%
경우 2: 피구세 = external cost >> external benefit
경우 3: 순 외부비용 ≡ external cost - external benefit
= 집값의 70%
그런데 재화 가격의 70%를 넘는 세율로 그 부작용을 억제하고자 과세하는 재화는 사회 통념상 가치재와 거리가 있습니다(경우 1).
통근통행에 부과하는 혼잡통행료를 유사 사례를 거론할 수 있지만, 주택에 부과한 피구세는 화폐 단위로 측정한 세금의 크기, 영향을 받는 집단의 범위와 규모, 조세부담의 정치경제적 함의, 세금의 회피 가능성 등 혼잡통행료와 비교하는 것은 무리입니다.
congestion toll t = SMC - Avg cost = d(f*g(f))/df - g(f) = f*g', t/g = f*g'/g = (df/dg*g/f)^-1. f traffic volume, g(f) cost borne by a traveller. 따라서 commute travel demand elasticity df/dg*g/f =g/t. 여기서 t=external cost EC (1st-best congestion toll), SMC=SMB at optimum ≑ price. Avg cost = SMC - t ≑ price - EC. 따라서 commute avg cost는 한계건축비 MCC에 대응. 즉
commute travel demand elasticity = g/t (통근통행의 경우)
= Avg construction cost/Ec (주택의 경우)
≑ MCC/EC (주택의 경우)
g/t는 https://www.vtpi.org/elasticities.pdf, Table 18, p.40에 따르면 매우 비탄력적. 그러나 generalized travel cost에 대한 탄력성은 0.5~2.0, p.50. generalized cost가 더 합리적인 비용개념이므로 이를 이용하면
0.5 < MCC/EC < 2.0.
서울에서 MCC/EC = 0.3/0.7 = 0.43. 따라서 서울 아파트시장에 가해진 피구세는 통근통행에 부과한 1st-best 혼잡통행세와 비교가능한 크기이나, 1st-best toll과 비교해도 하한에 해당하는 극단적 사례로서 서울 아파트의 경우 계획가가 생각하는 EC 대비 MCC가 지나치게 작음.
이혁주 드림
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
그렇게 할 때는 이유가 명확해야 합니다.
아래는 합리적 계획시스템이 작동한 서울의 주택부문에서 2010년대 초반 벌어진 일입니다.
Planner's problem: Maximize social welfare
--> Social marginal beneft ≡ price + external benefit
= social marginal cost <-- Rational planning system
≡ MCC + external cost
--> price gap ≡ price - MCC = external cost - external benefit
--> external cost = price gap + external benefit
= 집값의 70% + external benefit <-- 2010년대 재고 아파트값 및 당시 건축비 통계
> 집값의 70%
따라서 현재와 같은 과세는 다음과 같은 상황에서 정당화됩니다.
경우 1: 피구세 = external cost > 집값의 70%
경우 2: 피구세 = external cost >> external benefit
경우 3: 순 외부비용 ≡ external cost - external benefit
= 집값의 70%
그런데
재화 가격의 70%를 넘는 세율로 그 부작용을 억제하고자 과세하는 재화는 사회 통념상 가치재와 거리가 있습니다(경우 1).
또한 재화의 부정적 효과가 긍정적 효과보다 훨씬 큰(>>) 재화라면, 왜 주택을 굳이 가치재라고까지 애초에 불렀는지 의문이 생깁니다(경우 2).
이창무 박사님은 보시지요.
가치재는 보조금은 주어도 무겁게 과세하지는 않습니다.
그렇게 할 때는 이유가 명확해야 합니다.
아래는 합리적 계획시스템이 작동한 서울의 주택부문에서 2010년대 초반 벌어진 일입니다.
Planner's problem: Maximize social welfare
--> Social marginal beneft ≡ price + external benefit
= social marginal cost <-- Rational planning system
≡ MCC + external cost
--> price gap ≡ price - MCC = external cost - external benefit
--> external cost = price gap + external benefit
= 집값의 70% + external benefit <-- 2010년대 재고 아파트값 및 당시 건축비 통계
> 집값의 70%
따라서 현재와 같은 과세는 다음과 같은 상황에서 정당화됩니다.
경우 1: 피구세 = external cost > 집값의 70%
경우 2: 피구세 = external cost >> external benefit
경우 3: 순 외부비용 ≡ external cost - external benefit
= 집값의 70%
그런데
재화 가격의 70%를 넘는 세율로 그 부작용을 억제하고자 과세하는 재화는 사회 통념상 가치재와 거리가 있습니다(경우 1).
또한 부정적 효과가 긍정적 효과보다 훨씬 크다면(>>), 왜 주택을 굳이 가치재라고까지 애초에 불렀는지 의문이 생깁니다(경우 2). 처음부터 주택은 social bad라고 불러야 했던 것은 아닌가 합니다.
비가치재 가운데 순 외부비용(net external cost)이 재화 가격의 절반을 훌쩍 뛰어 넘는 재화는 처음부터 혐오재라고 불러야 합니다. 서울 아파트는 처음부터 혐오재라고 불렀어야 합니다(경우 3).
혐오재라면 살아 있는 원숭이 머리 뚜껑 열고 깜빡이는 원숭이 눈을 마주 보면서 뇌를 파먹는 몬도가네 음식(영화 인디아나 존스), 성인용품으로서 리얼돌 같은 것들이 있습니다.
이혁주 드림
이창무 박사님은 보시지요.
아래는 진보정권의 영향이 크지 않았던 2010년대 초반 합리적 계획시스템이 작동했던 서울의 주택부문에서 벌어진 일입니다.
수요가격과 공급가격간 차이(price gap) = 집값의 70%
피구세 = external cost > 집값의 70%
피구세 = external cost >> external benefit
순 외부비용 ≡ external cost - external benefit
= 집값의 70%
<그림 1> 한국 planning system의 투입과 산출
이상 분석결과를 정리하면 <그림 1>과 같습니다. '이창무'의 주택관에 따르면 서울의 높은 집값은 “독선적 행정의 누적된 부작용 때문”인데, 이 그림은 그의 주택관에서 암흑물질(dark matter) 취급했던 부분이 내재된 서울 아파트가격을 합리적 계획 틀에서 다시 해석한 결과입니다.
이혁주 드림
이창무 박사님은 보시지요.
<그림 1> 한국 planning system의 투입과 산출
출처...2024.10.7 토론문 <첨부 1> 자료 이용
<그림 2> 서울 아파트가격에서 price gap이 차지하는 비중
지금까지 분석한 결과를 시스템 시각에서 정리하면 <그림 1>과 같습니다. '이창무'의 주택관에 따르면 서울의 높은 집값은 “독선적 행정의 누적된 부작용 때문”인데, 이 그림은 그의 주택관에서 암흑물질(dark matter) 취급했던 부분이 내재된 서울 아파트가격을 합리적 계획 틀에서 다시 해석한 결과입니다.
price gap의 존재를 인지하고 그 의미를 잘 이해했다면, 진보를 탓하면서 계획가의 책임도 비슷하거나 더 높게 비중을 두고 논의했어야 합니다. <그림 2>에 따르면 박원순 시정과 문재인 정부로 책임을 돌릴 수 있는 부분은 전체 가운데 일부에 지나지 않습니다. 이것이 대표 계획가 '이창무'의 주택관/계획관에 '암흑물질'이 존재했다고 보는 근거입니다.
이혁주 드림
이창무 박사님은 보시지요.
<그림 1> 한국 planning system의 투입과 산출
출처...<첨부 1>. 2024.10.7 토론문 <첨부 1> 자료와 동일. 곡선 윗 부분은 아파트값에서 건축비(marginal construction cost)가 차지하는 비중
<그림 2> 서울 아파트가격에서 price gap이 차지하는 비중
그간 얘기를 정리하면 <그림 1>과 같습니다. 이 그림은 높은 집값이 진보의 “독선적 행정의 누적된 부작용 때문이다.”라고 진단한 '이창무'의 주택관에서 암흑물질(dark matter)로 처리한 부분이 내재된 서울 아파트값을 합리적 계획 틀에서 다시 해석한 결과입니다.
이 암흑물질은 시민단체의 분양원가 공개 요구에서, 진보의 개발이익 공유와 토지공개념 강화 요구에서 줄곧 문제시되었던 것인데, 보수와 시장주의자가 이런저런 이유에서 본격 거론을 꺼렸던 부분입니다.
여기 논쟁에서는 이 암흑물질을 가운데 놓고 논의합니다. 진단과 처방에 문제가 있기는 해도, 진보는 보수와 달리 <그림 2>에서 보듯이 서울 주택가격에서 비중이 가장 큰 부분과 직접 관련이 있는 부분에 주목했습니다. 진보는 보수가 간과한 부분을 피하지 않고 문제의 핵심을 정면으로 마주했습니다. 대표 계획가 '이창무'와 다른 모습입니다. 이건 진보의 차별적 기여가 됩니다.
이혁주 드림
<첨부 1> 그림 그리기
seoul=read.csv(file.choose(),header=T) # 자료 내려받기 단위: 만원/평
View(seoul)
attach(seoul)
taxrate_med=(Median-Const_cost)/Median
start_date <- as.Date("2006-01-01")
time_index <- seq(from = start_date, by = "month", length.out =179)
plot(time_index,taxrate_med,type='l',ylim=c(0,1),ylab='',xlab='',lwd=2)
segments(x0 = as.Date('2013-07-01'), y0 = 0.637, x1 = as.Date('2020-11-01'), y1 = 0.637, lty='dotted',lwd='1.5')
text(as.Date('2013-07-01'), 0.6,'2013.7')
이창무 박사님은 보시지요.
<그림 1> 한국 planning system의 투입과 산출
그간 얘기를 정리하면 <그림 1>과 같습니다. '이창무'는 집값 높은 것이 진보의 “독선적 행정의 누적된 부작용 때문이다”라고 진단하는데, 이 그림은 '이창무'가 암흑물질(dark matter) 취급한 부분이 내재된 서울 아파트값을 합리적 계획 틀에서 다시 해석한 결과입니다.
System failure입니다.
들어간 것과 나온 것이 다릅니다.
이혁주 드림
이창무 박사님은 보시지요.
<그림 1> 한국 planning system의 투입과 산출
그간 얘기를 정리하면 <그림 1>과 같습니다. '이창무'는 높은 집값이 진보의 “독선적 행정의 누적된 부작용 때문"이라고 진단하는데, 이 그림은 '이창무'가 암흑물질 취급한 부분이 내재된 서울 아파트값을 합리적 계획 틀에서 다시 해석한 결과입니다.
System failure입니다.
이 결론은 '이창무'가 외부효과의 크기에 대해 어떻게 생각하는지 그 주관적 평가에 구애 받지 않고 타당합니다. 왜냐하면 이 결론은 2010년대 초반 factual truth로서 실재했던 계획의 결과를 이용해 도출했기 때문입니다.
2010년대 초반은 GFC 충격에서 회복했던 시기이고 노무현 정부가 끝났던 2008년 2월과도 거리가 있던 시기였습니다. 또한 당시 오른 집값이 모두 박원순 시정 때문이라고 해도 2013년 7월 임기중 가장 낮은 price gap도 집값의 60%를 넘었습니다. 이후에도 이 최저값이 개선될 기미가 없었습니다.
이혁주 드림
이창무 박사님은 보시지요.
<그림 1> 한국 planning system의 투입과 산출
그간 얘기를 정리하면 <그림 1>과 같습니다. '이창무'는 높은 집값이 진보의 “독선적 행정의 누적된 부작용 때문"이라고 진단하는데, 이 그림은 '이창무'가 암흑물질 취급한 부분이 내재된 서울 아파트값을 합리적 계획 틀에서 다시 해석한 결과입니다.
System failure입니다.
이 결론은 아래 가설의 논리적 시사(imply)입니다.
[가치재-비가치재 괴리 가설] 한국의 계획시스템에서 주택은 이론상 가치재로 간주되지만, 실무에서는 비가치재로 취급된다.
이 괴리 가설은 전제-->연역적 추론-->결론 도출-->결론과 전제 비교-->양자간 불일치 발견이라는 과정을 밟아 도출했습니다. 수학 명제를 증명할 때 쓰는 proof by contradiction을 연상하게 합니다.
이혁주 드림
이창무 박사님은 보시지요.
<그림 1> 한국 planning system의 투입과 산출
그간 얘기를 시스템 시각에서 정리하면 <그림 1>과 같습니다. '이창무'는 높은 집값이 진보의 “독선적 행정의 누적된 부작용 때문"이라고 진단하는데, 이 그림은 '이창무'가 암흑물질 취급한 부분이 내재된 서울 아파트값을 합리적 계획 틀에서 다시 해석한 결과입니다.
System failure입니다.
이 결론은 아래 가설의 논리적 시사(imply)입니다.
[가치재-비가치재 괴리 가설] 한국의 계획시스템에서 주택은 이론상 가치재로 간주되지만, 실무에서는 비가치재로 취급된다.
이 괴리 가설은 전제-->연역적 추론-->결론 도출-->결론과 전제 비교-->양자간 불일치 발견이라는 과정을 밟아 도출했습니다. 수학 명제를 증명할 때 쓰는 proof by contradiction을 연상하게 합니다.
여기서 "양자간 불일치", "proof by contradiciton"의 contradiction이란 아래와 같은 관찰(2024.11.5 토론문)을 말합니다.
재화 가격의 70%를 넘는 세율로 그 부작용을 억제하고자 과세하는 재화는 사회 통념상 가치재와 거리가 있다.
또한 부정적 효과가 긍정적 효과보다 훨씬 크다면(>>), 왜 주택을 굳이 가치재라고까지 애초에 불렀는지 의문이 간다.
비가치재 가운데 순 외부비용(net external cost)이 재화 가격의 절반을 훌쩍 뛰어 넘는 재화는 처음부터 혐오재라고 불러야 한다. 서울 아파트는 처음부터 혐오재라고 불러야 했다.
서울에서 계획시스템은 합리적으로 작동하지 않았습니다.
이혁주 드림
이창무 박사님은 보시지요.
한국 계획시스템에서 System failure가 발생했다는 statement는 서울 주택부문에 관한 관찰임에도 '서울' 대신 '한국'이라는 표현을 썼습니다. 근거는 다음과 같습니다.
서울의 중요성 그리고 price gap 문제는 서울만의 문제가 아니라는 관찰
시스템 실패의 발생원인이 외부비용에 대한 professional bias 때문에 발생했다는 점. 이것 아니면 '이창무'가 가진 암흑물질의 존재를 설명 불가. 2024.9.12, 2024.9.30 토론문에 있는 이창무 박사의 경력 및 연구 실적 참고.
서울시계(市界) 안과 밖에서 상충적으로 미치는 주택공급의 긍부정적 영향에 대한 수도권 광역지자체와 계획가의 이해 부족
나중에 다른 충격적 통계를 이용해서 왜 서울이라는 특정 표본의 관측만 가지고도 '서울' 대신 '한국'이라는 표현을 써도 되는지 추가 근거를 제시합니다. 시스템 실패라는 결과에 걸맞게 system-wide 원인이 존재합니다. 서울 집값이 진보의 작품이라는 것은 큰 오해입니다. 이 인식이 왜 오해인지 규명하는 것이 여기 논쟁 사이트의 주요 목적입니다.
본론으로 와서, system failure 결론은 여기서 이혁주 박사가 처음 기술한 내용인 만큼 필요에 따라 system failure 가설이라는 표현도 쓰겠습니다. 그런데 지금까지 system failure 가설을 가치재-비가치재 괴리 가설의 시사로 취급했습니다. 오늘은 system failure를 괴리 가설과 별개로 취급하고 시스템 실패 가설의 타당성을 표준적인 절차를 따라 '직접' 검정합니다.
구체적으로 검정 절차는 아래와 같습니다.
(1) 출발점(전제): planning system은 합리적으로 작동
(2) 전제가 시사하는 Theoretical expectation 도출
At optimum, social marginal benefit ≡ social marginal cost, which implies
price + external benefit = MCC + external cost <-- 2024.10.28 토론문 참고
--> external cost = price gap + external benefit
<-- price gap=price - MCC, MCC: marginal construction cost≑average construction cost
= 매년 국토부가 발표하는 표준 건축비
(3) 영가설 설정
Null hypothesis H0: 한국 planning system = rational
Operationalized null hypothesis H0: external cost = price gap + external benefit
(4) 관측결과와 대조
price gap + 외부편익의 관측치 = 집값의 약 70% (식1)
전에 보았던 이 그림에서 SE를 대충 3%로 잡으면 (식1)은
price gap + 외부편익의 관측치 = 집값의 약 70% ± 6% (식2)
그런데 실제 외부비용 = 연간 10만원 --> 2*10만/3%=660만원/가구
(이상경 외, 2001) = 집값의 660만원/13억원
= 집값의 0.5% (식3)
따라서 (식2)의 95% 신뢰구간은 (식3)의 값과 너무나 동떨어진 신뢰구간. 아래 <그림 1> 참고.
즉 실제 외부비용 << price gap + 외부편익.
(5) 검정 결과: 영가설 기각, 즉 서울에서 계획 시스템은 합리적으로 작동하지 않았음.
<그림 1> 시스템 실패 가설: 외부비용 vs. price gap+외부편익
이상경 외(2001)는 용적률 규제완화가 초래하는 주거환경 악화에 대해 가구가 얼마나 지불할 의사가 있는지 조사한 자료인데, 과밀혼잡의 사회적 비용을 지나치게 작게 잡은 조사연구라고 생각하는 분도 있을 수 있습니다. 어떤 연구이건 시비의 대상이 되는 것은 자연스럽지만, 이상경 외(2001)는 face value 이상으로 의미가 있습니다. 이를테면 상상가능한 거의 모든 종류의 민감도 분석을 해도, 실제 외부비용이 price gap+외부편익에 비해 지나치게 작습니다. <그림 1>에서 빨간 선 2개 사이의 거리에 주목하세요.
몇 가지 코멘트입니다.
모평균의 검정 및 모평균 차이의 검정에서 보는 표준 format과 약간 다르지만, 두 측정치의 근접도를 통계량의 변동성을 고려해 판단한다는 일반적인 원칙을 여기 검정에서도 그대로 활용했습니다.
현 계획관행에서 보듯이 외부비용을 최대한 크게 잡아 현재의 계획실무를 정당화고자 한다면, 주택공급의 외부편익도 같은 비중으로 중시해야 합니다. 외부비용과 외부편익은 최적 주택공급 수준에 반대 방향으로 영향을 주고, 따라서 상쇄관계에 있습니다. <그림 1>에서 외부비용을 왼쪽 빨간 선에서 오른쪽으로 최대한 얼마나 늘려 잡을 수 있는지 검토하면서, 오른쪽 빨간 선을 오른쪽으로 얼마나 '최대' 늘려 잡을 수 있는지는 같은 그림에서 검토하지 않았습니다. 여기 논의가 계획가의 표준적 입장의 타당성을 전제로 하지만, 논의가 전체적으로 이혁주 박사처럼 이론(異論)을 제기하는 편에 일방적으로 불리한 스토리 텔링 방식이라는 인상을 줍니다.
경관비용도 마찬가지입니다. 빌 게이츠는 좋은 뷰에 수 백억 쓸 의사가 있지만 영화 기생충의 송강호 씨댁은 경관에 지불할 의사가 0원에 가깝습니다. 김근준(2018)에 나온 것에 따르면 경관훼손의 평균적 가치는 집값의 몇 프로에 불과합니다. 서울에서 경관이 제일 좋은 곳에서도. 이 퍼센트를 <그림 1> 왼쪽 빨간선에 놓고 따져 보아도 결과는 차이가 없습니다. 물론 서울 밖에서 보호되는 경관을 고려하면 서울시계 내 경관악화는 서울시계 밖 개선효과로 상쇄됩니다. 교통혼잡도 말이 많지만 수도권 전체를 놓고 보면 아마도 남는 장사가 될 것 같습니다. 아무리 따져보아도 계산이 나오지 않습니다.
이런 비용-편익분석에 대해 온갖 비판을 할 수 있습니다. 대규모 모형을 이용하는 경우에도 이런 모형의 운용을 위해 여러 가지 부수적 측정과 가정이 동원되어야 합니다. 그러나 이런 류의 분석도 기본적으로 시나리오 분석입니다. 이를테면 서울 밖에 벌린 공사판을 서울 안으로 옮기면 교통부문에서만큼은 사회적 순편익이 분명 (+)로 나타날 것입니다. 주택가격 하락 효과는 덤이고. 향후 1,20년 내 심각하게 대두될 빈 집 문제의 발생가능성도 최소화할 수 있고. 따라서 방금 수행한 간편분석과 크게 차이가 날 것 같지 않습니다.
이창무 박사님이 여기 우스꽝스러워 보이는 '분석'에 주목해야 하는 이유입니다. 지금까지 논의를 정리하면 아래와 같습니다.
<표 1> 한국 planning system의 non-rationality 검정 결과
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Sub-Hypothesis Premise to Theoretical Theoretical Observation Decision
examine expectation, H0 expectation derived
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Merit-demerit Housing Net external benefit > 0 Informally Net external benefit Reject H0.
divergence =merit good = - price gap << 0
System failure Planning system External cost = price gap Formally External cost << price gap Reject H0.
= rational + external benefit + external benefit
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Note: The rational planning dictates SMB=EB+price = SMC=EC+MCC, which implies EC=price-MCC+EB=price gap+EB, where SMB is the social marginal benefit, EB is the external beneift, MCC is the marginal construction cost, EC is the external cost, and MCC is the marginal construciton cost. "Informally' means that the criterion "Net external benefit > 0" was derived from the general understanding that merit good generates external benefits over and above the private gain of consuming the good or service. When net external benefit = external benefit - external cost > 0, external benefit > external cost > 0, so external benefit > 0 natually follows, which is the requirement for the merit good.
여전히 여기 논의에 반감을 가지는 분들이라면 인지과학에서 말하는 Performance vs evaluation mode간 차이에서 발생하는 bias를 연상하고 평론가 역(役) 대신 이 분야 종사자답게 constructive reasoning을 해보시기 바랍니다. 이 과정에 진입만 해도 사람이 겸손해지고 최소한 내지르는 짓은 하지 않습니다.
이혁주 드림
김근준, 2018. 북한산 조망가치가 아파트가격에 미치는 영향. 한양사이버대학원 부동산대학원 석사학위 논문.
이상경, 배정환, 신영철, 2001. 서울시 용적률 규제강화에 따른 도시 및 주거환경 개선 편익 추정. 국토계획 36(5): 89-99.
이창무 박사님은 보시지요.
2010년대 초반 한국의 planning system은 rational하게 작동하지 않았습니다. <표 1>이 그 근거입니다.
<표 1> 한국 planning system의 non-rationality 검정 결과
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Sub-Hypothesis Premise to Theoretical Theoretical Observation Decision
examine expectation, H0 expectation derived
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Merit-demerit Housing Net external benefit > 0 Informally Net external benefit Reject H0.
divergence =merit good (but intuitive) = - price gap << 0
System failure Planning system External cost = price gap Formally External cost << price gap Reject H0.
= rational + external benefit + external benefit
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<그림 1> 시스템 실패의 원인으로서 외부효과의 인식
계획요인에 초점을 맞추고 시스템 실패가 발생한 이유를 살펴본 것이 <그림 1>입니다. <그림 1> (a)에서 밤색 수직선은 공리적 계획가에게서 기대되는 주택시장의 선택을 보여줍니다(2024.9.2 및 2024.9.5 토론문 참고). 같은 그림 (b)는 실제 상황을 보여주는데, 매우 큰 price gap을 생성한 다양한 이유를 인과고리로 구조화해 이해할 때 이 인과고리의 끝에 price gap의 생성원인으로서 무엇이 있는지 두 가지 원인을 보여줍니다.
(1) 외부비용 과대 평가: 계획가의 정체성 때문에 발생한 편향
(2) 외부편익 과소 평가: 서울 시계 내 주택공급이 시계 밖에서 미치는 긍정적 효과를 간과하는 편향
따라서 <그림 1> (a)에서 서울에서 주택을 H*까지 공급하는 것이 바람직하나,
'계획가의 인식 외부비용 및 편익'과 '실제 외부비용 및 편익' 사이에 괴리가 발생했고
--> 이러한 이중 괴리는 계획가로 하여금 여러 가지 공급규제 수단을 이용해 H0까지 공급하게 했고
--> 그림에서 보는 거대 price wedge가 생성되었습니다.
그 결과 진보의 '누적된 부작용의 결과'라는 이창무 박사의 비판에도 불구하고, 통계가 작성된 이래 줄곧(아마 맞을 겁니다) 서울 집값의 절반 이상을 price gap이라는 '암흑물질'이 차지하게 되었습니다. <그림 1>의 (b)입니다. 그리고 문재인 정부 때는 덤으로 더 올랐습니다.
한편 <표 1>은 planning parameter로서 주택에 관한 사회 통념을 이용해 도출했습니다. parameter란 주어진 값, 전제(premise)로서 계획가가 맘대로 해서는 안 되는 것입니다.
planning parameter인 사회 통념에 반(反)해서 planning outcome이 나왔다는 것은 계획계가 그런 행위를 profession-wide 했다는 의미입니다.
한국의 planning system이 합리적으로 작동하지 않았다는 것은 system outcome입니다. 따라서 계획가 가운데 일부가 진정 합리적으로 계획했다 할지라도, 그런 행위가 대표 계획가 '이창무'의 system-wide 선택에 의해 압도되었다는 말입니다. profession-wide의 첫 번째 의미입니다.
rational planner '이창무' 중에는 보수도 있고 진보도 있습니다. price gap이라는 암흑물질의 발생원인과 성격, 처리에 관해 견해차가 있지만, 주택을 비가치재 더 나아가 혐오재로 취급하는 결과론적 주택관에서는 차이가 없습니다. profession-wide의 두 번째 의미입니다.
혐오재는 당연히 적게 공급되어야 합니다. 한국의 planning system은 이 역할을 충실하게 수행했습니다. 문재인 정부 때 집값을 크게 올린 것은 '김수현'이었지만, '김수현'의 내면(內面)에 비가치재적 주택관을 공유한 대표 계획가 '이창무'가 있었고, '이창무'는 보수와 진보정부를 가리지 않고 price wedge를 암흑물질의 모습으로 지난 수십년 동안 집값의 절반 넘게 때려 박았습니다.
출처...2024.8.9 토론문. 투기억제 규제완화가 집값 하락으로 이어진 기제는 토론문 2024.8.19 <그림 5> 참고
<그림 2> 서울 집값의 평균회귀
"지난해 4월 오세훈 서울시장 취임 이후 ‘신속통합기획’ 같은 전향적인 태도 변화만으로도 짧은 기간 동안 상당한 변화"를 보았다고 하지만, 이는 이미 전에 보았던 평균회귀 현상으로서 서울에서는 그렇게 평균회귀한 기저(基底) 집값 자체가 높아서 급기야 2017년 5월에 일이 크게 터졌습니다. <그림 2> 참고.
이렇게 시스템이 문제면 답 찾기 쉽지 않습니다. 그저께 밤 용산(龍山) 일은 시스템이 막았지만 우린 그렇게 견고한 시스템이 아닙니다(이 부분은 추가 확인 예정).
우리 risk는 system risk입니다.
다음에는 오늘 본 system failure의 인과고리를 조금 더 위로 올려 더 추적해보겠습니다.
이혁주 드림
이창무 박사님은 보시지요.
<그림 1> 한국의 planning system에서 투입과 산출
<그림 2> 계획가가 인식하는 외부효과와 실제 외부효과
지난 주까지 한 얘기의 줄거리는 이렇습니다. rational planning framework라는 규범적 틀에서 출발하여 <그림 1>에서 보듯이 한국의 계획시스템에서 개념분석(merit-demerit divergence hypothesis)과 통계분석(system failure hypothesis)을 통해 시스템 실패를 확인했습니다. 수요-공급분석 틀에서 볼 때 이 실패는 <그림 2>에서 보듯이 계획가가 인식하는 주택공급의 외부효과와 실제 외부효과 간 괴리(빨간 글자들) 때문에 발생했습니다.
<그림 3> 서울시 주택부문에 작용했던 편향: 중복 편향모형
2021.5.13 이후 현재까지 수행한 논쟁을 <그림 3>과 같이 정리합니다. 관련용어 설명합니다.
진보편향: 주택공급을 투기, 불로소득과 결부해 인식하는 수요관리중심의 부동산 정책관(외부비용 과대평가).
자산가격의 거품 생성과정에서 유동성이 핵심적 역할을 한다는 통상의 가격 거품 생성/소멸 문헌과 달리, 유동성과 같은 금융요인이 배제된 상태에서도 정부에 의한 시장가격 기대의 변화, 그리고 역설적으로 투기억제 대책의 수요 pool 제한(이 경우 WTP이 높은 수요자만 거래에 참여) 등이 장기간 자산가격의 상승을 유발할 수 있다는 것이 서울 집값 정책 주기론에서 얻는 귀중한 교훈
계획기구 편향: planning institution 전반에서 기원해 발생한 편향
기관 편향: 서울 시계 내 주택공급이 시계 밖에 미칠 긍정적 효과를 간과하는 시각(외부편익 과소평가)
서울시계 내 도시계획 결정이 서울 시계 밖에 미치는 영향 간과(근거...서울연구원 및 서울시 5년 주기 장기도시계획 문서)
계획편향: 아파트 단지 고밀화에서처럼 주택공급을 시가지 주거환경에 대한 위협과 쾌적성 훼손 중심으로 인식하는 태도(외부비용 과대평가)
<표 1> 진보 및 계획기구 편향이 주택가격의 편향에 미친 영향
===============================================================================
분 류 외부비용 외부편익 인식 외부효과에 합리적 계획가의
미치는 영향 바람직한 주택재고
===============================================================================
진보편향 과대평가 SMC곡선 상향 이동 낮춤
------------------------------------------------------------------------------------------------------------------------------------------
계획기구편향 계획편향 과대평가 SMC곡선 상향 이동 낮춤
기관편향 과소평가 SMB곡선 하향 이동 낮춤
===============================================================================
주...SMC=social marginal cost, SMB=social marginal benefit
<표 1>에서 계획기구는 planning institution으로서 계획제도와 계획가를 포괄하는 용어입니다.
[퍼즐 풀이] 위 빨간색 글자들은 문재인 정부시기 투기장 지수(집값, 분산, 거래량) 통계가 관측되기 위해 필요한 수요곡선의 변화방향을 보여줌. 그러나 이전 통계분석 어디에서도 문재인 정부 때 수요곡선이 시계방향으로 회전한 이유를 설명하지는 못했음. 금융요인의 작동을 철저하게 통제했음에도 투기억제책이 오히려 투기조장으로 연결되는 일이 발생해서는 안 됨. 가격거품을 추동하는 필수요소로서 신용의 역할을 거론한 기존 가격거품 문헌과도 배치(예컨대 Quinn and Turner(2020)의 "fuel"). 이런 지적 chaos 상태에서 탈출하고자 김수현(2023)은 과잉유동성을 다시 거론하지 않을 수 없었음. 그러나 애초에 서울에서 아파트가 공급부족 상태였다면 김수현(2023)의 퍼즐과 수요곡선의 시계방향 회전도 설명 가능. 즉 서울에서 주택 부족 --> 서울에서 집값 높은 것은 투기 때문이 아니다 --> 문재인 정부 인식과 처방 = 본말전도 --> 정부 대책은 시장의 불안/불확실성 증가요인으로 작용 --> 가격분포 분산의 증가=수요곡선 시계방향 회전(=수요곡선의 상향 이동) --> 강력한 투기억제책에도 불구하고 가격의 지속적 상승. 윤석열 정부가 등장하면서 정확히 그 반대 일이 벌어져 가격이 하락하고. 이렇듯 계획기구 편향은 practically and theoretically 서울 집값을 이해하는데 있어 없어서는 안되는 중요한 분석적 개념.
결과적으로 <표 1>에서 보듯이 3가지 편향 모두 주택=비가치재로 간주하는 대표 계획가 '이창무'의 적정 주택가격을 높였고, <그림 4>, <그림 5>에서 보듯이 재고가, 분양가 모두에서 계획기구 요인의 영향은 압도적입니다. 이들 두 그림에 따르면, 전에 통계분석을 통해 확인했던 이 그림과 달리 계획기구 편향이 진보편향보다 아파트 값 상승에 미친 영향이 훨씬 크고, 문재인 정부 때 오른 집값은 팬데믹 때문에 오른 것 모두 정부 탓으로 돌려도 애교 수준입니다. '이창무'의 생각이 보수정부에서는 약하게 발현되었고 진보정부에서는 증폭되어 나타났다는 차이만 있을 뿐입니다. 서울 집값에서 rational planner '이창무'는 상수(常數)입니다.
출처...2024.10.7 토론문(국토교통부 실거래가 통계 이용). 피구세율=(재고 아파트값-새 아파트 건축비)/재고 아파트값
<그림 4> 서울 재고아파트에서 피구세율
출처...<첨부 1>, 국토교통부 실거래가 통계 이용. 피구세율=(새 아파트값-새 아파트 건축비)/새 아파트값
<그림 5> 서울 분양아파트에서 피구세율
따라서 다음과 같이 기술해야 합니다.
[수정해야 할 '이창무'의 진단] “서울의 주택 공급 부족 문제는 용도지역 제도의 문제가 아니라 독선적 행정의 누적된 부작용 때문이다.”라고 이창무 박사는 진단하는데, 이 "공급 부족 문제"는 진보정부(박원순 시정 및 문재인 정부)의 책임 이전에 합리적 계획가 '이창무' 때문에 발생했다고 보아야 한다.
지금부터는 계획기구 요인을 중심으로 계획가들의 실제 반응을 알아보겠습니다. 계획가에 대한 이해를 높이기 위해 내용분석(content analysis)을 해보겠다는 것입니다.
[내용분석의 목적] <그림 4>, <그림 5>에 따르면 계획기구 편향이 서울 집값 상승에 결정적 역할을 했는데 실제로 이와 일치하는 행태를 계획가들은 보였는가? 구체적으로 말해, 실제로 서울 시계내 과밀혼잡에 대해서는 과할 정도로 민감하게 반응했고, 서울 시계 밖에서 벌어지는 일에 대해서는 과할 정도로 무관심했는가? 그리고 이런 행동 패턴을 보인 이유는 과연 무엇인가?
아래는 이혁주-유상균(2021: 45)에 나타난 아파트 단지 고밀화에 대해 계획가들이 보인 반응입니다.
1. 과밀혼잡 시각에서 제기된 문제
고밀화는 용도지역제에 대한 오해
고밀화는 환경 및 경관 악화를 고려하지 않은 제안
전염병 시대에 고밀화는 신중해야 함
"밀도 높이면 아파트 단지 답답해 진다". (서울연구원 은퇴 연구자, 1992년 공채 1기 출신)
"그럼 경관은?" (서울시정개발연구원 초대 도시계획연구부장)
2. 진보적 시각에서 제기된 문제
밀도규제론을 한국사회 불평등 담론으로까지 확대하는 것은 지나친 일반화
고밀화보다는 토지공개념에 대한 논의가 먼저
투기적 가수요에 맞춰 아파트를 공급한다는 것은 어불성설
3. 경제학적 측면에서 제기된 문제
고밀화는 도시경제이론에 부합하지 않음
주택공급 비용에서 땅값을 제외한 것은 오류
집값이 높은 이유는 다양하고 유동성은 그 중 하나일 뿐
4. 주택공급 실행상의 현실적 문제 제기
주택공급으로 서울 집값은 떨어지기 힘듦
주택공급으로 가격 폭락 우려 있음
고밀화되면 나중에 철거하는 데 어려움
저출산시대 주택공급 과잉 우려
기반시설 제약 우려
지역 간 불균형 심화
서울에서 고밀화는 이미 진행되고 있음
주택공급은 집값 상승과 부작용을 초래
"그럼 용도지역제 폐지하는 건가?" (서울연구원 연구위원, 2016년)
"그냥 안 됩니다" (서울연구원 은퇴 연구위원, 추가 설명 無)
부정적 의견 일색인데, 개인적으로 경험한 것과 대체로 일치합니다. 서울시 관련자가 아닌 경우도 기관편향에 관한 언급은 없습니다. 리스트에 거론된 사유는 매우 다양합니다. 지난 주까지 알아본 주택=비가치재라는 대표 계획가 '이창무'의 인식과 일치합니다.
좀 더 구체적으로, 1,2번은 위생공학적 우려에서 제기할 만한 반응이 주를 이루고 있는데, 시계 밖 개발을 기성시가지로 흡수하는 긍정적 효과에 대한 언급은 전무합니다. 오히려 고령화와 빈 집 문제 측면에서 서울시계내 주택공급을 유용한 정책수단으로서 활용할 수 있지만, 거꾸로 도심 공급이 대도시권 전체 시장에 미치는 부정적 영향에 초점을 맞추고 문제를 제기합니다.
도심 주택공급에 대한 부정적 시각은 도심 공급의 일차효과 즉 시가지 고밀화와 주거지 정온성의 악화라는 효과에 계획가의 관심이 우선 모아지기 때문에 발생하는 것으로 보입니다. 이 경우 시가지 거주환경은 그 자체 보호의 대상으로서 한강 고수부지에, 올림픽 대로, 북부간선처럼 도심 고속도로 위에, 주차장 위에, 역사(驛舍) 위에, 상공업용도 복합개발지에 등 거주성이 떨어지거나 사람이 살아서는 안되는 곳에서 하는 공급은 민간인 뿐 아니라 서울시장 본인이 혹은 시장 hopeful들이 하는 것은 허용되어도, 흔하고 흔하지만 주거환경으로 따지면 최상급인 기존 아파트 단지에서 쾌적성 저하를 유발하는 공급 방안은 전문가 집단에게서 우선적으로 경계와 배격의 대상이 되었던 것 같습니다.
산업혁명기를 거치면서 극도로 악화되었던 노동자들의 주거지 위생 환경, 그리고 이에 대한 반성에서 제안되었던 신도시 개발 등 계획사조에 깊은 영향을 받은 반응인 것만은 틀림 없어 보이지만, 이렇게 뒤틀리게 인식한다는 것은 놀라운 일입니다. 우선 다음과 같이 해석합니다.
[해석] 도심 환경 악화=비도심 환경 개선라는 상충적 관계는 일단 치지도외(置之度外)하고 진보/보수 공히 계획가라면 도심 주택공급의 부정적 측면에 초점을 맞추고 아파트 공급문제에 접근한다.
어느 정도까지 할 수 있을지 모르지만 개별 저자들이 작성한 문서의 텍스트 분석을 시도해보겠습니다.
이혁주 드림
이혁주-유상균, 2021. 밀도규제의 구속성과 규제의 타당성 검토: 서울 아파트단지를 중심으로. 국토계획 56(5): 44-59.
Quinn, William and John D. Turner, 2020. Boom and Bust: A Global History of Financial Bubbles. Cambridge, UK: Cambridge University Press.
<첨부 1> 분양가를 이용해 Pigouvian tax rate 계산하기
P_new=read.csv(file.choose(),header=T) # 자료 내려받기. 2008.1 to 2024.4, 392 data columns
APdata=cbind(P_new[,1:(392-6)]) # 2008.1 to 2024.1
APdata=cbind(APdata[1:350],0,0,APdata[353:(392-6)]) # 2022.8에는 서울에서 거래건수=0.
price_per_m2=0
med=0
avg=0
for(n in 1:193){from=1+2*(n-1) # 2008.1부터 2024.1월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell 제외 숫자 입력된 cell 개수
data1=cbind(APdata[1:count[n],from:to])
price_per_m2=data1[,2]/data1[,1]
avg[n]=mean(price_per_m2)
med[n]=median(price_per_m2)
}
med[176]=(med[175]+med[177])/2
avg[176]=(avg[175]+avg[177])/2
date_seq <- seq(as.Date("2008-01-01"), as.Date("2024-01-01"), by = "1 month")
start_index <- which(date_seq == as.Date("2008-01-01"))
end_index <- which(date_seq == as.Date("2020-11-01"))
avg_sub <- avg[start_index:end_index] # 단위: 만원/m2
med_sub <- med[start_index:end_index] # 단위: 만원/m2
temp=read.csv(file.choose(),header=T) # 자료 내려받기 단위: 만원/평, 2006.1부터 2020.11
date_seq <- seq(as.Date("2006-01-01"), as.Date("2020-11-01"), by = "1 month")
start_index <- which(date_seq == as.Date("2008-01-01"))
end_index <- which(date_seq == as.Date("2020-11-01"))
const_cost_sub <- temp$Const_cost[start_index:end_index]
tax_rate_avg=(avg_sub-const_cost_sub/3.305)/avg_sub # 하나는 만원/m2, 다른 하나는 만원/평으로 되어 있음
tax_rate_med=(med_sub-const_cost_sub/3.305)/med_sub
start_date=as.Date('2008-01-01')
time_index <- seq(from = start_date, by = "month", length.out =length(tax_rate_avg))
plot(time_index, tax_rate_avg,ylim=c(0,1),typ='l',xlab='',ylab='Tax rate', lwd = 1.5)
lines(time_index,tax_rate_med,col='red', lwd = 1.5)
index=which(date_seq==as.Date('2017-05-01'))
abline(h=tax_rate_avg[index],lty='dotted')
text(as.Date('2010-01-01'),0.85,'0.81')
abline(v=as.Date('2017-05-01'),lty='dotted')
text(as.Date('2014-01-01'),0.73,'중위 분양가 기준',col='red')
text(as.Date('2014-01-01'),0.85,'평균 분양가 기준')
text(as.Date('2017-05-01'),0.2,'2017.5')
abline(h=0)
여러 선생님들 보시지요.
오늘 그간 진행해 온 논쟁을 마무리합니다. 몇 가지 문맥상 언급하지 못했던 것을 마져 언급합니다.
김근준(2018)을 이용해 아파트 추가 공급이 훼손하는 경관가치를 측정해보겠습니다. 북한산을 조망하는 은평구 소재 어떤 아파트 단지에서 측정한 경관가치는 <표 1>과 같습니다. 이 아파트 단지는 북한산 조망이 뛰어난 단지로서 표의 자료는 2013~2017 사이에 거래된 실거래가입니다.
<표 1> 북한산 조망의 경관가치
------------------------------------------------------------------------------------------------------------------------------
가격 프리미엄 단지내 해당 평당 가격
(만원/평) 아파트의 비율 (만원/평)
------------------------------------------------------------------------------------------------------------------------------
조망불가 아파트 0 67% 1829
부분조망 아파트 81 21% 1902
완전조망 아파트 214 6% 2101
------------------------------------------------------------------------------------------------------------------------------
자료: 김근준(2018) p.49, p.62, p.82.
서울시내 모든 아파트 단지가 이 아파트 단지처럼 최고의 경관편익을 누리고 있다고 하고 분석해 봅시다. 이 아파트 단지에서 거래된 아파트들의 평당 가격은 1869만원/평(=1829*0.67+0.27*1902+0.06*2101)입니다. 이제 부분적으로 밀도를 높여 아파트를 더 지을 때, 부분조망 아파트와 완전조망 아파트의 조망이 모두 조망불가 아파트로 변한다고 합시다. 고밀화 후 아파트의 평당 가격은 모두 1829만원으로 하락할 것입니다. 이는 평당 40만원(=1869-1829)의 하락, 비율로는 (1869-1829)/1869=2% 하락에 해당하는 경관훼손 비용이 발생이고, 표에서 대충 1/3채 공급이 유발한 비용입니다. 이는 한 채당 평균 2%/(1/3)=6%이고, 계획가의 우려를 반영해 한계비용이 평균비용의 2배나 된다고 보면 6%는 12%가 됩니다. 이를 <그림 1> 왼쪽 화살표에 대입해도
영가설: planning system은 합리적으로 작동했다
라는 가설은 기각(reject)됩니다. 그림에서 두 빨간색 화살표 사이의 거리가 지나치게 멀어서 생기는 일입니다.
출처...2024.12.2 토론문
<그림 1> 시스템 실패 가설의 검정
만약 이 개발이 시계 밖 개발을 대체하는 것이라면 그 반대 과정이 작동하고 이제 전혀 다른 얘기가 됩니다. 경기도의 개발이 서울보다 덜 하므로 경기도에서 경관파괴의 marginal damage가 서울보다 더 크다고 본다면 서울에서의 공급은 곧 서울 포함 수도권 전반의 경관보호가 됩니다.
아파트 가격에 존재하는 price wedge는 글 한두 편, 인상적 코멘트 한두 마디로 해치울 수 있는 그런 observation이 아닙니다. 이 그림이 이론적, 실천적 관점에서 어떤 의미를 갖는지, 한국의 불평등, 부동산 담론에서 어떤 의미를 갖는지 가슴으로 머리로 이해했으면 하는 바람입니다.
사회적 최적 공급수준은 방정식 price+EB=EC+MCC 을 만족시키는데(2024.10.28 토론문), 이때 순 외부비용=EC-EB=price-MCC이 성립합니다. 강남의 경우 순 외부비용은 집값의 95% 정도 될 것 같습니다. 강남 주택에 대한 상반된 복합감정(수요곡선과 사회적 한계비용 곡선 up)이 rational planner로 하여금 지난 수십년 동안 집값의 대부분을 순 외부비용으로 채우게 했습니다. 계획가의 의도가 어떠했든 시장상황이 어떠했든 아무튼 결과가 이렇습니다.
주택가격은 순외부비용에 비례하기 때문에
합리적 계획수단에 의한 순외부비용 증가 --> 주택의 가격 상승
이 되어, 아파트 중에는 비싼 아파트가, 서울 안에서는 고가 아파트가 가장 많은 곳에서, 전국 수준에서는 서울에서 가장 큰 혜택을 보았습니다. 그 추동자는 rational planner '이창무'였고, '김수현'이 선 곳은 '이창무'의 어깨 위였습니다.
정상적인 사람 한 무리 전체가 오도(誤導)되었다면 그럴만한 이유가 있을 겁니다. 진보 쪽 사람들은 아파서 죽겠다, 살려달라고 소리쳤는데 그 면전에 대고 합리적 계획가 '이창무'는 당신들 때문이라고 말했습니다. 매정함도 이런 매정함이 없습니다. 아프다고 소리 질러대고 실성한 사람이 문제인가요? 아니면 사람 그렇게 만들어 놓고는 그건 네 탓, 그냥 참아라, 그리 하면 더 아프다라고 말하는 사람이 문제인가요? 2017년 5월 '이창무'도 상상 못했던 원인론을 '김수현'이 상상했었기를 기대하는 것은 무리였습니다. 진보가 덜 intelligent해서가 아니고 그런 성향을 가진 생물학적 존재라는 점을 인정해야 한다고 보기 때문입니다.
강남 집값에 존재하는 95%의 순외부비용=planner's perceived net external cost는 어떤 식으로든 계획가의 해석이 필요합니다. benefit side price=MCC+net EC의 net EC는 비용 사이드이고 이 순외부비용은 외부편익을 감안한 Pigouvian tax입니다. 이 정도의 높은 세율로 왜 주택공급을 제한해야만 하는지 설명이 필요합니다.
계획가가 이런 일을 초래한 장본인이 아니라는 믿음이 강한 인사일수록 더 심각하게 이 문제에 대해 고민해야 합니다. 합리모형으로 설명이 안 된다고 믿는다면 Marxist approach 포함 정치경제 모형을 이용해서라도 설명하도록 노력해야 합니다. 이 문제를 다루는데 계획수단이 효과적이지 않다면 다른 정책수단도 생각해 보아야 합니다. 그러나 이런 시도의 출발은 인과관계의 규명이고 소설은 지금까지로 충분합니다.
주택공급이 늘면서 그 부작용이 커지면 결국 SMC(사회적 한계비용)가 증가하고 어떤 선을 넘으면 다른 용도의 토지를 아파트용지로 전환하는 것이 경제적이 되는데, 이렇게 투입 토지가 binding하게 될 때까지 아파트의 공급을 서울 시내에서 늘리는 것이 합리적입니다. 지금까지 SMC를 따지면서 토지비용을 고려하지 않았는데 토지라는 투입요소가 binding하게 작용할 때는 얘기가 달라집니다.
이런 시각에서 중장기적으로 서울시가 향해서 나아가야 할 아파트값은 대충 이런 식으로 산출할 수 있습니다.
SMC=SMB
--> (토지 binding) MCC+토지비용+EC= price + EB
좌변 = 현재 집값의 약 15% +집값의 1/3 + EC
--> 줄여야 하는 가격 = price - (MCC+토지비용 + 순외부비용)
= price - (MCC+토지비용 + 순외부비용)
= price - 현재 집값의 약 15% - 집값의 1/3 - 순외부비용
= 집값의 약 50% - 순외부비용
= 집값의 약 50% <--순외부비용 ≑ 0 (가정)
이를테면 서울시에서 보통 다세대주택과 단독주택이 아파트로 전환되는 일이 잦다면, 이들 지역의 땅값이 위 식에서 '토지비용'이 됩니다. 서울 대신 경기도에서 아파트를 개발한다면, 대안인 서울에 비해 사회적 비용이 클 것이고 이 경우는 0으로 처리한 순외부비용이 (+)가 되어 줄여야 하는 가격이 크게 낮아질 수도 있습니다. 만약 빈 집 문제가 향후 제기될 가능성이 크다면 줄여야 할 가격이 이론적으로 (-)이 될 수도 있습니다. 이 경우에는 경기도에 집 지으면 안 됩니다(?). 서울 안에서는 강남의 경우 줄여야 하는 가격이 가장 크기 때문에 강남의 집값 하락을 유도하는 방법에 대해 우선 고민해야 합니다. 그런데 강남도 주택유형이 다양하고 꼭 잘사는 사람이 필요한 집만 있는 것도 아닙니다. 그리고 강남 집값이 반드시 강남에서 주택공급을 확대해야만 떨어지는 것도 아닙니다. 유연하게 사고하고 왜 집값이 높은지 원인론을 잘 이해한다면 방법은 찾으면 됩니다. 주택공급이 전제되지 않는 한 집값 하락이 제한적이라는 점을 상기하면, 불로소득 문제로 끝까지 공급의 발목을 잡는 일은 소탐대실하는 것이 됩니다. 원죄는 계획가와 진보에게 있고, moral impeachment의 대상이 일차적으로 계획가와 진보라는 점을 기억하면 지금보다는 나은 결과가 나오지 않을까 합니다.
Rational planner가 벌인 일 진보가 벌인 일
투기가 나쁘다고 하면서 투기하게 좋게 판을 만들면 안 됩니다.
실제 적용하는 일은 또 다른 문제이지만 대체로 어떤 방향으로 어떤 기준에 따라 무엇을 고려하면서 주택재고를 관리해야 하는지 매우 시사적인 계산과정이고 계산결과입니다. 이런 과정이 어떤 한계를 가지는지를 명확히 인식해야 하지만, 동시에 어떻게 이 문제를 접근해야 하는 지 그 가치도 appreciate할 수 있는 그런 동료 연구자의 안목과 scholarship을 기대합니다.
'이창무' 처방의 효과는 확인이 되었지만 그렇게 떨어진 집값이 더 떨어져야 하는게 맞는지, 만일 그렇다면 어느 정도나 더 떨어져야 하는 것인지 '이창무'에 답이 담겨 있지는 않습니다. 엉성하기는 해도 나침반을 가지고 있다는 것은 나름 위안입니다. 민주당이 재집권해도 유사한 질문에 답해야 합니다.
자료: KB부동산 https://data.kbland.kr. <첨부 1>에 코드 있음
<그림 2> 전국 및 서울 주택가격 지수
<그림 2>는 전국 및 서울 아파트 가격지수입니다. 일부 시기를 제하고 가격의 공행이 뚜렷합니다.
일차 검토대상으로 삼은 변수는 아래와 같습니다.
내생변수:
전국 주택가격 지수 Price_National, 서울 주택가격 지수 Price_Seoul, 가계대출 Debt, CD 금리, 통화량 M2, 제조업생산지수 MPI, 전국 아파트 준공실적 Const_National, 서울 아파트 준공실적 Const_Seoul, 전국 세대수 HH_National, 서울 세대수 HH_Seoul
외생변수: Park, Moon, Pandemic
변수가 지나치게 많아서 overparameterization 문제가 발생하고 있습니다. MPI, Const_National, HH_Seoul이 Price_National에 미치는 영향을 irf분석한 결과, 그리고 변수의 설명력 등을 참고하여 이들 변수는 모형에서 제외했습니다. M2는 성격이 일부 Debt와 겹치기 때문에 제외했습니다. 최종적으로 일부 변수를 제외하고 변수를 아래와 같이 선정했습니다.
내생변수:
전국 주택가격 지수 Price_National, 서울 주택가격 지수 Price_Seoul, 가계대출 Debt, CD 금리, 서울 아파트 준공실적 Const_Seoul, 전국 세대수 HH_National
외생변수: Park, Moon, Pandemic
<표 2> 충격반응분석
----------------------------------------------------------------------------------------------------------
반응변수
---------------------------------------------------------------------
충격변수 전국 주택가격 지수 서울 주택가격 지수
----------------------------------------------------------------------------------------------------------
전국 주택가격 지수 NA (+)**
서울 주택가격 지수 (-) NA
CD금리 (-)** (-)**
전국 세대수 (+) (+)
아파트 준공실적(서울) (-)** (-)
----------------------------------------------------------------------------------------------------------
주...<첨부 2> 참고
<표 3> 요인별로 문재인 정부 60개월 동안 주택가격에 미친 영향(단위: 포인트)
----------------------------------------------------------------------------------------------------------
전국 주택가격 지수 서울 주택가격 지수
----------------------------------------------------------------------------------------------------------
Moon +6.0 +35.5***
Pandemic +19.1 +10.9
CD금리 -0.7* -0.6**
----------------------------------------------------------------------------------------------------------
문재인 정부시기 오른 가격 27.7 38.3
----------------------------------------------------------------------------------------------------------
주...<첨부 3> 참고. ** p value<0.05, * p value<0.10. 외생변수의 유의도는 causality test를, 내생변수의 유의도는 irf분석을 이용.
선정된 모형을 이용해 위 표 두 가지를 얻을 수 있습니다. <표 2>에 따르면 서울만 분석대상으로 했던 종전 모형과 달리 몇 가지 주요 변수가 예상 부호와 일치하고 유의합니다. 그러나 <표 3>에 따르면 전반적인 performance는 실망적입니다. 우선 정권변수인 Moon이 전국의 주택가격 지수에 유의하게 영향을 미치는 변수가 아닌 것으로 검정되었습니다. 그 결과 2022년 봄 정권교체와 더불어 있었던 전국 집값의 급격한 하락을 예측하지 못하게 되었습니다. <그림 2> 빨간 선. 이자율도 유의하지만 영향이 사실상 zero입니다.
투기장 지수와 과잉유동성 변수를 추가한 모형은 <첨부 4>에 있습니다. 결과가 깔끔하지 않습니다. 추가 분석은 연습문제로 남겨 놓습니다.
지금까지 논의는 이러했습니다.
지금까지 한 분석결과 --> '서울 주택가격은 3중 편향의 산물이다'라는 결론 도출
3중 편향모형(혹은 중복 편향모형)은 지금까지 한 관찰결과를 종합한 일종의 theory 즉 설명방식이 되고 후속 가설의 발판이 됩니다.
Whereas a law states only what happens, a theory attempts to explain why nature behaves as it does. Laws are unlikely to change greatly over time unless a major experimental error is discovered. In contrast, a theory, by definition, is incomplete and imperfect, evolving with time to explain new facts as they are discovered. From the explanation of Figure 1.4 The Scientific Method, Bruce Averill and Patricia Eldredge, 2012. General Chemistry: Principles, Patterns, and Applications. Salyor Academy. Loaded at MIT OpenCourseWare.
이 theory의 수립에 직접 활용되지 않았던 자료, 기존 모형으로 설명하지 못했던 현상에 이 이론을 적용함으로써 theory의 외적 타당성(external validity), 일반화 가능성(generalizability)을 검토해 보겠습니다. 일종의 theory validation입니다.
[RWD 모형] 중복 편향모형이 맞다면 경제변수를 이용해 서울의 집값을 설명하는데 있어 근본적 한계가 있고, 따라서 투기라는 경제변수는 높은 집값의 근본 원인이라는 문재인 정부의 부동산정책은 임의성이 지배한 정권이 됩니다. 이때 이 시기 서울 집값은 random walk를 따라야 하고 이 RWD모형은 당시 집값을 잘 설명해야 합니다. RWD 모형을 이용해 당시 집값 변동 패턴을 모의실험해 보면, 임기중 일시적 가격 안정기 가격변동 패턴을 생성하는데, 이 현상은 VAR모형으로는 구현이 불가능했지만 RWD모형에서는 일상적으로 관찰되는 가격변동 패턴입니다. 즉 3중 편향모형의 시사인 RWD모형을 이용하면, 기왕의 VAR모형과 달리 문재인 정부 때 서울 집값 변동의 주요 특징을 잘 재현하고 따라서 잘 설명할 수 있습니다. 이는 3중 편향모형의 외적 타당성을 보여주는 장면입니다.
[평균회귀] 지금까지 2022년 5월 이전 자료를 일종의 training dataset으로 이용했고, 구축한 모형(VAR model)의 예측력(=평균회귀 현상)을 검토하기 위해 2022년 5월 이후 자료를 일종의 testing dataset으로 이용했습니다(AI 통계모형 구축시 사용하는 표준적인 과정이기도 함). 구축한 모형은 정권교체 후 발생했던 가격변동 패턴 즉 '평균회귀'를 잘 설명합니다. 즉 <그림 3>은 정권교체 후 가격변동 패턴에 큰 변화가 있을 것을 예측하는데, 이는 3중 편향모형의 외적 타당성을 보여주는 장면입니다.
[새로운 자료와 설명력] 전국자료라는 새로운 dataset에서도 중복 편향모형은 일정한 설명력을 유지합니다. <표 3>에서 보듯이 서울 주택가격의 설명변수로서 Moon변수의 설명력은 압도적으로 중요한 반면, 금융요인으로서 이자율과 같은 통상적인 경제변수의 설명력은 전국, 서울 가릴 것 없이 무시해도 좋은 크기로 나타납니다. 즉 중복 편향모형은 전국 자료를 이용한 모형에서도 통상적인 경제변수를 압도할 만큼 서울의 집값 변동을 잘 설명합니다.
[특성 중복과 높은 집값] 김수현 비서관이 '계획가' 출신 '진보' 인사라는 중복적 특성은 문재인 정부의 정책 특성을 이해하는 중요한 단서가 됩니다. 또한 한국의 대도시권에서 피구세가 공통적으로 높다는 것은 편향 3가지 모두 혹은 일부가 중첩되었을 때 기대되는 현상입니다. 즉 3중 편향모형은 서울뿐 아니라 주요 대도시 집값을 설명하는 모형으로서 유용합니다. "homevoter"가 등장하는 미국 대도시권 land-use politics와 계획적 맥락이 다름에도 불구하고(Fischel, 2005), 집값이 마찬가지로 높은 현상을 설명하는 한국적 맥락의 설명방식으로서 중복 편향모형의 가치에 주목할 필요가 있습니다. 중복된 편향이 지배하는 곳이 서울의 주택시장이라면 서울 집값을 설명하는 데 필요한 변수는 소수이면 족합니다. 여기 논쟁 전반부에서 보았 듯이 집값 이외에 가계부채 하나면 족했습니다. 유상균-이혁주(2024)에서는 독자들의 수용성을 고려해 심사자가 권고하여 변수를 추가했지만 초고에서는 모형에 가격변수와 가계부채 변수 두 가지만 사용했고 설명력 문제는 없었습니다. 그리고 편향적 규제가 2중, 3중으로 지배한 시장이라면, 시장변수의 통상적인 작동이 배제된 그런 곳에서 집값은 매우 높아야 합니다.
그러나 중복 편향모형의 한계 또한 뚜렷합니다. 좀 더 구체적으로, 중복 편향모형은 문재인 정부초 부동산 정책의 배경과 가격변동 패턴을 이해하는데 유용하지만, 그런 유사정책을 임기 내내 채택하고 집행하는 원동력으로서 얼마나 오래 동안 효과를 발휘했는지는 의문의 여지가 있습니다. 임기 내내 시장의 반동(反動)을 초래한 정책을 일관되게 채택하고 추진했다는 것은 3중 편향적 정책관에 부가하여 자기 추동적 기제가 당시 보완적으로 작동해서 가능했던 것 같습니다. 2024.7.8 토론문에서도 28회의 고집스런 시장개입을 "취[해서]" 그랬던 것은 아닌가라고 추정했는데, 이런 self intoxication 과정의 존재 가능성을 theorize해 보겠습니다.
주...이 그림에서 집값은 연속 확률변수로 취급되고, 연속 확률변수의 분포는 밀도함수를 이용해 표현하게 됨. 좀 더 자세한 개념 설명은 여기 참고.
<그림 3> Self-reinforing policy mechanism
그 기제로서 자기강화적 정책과정에 관한 간단한 수학적 모형에 대해 알아보겠습니다. <그림 3>이 이 보완기제가 어떻게 작동했는지 보여주는 그림입니다. 진보는 보수에 비해 투기, 과잉 유동성, 서울 선호 등 다양한 이유에서 서울의 기저 집값이 더 높다고 봅니다. 김수현(2023), 이준구(2023)에 나타난 경기적 집값 주기론, 서순탁 박사의 토지과세 주, 도시계획 종이라는 입장 등이 이런 시각을 대변합니다. 반면 이창무 박사의 논설에서 보듯이 과도한 규제만 아니었어도 집값은 그렇게 높지 않을 것이라고 말합니다. 이때 이창무 박사가 생각하는 서울의 집값 분포는 <그림 3>에서 진보에 비해 왼쪽에 있어야 합니다.
두 가격밀도 함수의 peak가 충분히 떨어져 있다면, 보수 가격분포(즉 가격의 확률밀도 함수)의 오른쪽 tail이 진보 가격분포의 왼쪽 tail과 <그림 3>과 같이 겹치게 됩니다. 진보 가격 밀도함수를 문재인 정부로 특화할 때, 지금까지 알아본 여러 진보 논객의 논설에 따르면 두 peak 간 거리는 그림에서처럼 충분히 좌우로 거리를 두고 떨어져 있습니다.
Question: Instead, what if the two peaks are located in close proximity to each other?
이제 분석을 위한 기본 setup이 끝났습니다. <그림 3>에서 2017년 5월 민주당이 집권하면서 집값이 A이었다고 합시다. 집권초 정부의 대책이 처음 있고 나서 집값은 A에서 B로 상승했습니다. 이때 '김수현'의 뇌리에는 아래와 같은 사고가 작동했던 것으로 모형화해 볼 수 있습니다.
A에서 likelihood ratio = 진보 가격분포의 확률밀도/보수 가격분포의 확률밀도 = 0.3/0.3 = 1.0
대책 발표후 B에서 likelihood ratio = 진보 가격분포의 확률밀도/보수 가격분포의 확률밀도 = 0.4/0.2 = 2.0
즉 대책 발표후 가격은 A에서 B로 변하고, 가격 B가 보수 대비 진보의 가격분포에서 출현했을 likelihood ratio가 1.0에서 2.0으로 증가했습니다. 이는 당시 청와대와 진보 진영으로 하여금 문 정부 정책의 타당성을 보여주는 시장의 증거로 해석하게 만들었고, 이러한 해석은 집값 상승을 "시장 투기세력의 준동"이라는 원인론의 타당성을 뒷받침하는 것으로 해석하게 했습니다. 강도가 더 높은 이후의 추가 대책은 그 논리적 귀결이었습니다. 과잉유동성 원인론을 의문시하는 정책 성과임에도 정책신념을 오히려 강화했던 것은 종말론자들의 심리 및 행태와 차이가 없었습니다(Festinger et al., 2014).
달리 말해, 보수가 옳다고 믿는 가격분포에서 가격 B가 출현할 확률(엄밀히 말해 출현 밀도)은 0.2에 불과하지만, 진보 자신이 믿는 가격분포에서 B가 출현했을 확률은 0.4나 됩니다. 그런데 그런 경향이 정책을 펴면 펼수록 더 강하게 나타납니다. 따라서 시장의 반동(反動)은 당국의 시각에서 볼 때 문 정부 투기억제 대책의 타당성을 보여준 시장의 신호가 됩니다. 즉 정부대책의 정당성을 시장이 confirm해 주었습니다. 이렇게 시장의 확인을 거치면서 당국은 대책의 타당성을 더욱 믿게 되고, 시장의 반동을 억제하고자 강도가 더 높은 추가대책을 내놓게 됩니다. 실제로 집권 말기를 제외하고 대응 강도를 직접 높이거나 기존 대책을 보완하는 방식으로 대책의 강도는 계속 높아졌습니다.
문재인 정부에서 처음에는 가격 A에서 시작해 B로 이동하고 B에서 다시 유사 대책을 발표하고 시행하면서 B는 다시 오른쪽으로 이동하고, market outcome이 기대했던 결과에 반함에도 불구하고 자신의 지지 밀도함수에서 상승한 가격이 관측되었을 확률은 더 높아지는 상황이 발생합니다. 이렇게 시장의 반복적 확인과정을 거치면서 시장의 반동이 오히려 정책에 대한 신뢰를 높이고 반시장적 대책의 반복을 부추기는 역할까지 하는 순환적 과정이 반복되었습니다. 문재인 정부대책의 실패를 목도했던 전강수 박사는 이런 자기 확신과정의 극단적 형태가 됩니다. 가격분포가 진보보다 왼쪽에 있다고 여기는 보수는 이런 순환과정을 악순환과 시장의 부작용으로 해석했습니다. 아마도 임기 말이 되면서 반복적 대책의 효과에 대한 의문이 들었던 것은 <그림 3>에서 문 정부의 반복적 개입이 D를 지나서 likelihood ratio가 감소했는데, 정책당국이 이렇게 감소한 likelihood ratio의 시사를 합리적으로 수용해서 생긴 일 같습니다. 임기초 종말론자와 유사한 해석과 정책선택을 할 때도 likelihood ratio 시각에서 보았을 때 그 해석과 선택은 합리성 원칙에 위배되지 않았습니다. 임기 중후반 문 정부의 선택도 likelihood ratio 시각에서 보았을 때 마찬가지로 합리적이었습니다. 보수와 시장주의자는 문재인 정부 정책 참모들을 이해할 수 없다고 자주 말했지만 사실 이들은 여기 theorized framework에서 보았을 때 대단히 합리적이고 정상적인 인사들이었습니다. 물론 이 paradox는 이들에게 커다란 지적 도전이었고, 김수현(2023), 이준구(2023)는 그 도전에 맞서 나온 진보의 절박한 자기구제 시도였습니다.
이제 2022년 5월 정권이 바뀌어 보수정부가 들어섰고 당시 집값이 A이었다고 합시다. 시장친화적 대책을 발표하면서 서울 집값은 A에서 C로 떨어졌고 두 점에서 관측된 시장가격이 진보 대비 보수가격밀도 함수에서 출현했을 likelihood가 올라갔습니다.
A에서 likelihood ratio = 보수 가격분포의 확률밀도/진보 가격분포의 확률밀도 = 0.3/0.3 = 1.0
대책 발표후 C에서 likelihood ratio = 보수 가격분포의 확률밀도/진보 가격분포의 확률밀도 = 0.4/0.2 = 2.0
즉 C라는 시장가격이 진보 지지 가격분포에서 나왔을 확률은 0.2에 불과하지만 보수 자신이 지지하는 가격분포에서 나왔을 확률은 0.4나 되고, '이창무'에서 보았듯이 시장존중 정책을 펴면 펼수록 그런 패턴이 더 강하게 나타납니다. 따라서 관측된 시장가격 C는 보수 지지 밀도함수에서 나왔다고 판단하는 것이 합리적입니다. 이런 시장 확인은 윤석열 정부에서 보수적 대책의 지속적 채택을 정당화하는 근거로 활용되었고 유사한 성격의 대책을 추가로 채택하게 만들었습니다. "오세훈 서울시장 취임 이후 ‘신속통합기획’ 같은 전향적인 태도 변화만으로도 짧은 기간 동안 상당한 변화가 일어나고 있다."(출처: 중앙일보 https://www.joongang.co.kr/article/25050045)는 이창무 박사의 진단도 이런 해석 사례로서, 이창무 박사는 이런 일을 경험하고 자신의 정책적 stance를 더욱 강화했습니다.
이렇게 양측은 지지 이론과 관찰이 일치하는 경험을 반복적으로 현실에서 겪게 되었습니다. 각자의 경험은 이제 양립불가인 factual truth가 되었습니다. 전에 '건강한 의심'이 무척 중요하다고 했지만, 여기서는 이런 '건강한 의심'이라는 지적 태도가 무력하기만 합니다.
두 가지 상반된 factual truth는 양립할 수 없지만 이런 모순적 상황은 실재하는 현상입니다. 이제 자신의 입장은 관철의 대상이 되고, 자신의 framework에서는 수용 불가인 해석을 행하는 상대방은 설득보다는 지배(dominance)의 대상이 됩니다. 정권교체는 주택과 부동산부문에 존재하는 이런 고질적 문제와 갈등을 해소하는 정치과정이 되고, 정책의 단절적 변화를 초래합니다.
이런 모순적 상황과 갈등의 기저에는 진보와 보수를 가리지 않고 존재한 계획기구 편향 특히 계획가가 지닌 편향('계획편향')이 있습니다. '김수현', '이창무', '전강수' 사례에서 보았던 것처럼 계획편향의 존재를 상상할 수 없었기 때문에, 진보이건 보수이건 <그림 3>의 어느 한 편에 서면 자기강화적 정책과정에서 빠져나오는 것은 사실상 불가능합니다(문 정부의 성과를 보고 자신의 신념을 강화한 전강수 박사도 마찬가지). 자신의 정책관과 일치하는 정책결과가 출현하는 데 어떻게 자신의 입장에 의문을 제기할 수 있을까요? 비록 상대방이 이해하는 언어로 상대를 설득하지는 못해도 적어도 자신의 frame of reference에서는 perfectly OK이고 perfectly sense-making한데... 간혹 would-be abnormality가 관측되어도 시장의 반복적 반대 신호조차 정책 기조의 문제로 이해하기보다 정책 technicality와 같은 사소한 문제로 돌리면 됩니다.
문재인 정부시기 가격이 상승하자 정부는 매입자에 대한 LTV, DTI 규제를 강화하면서 유동성을 규제하였음. 이 때 문재인 정부가 잘못한 것은 서민금융으로 규정지어졌던 주택가격의 50~70%이상 수준에 달하는 전세대출의 확대였음. 출처: 심사자 B의 심사평 line 37-40
과학과 인문학을 구분하지 않는 것이 이 바닥의 일상인데...
<그림 3>이 보여주는 함정은 참 무섭습니다. 여느 전문가도 이런 함정에 빠질 수 있는데, 전문가의 지식과정이 지닌 이런 잠재적 맹점만 인식해도 한국 계획의 현실 괴리, 그리고 진보-보수간 의견 대립도 많이 개선됩니다. 2024.9.2 토론문 서두에 아래와 같이 적은 적이 있습니다.
(1) 보수와 시장주의자의 입장이 진보의 대척점에 있다고 해서, 진보 정책관의 부정이 곧 보수와 시장주의자 시각의 타당성을 시사하는 것은 아닙니다. 이론과 관찰이 일치한다고 이론이 맞다는 보장도 없습니다. 더 당혹스러운 것은 policy outcome이 보수, 진보 각자의 입장을 동시에 confirm하기도 하는데, 이창무 박사의 글에서도 관찰되고 문 정부 초에도 관찰되었던 일입니다. 이런 경험은 각자의 신념을 서로 다른 방향으로 강화합니다. 쉬뢰딩거의 고양이는 아니더라도 인과론적 관점에서 공존해서는 안 되는 일이 공존합니다. 이런 상황이라면 온전한 사람도 머리가 돌아야 정상입니다.
서울 집값을 설명하는 변수로서 경제변수에만 집중하는 접근법이 얼마나 협소한지 (1) 중복 편향모형, (2) 정책의 자기강화 기제가 그 한계를 생생하게 보여주었습니다. 여기 논쟁의 중요한 교훈입니다. 주요 논객들이 유동성, 이자율, 투기, 과밀혼잡 문제에 몰입한 나머지 정작 중요한 계획기구 편향과 진보 편향을 놓쳤습니다. 사회과학의 명제로서 진보 부동산정책론이 지닌 비과학성, 진보의 부동산정책 자체가 투기장의 특성을 강화하고 집값 상승을 부추길 수도 있다는 점을 간과한 진보 예외주의적 사고(2024.8.1 토론문)가 진보의 치명적 실수였다면, 계획계의 문화적 코드와 관행적 practice가 현 주택문제의 기저 발생원인이었다는 점을 간과한 것이 계획계의 치명적 실수였습니다.
계획계의 이 실수는 한국 사회의 절반을 점하는 이념집단 한 편 전체를 바보스럽게 보이도록 했고, 한국을 큰 혼란 속으로 쳐박았습니다. 계획계가 탄탄한 scholarship으로 중심을 잘 잡아주었어도 얘기는 많이 달랐을 것입니다. 한국 사회에서 계획계가 어떤 거인(巨人)인지 계획계 안에서도 그리고 계획계 밖에서도 인식갭이 존재합니다.
이 시대를 기억하는데 도움이 되는 말을 남겨 주시기 바랍니다.
말들이 쌓이는 대로 아래 부록에 올리겠습니다.
최근의 비상계엄 사태를 보면서 이런 논의의 중요성이 더 커졌다는 생각을 자꾸 하게 됩니다. 우리 자신을 객관화하는 작업을 해야만 system risk를 줄이고 최악을 피할 수 있습니다. 누가 다음에 집권하든 제2의 RWD모형이 지배하는 주택시장이 또 있어서는 안 됩니다.
우리 사회의 긍정적 변화는 꿈 꾸는 것에서 시작하지만 현 학계 풍토에서는 꿈을 꾸기 어렵습니다. 이혁주-유상균(2024)을 처음 '국토계획'에 투고하고 게재불가 판정 받고 나서 '부동산연구'에서 게재 가 판정을 받기까지 1년 반 정도 걸렸습니다. 국내외 학술지에 논문을 투고해 보았지만 이 정도로 고생을 하지는 않았습니다. 어떤 말로 포장해도 우리 자신을 객관화하는 언어는 불쾌하기 마련입니다. 그 대상이 계획가의 정체성이라면 불쾌를 넘어 모욕감까지 느끼게 됩니다. 그러나 그런 얘기도 할 수 있어야 학회입니다.
한국행정이론학회 초기 창립회원으로 참석해서 학회 할 때 고려대 행정학과 명예교수이자 학술원 회원인 백완기 교수 앞에서 그 제자가 선생님을 비롯한 행정학 1세대를 면전에서 비판하는 발표도 하고 그랬습니다. 행정학에서 art와 science에 관한 것이었는데 1세대의 오해로 행정학 연구가 왜곡되었다 뭐 그런 내용입니다. 그때 백완기 교수는 제자의 비판에 대해 오해라는 취지로 답변했던 것으로 기억합니다. 이런 비판이 아무렇지도 않게 되는 그런 개방성은 놀라운 경험이었습니다. 국악계 원로들이 후배들의 파격을 오히려 반기는 오디션 프로그램도 그런 류입니다.
간혹 행정학회에 대해 부정적으로 말하는 동료 계획가들을 봅니다. 제가 본 인상은 그렇지 않았습니다. 진지한 scholar라고 할 만한 사람들이 정말 많습니다. 올 겨울 서울과기대 행정학과에서 정책학 전공자 교수를 채용하면서 지원자 pool을 보고도 그런 느낌을 받았습니다. 이 pool에는 도시전공자도 포함됩니다.
국토/도시계획 학계 풍토는 더 개방적이고 더 유연하게 변해야 합니다. 2021년 출판된 '토지공개념과 국토-도시계획'(김학열-이혁주, 2021)도 그런 의도를 가지고 국토학회 편집위가 기획했던 사업입니다. 이혁주 박사가 맡아서 추진하다가 싫어들 하는 기색이 역력해서(이 박사가 느끼기로는) 휴지통에 처박은 것을 김학열 교수가 어렵게 살려서 나온 책입니다. 서로 생각이 다를수록 더 열심히 얘기하고 상대를 이해하도록 노력해야 한다는 취지였지만, 우여곡절 끝에 나온 책입니다. 불편하지만 해야 하는 얘기라면 열심히 찾아서 해야 합니다. 지식=정오관(正誤觀)에 따라 드러내놓기를 꺼려해서 그런 것 같습니다. 지식은 과정이지만 수정/부정을 일상적으로 받아 들이지 못해서 생긴 부작용입니다. 이혁주 박사가 여기서 겪은 일은 이 박사 한 사람으로 그쳐야 합니다.
system failure 이전에 scholarship failure입니다. 더디어도 지금부터라도 제대로 공부하고 그리고 얘기합시다. 아무리 허투로 들리는 얘기도 국악계 원로들이 그랬던 것처럼 귀를 내어 줍시다.
이번 주말 큰 정치적 일정이 잡혀 있습니다. 논쟁적인 사안일수록 상대방이 궁금해 하고 걱정하는 것이 무엇인지 더 생각하고 자신에게는 더 엄격한 기준을 적용합시다. 그렇지 않으면 이런 일은 이름만 바꾸어 반복됩니다.
한국 민주주의의 위기의 현장에서 막을 내립니다. 감사합니다.
이혁주 드림
김학열-이혁주, 2021. 토지공개념과 국토-도시계획: 계획현상의 이해와 실천. 대한국토-도시계획학회 기획도서. 서울: 보성각.
이혁주-유상균, 2024. 서울 아파트 가격의 변동분석. 부동산연구 34(2): 57-71.
Festinger et al., 2014. When Prophecy Fails. Wilder Publications.
Fischel, William A., 2005. The Homevoter Hypothesis. Cambrdige, Massachusetts: Harvard University Press.
<첨부 1> 전국 집값 분석
KB=read.csv(file.choose(),header=T) # 내려받기
View(KB)
attach(KB)
P_National=diff(National) # Stationary
P_Seoul=diff(Seoul) # Stationary
dates = seq(as.Date("1986-01-01"), as.Date("2024-01-01"), by = "month")
plot(dates, National, type = "l",xlab = "Year", ylab = "Price index")
lines(dates, Seoul, col = "red")
abline(v = dates[377], lty = 2)
abline(v = dates[437], lty = 2)
text(dates[409],39,'문재인')
text(dates[406],33,'정부')
text(dates[150],36,'전국')
text(dates[150],17,'서울', col='red') # <그림 1> 완성
<첨부 2> 서울 및 전국 주택가격 분석
data=read.csv(file.choose(),header=T) # 내려받기 시작점=2008.12. Data_2023.12.csv.
View(data)
attach(data)
HS_HH=read.csv(file.choose(),header=T) # 아파트 공급, 세대수 전국자료 내려받기
View(HS_HH)
attach(HS_HH)
Const_National=diff(Apt_National)/1e4 # Starts from 2010.9
Const_Seoul=diff(Apt_Seoul)/1e3 # Starts from 2010.9
HH_Nat=diff(HS_HH$HH_National)/1e5 # Starts from 2011.1
HH_Sel=diff(HS_HH$HH_Seoul)/1e4 # Starts from 2011.1
HH_National=HH_Nat[6:140] # Taking the data from 2011.2 to 2022.4. The 1st five entries unavailable.
HH_Seoul=HH_Sel[6:140]
Const_National=Const_National[6:140]
Const_Seoul=Const_Seoul[6:140]
Price_National=P_National[301:435] # Taking the data from 2011.2 to 2022.4
Price_Seoul=P_Seoul[301:435]
Debt=Debt[27:161] # Taking the data from 2011.2 to 2022.4
CD=CD[27:161]
M2=M2[27:161]
MPI=MPI[27:161]
Park=Park[27:161]
Moon=Moon[27:161]
Pandemic=Pandemic[27:161]
endo=cbind(Price_National,Price_Seoul,Debt,CD,M2,MPI,Const_National,HH_National,Const_Seoul,HH_Seoul)
exo=cbind(Park,Moon,Pandemic)
library(vars)
VARselect(endo,exogen=exo) # p=1, 10권장
model=VAR(endo,p=2,exogen=exo)
# 가설...cause 변수 --> All the other varialbe
causality(model,cause='Price_National') # F stat 기반 p value=0.00, Wald stat 기반 p value=0.00
causality(model,cause='Price_Seoul') # F stat 기반 p value=0.04, Wald stat 기반 p value=0.00
causality(model,cause='Debt') # F stat 기반 p value=0.83, Wald stat 기반 p value=0.00
causality(model,cause='CD') # F stat 기반 p value=0.08, Wald stat 기반 p value=0.03
causality(model,cause='M2') # F stat 기반 p value=0.00, Wald stat 기반 p value=0.17
causality(model,cause='MPI') # F stat 기반 p value=0.05, Wald stat 기반 p value=0.00
causality(model,cause='HH_National') # F stat 기반 p value=0.00, Wald stat 기반 p value=0.00
causality(model,cause='HH_Seoul') # F stat 기반 p value=0.21, Wald stat 기반 p value=0.00
causality(model,cause='Const_National') # F stat 기반 p value=0.90, Wald stat 기반 p value=0.00
causality(model,cause='Const_Seoul') # F stat 기반 p value=0.04, Wald stat 기반 p value=0.00
MPI, Const_National, HH_Seoul이 Price_National에 미치는 영향을 irf분석한 결과 이들 변수의 유의도가 많이 떨어져서 이들 변수는 모형의 내생변수에서 제외. M2는 성격이 일부 Debt와 겹치기 때문에 제외. 이 결과를 토대로 다음 모형에서 다시 irf 분석
endo=cbind(Price_National,Price_Seoul,Debt,CD,HH_National,Const_Seoul)
model=VAR(endo,p=2,exogen=exo)
irf(model,impulse='Price_Seoul',response='Price_National',cumulative=TRUE,n.ahead=30,ci=0.9) # Insignificant
irf(model,impulse='Debt',response='Price_National',cumulative=TRUE,n.ahead=30,ci=0.9) # Insignificant (+)
irf(model,impulse='CD',response='Price_National',cumulative=TRUE,n.ahead=30,ci=0.9) # Significant (-)
irf(model,impulse='HH_National',response='Price_National',cumulative=TRUE,n.ahead=30,ci=0.9)
# Insignificant (+)
irf(model,impulse='Const_Seoul',response='Price_National',cumulative=TRUE,n.ahead=30,ci=0.9) # Significant (-)
irf(model,impulse='Price_National',response='Price_Seoul',cumulative=TRUE,n.ahead=30,ci=0.9) # Signficant (+)
irf(model,impulse='Debt',response='Price_Seoul',cumulative=TRUE,n.ahead=30,ci=0.9) # Signficant (+)
irf(model,impulse='CD',response='Price_Seoul',cumulative=TRUE,n.ahead=30,ci=0.9) # Significant (-)
irf(model,impulse='HH_National',response='Price_Seoul',cumulative=TRUE,n.ahead=30,ci=0.9)
# Insignificant (+)
irf(model,impulse='Const_Seoul',response='Price_Seoul',cumulative=TRUE,n.ahead=30,ci=0.9) # Insignificant (-)
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,0, 1, # Moon --> Price_National
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1), nrow=6, byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.33
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1, # Moon --> Price_Seoul
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,0, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1), nrow=6, byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.00
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,0,1, 1, # Park --> Price_National
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1), nrow=6, byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.82
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1, # Park --> Price_Seoul
1,1,1,1,1, 1,1,1,1,1, 1,1,1,0,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1), nrow=6, byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.07
C=matrix(c(1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 0, # Pandemic --> Price_National
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1), nrow=6, byrow=TRUE)
R_model=restrict(model,method='manual',resmat=C)
chi2=2*(logLik(model)-logLik(R_model))
1-pchisq(chi2,1) # 0.16
<첨부 3> Moon, Park, Pandemic, CD변수가 문재인 정부시기 주택가격에 미친 영향 측정
A1=Bcoef(model)[,1:6]
A2=Bcoef(model)[,7:12]
b=Bcoef(model)[,15] # Moon coeff
y=array(0,c(6,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*60 # +6.01 points
sum(y[2,])*60 # +35.5 points
b=Bcoef(model)[,16] # Pandemic coeff
y=array(0,c(6,30))
y[,1]=b
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,])*26 # +19.1 points
sum(y[2,])*26 # +10.9 points
# CD금리의 영향
impact=1.4-(-0.4) # CD[2022.4]-CD[2017.5]. 문정부 기간에
y=array(0,c(6,30))
y[,1]=array(c(0,0,0,impact,0,0),c(6,1))
y[,2]=A1%*%y[,1]
for(n in 3:30){y[,n]=A1%*%y[,n-1]+A2%*%y[,n-2]}
sum(y[1,]) # -0.79 points
sum(y[2,]) # -0.69 points
<첨부 4> 투기장 지수를 포함한 모형에서 다시 모형 검토하기
temp=read.csv(file.choose(),header=T) # 투기지수 자료 내려받기. 자료는 월별로 아파트 면적(제곱미터), 아파트 거래가격(만원)이 한 조가 되어 2006.1부터 2023.12까지 432열 들어가 있음. 즉 1년이 24개 데이터 열로 구성.
2016.5-2017.4: 249-272
2017.5-2018.4: 273-296
2018.5-2019.4: 297-320
2019.5-2020.4: 321-344
2020.5-2021.4: 345-368
2021.5-2022.4: 369-392
2022.5-2023.4: 393-416
View(temp)
APdata=cbind(temp[,69:432]) # data from 2008.11 to 2023.12
count=0
sales_vol=0
avg=0
std=0
coef_var=0
range=0
skew=0
med=0
kurt=0
avg=0
library(moments)
for(n in 1:182){from=1+2*(n-1) # 2008.11부터 2023.12월까지 자료 가운데 거래가격 자료만 추출하는 스텝
to=from+1
count[n]=sum(!is.na(APdata[,to])) #월간 거래건수. na라고 입력된 data cell을 제외하고 숫자 입력된 cell 개수 세기.
data1=cbind(APdata[1:count[n],to])
sales_vol[n]=sum(data1) #월간 거래주택 가격들의 합=거래금액, 거래물량 지수
std[n]=sd(data1) #월간 거래주택 가격들의 표준편차, 변동성 지수
med[n]=median(data1)
coef_var[n]=sd(data1)/mean(data1) #월간 거래금액들의 변이계수, 변동성 지수
range[n]=quantile(data1,0.75) - quantile(data1,0.25) #월간 거래금액들의 범위=Q3 - Q1
skew[n]=skewness(data1)
kurt[n]=kurtosis(data1)
avg[n]=mean(data1)
}
count=diff(count)/1e3 # We first-difference for ease of estimation.
sales_vol=diff(sales_vol) /1e8
std=diff(std)/1000
#coef_var=diff(coef_var) # We first-difference for ease of estimation.
range=diff(range)/mean(range)
# # Taking data from 2011.2 to 2022.4
count = count[27:161] # 여기 자료는 서울 자료라서 근본적인 한계가 있음. 전국자료가 아님
sales_vol = sales_vol[27:161]
std = std[27:161]
coef_var=coef_var[27:161]
range=range[27:161]
#X=cbind(Price_National,Price_Seoul,Debt,CD,HH_National,Const_Seoul,sales_vol,count,coef_var,Park,Moon,Pandemic)
# write.csv(X,file='C://Temp/X.csv')
endo=cbind(Price_National,Price_Seoul,Debt,CD,HH_National,Const_Seoul,sales_vol,count,coef_var)
exo=cbind(Park,Moon,Pandemic)
model=VAR(endo,p=2,exogen=exo)
R_model=restrict(model,method='ser',thresh=0.5)
문재인 정부시기 부동산대책 발표 자료(정부 공식 사이트)
이명박 정부 부동산대책 일지(정부 공식 사이트)
노무현 정부 부동산대책 일지. KBS
구글 설문지: 이 시대를 기억하고 복원하는데 도움이 되는 것이라면 어떤 것도 좋습니다. 익명, 기명 자유이고, 설문자는 작성자의 신원을 알 수 없으며 수집도 하지 않습니다. 연말까지 열어 놓습니다. 최대 5000자
1. 이혁주 교수님, 7년에 가까운 명논쟁을 이끌어 주셔서 너무 고맙습니다. 나중에 도시계획 분야에도 정말 열심히 연구한 학자가 있었다고 자랑스럽게 이야기할 수 있게 되어 너무 기쁩니다. 오랫 동안 지난한 논쟁을 굳굳하게 견지해 주신 이혁주 교수님의 노고, 늘 기억하겠습니다. 고맙습니다. LH 토지주택연구원장 정창무 올림
저는 공학과 사회과학의 접점에서 활동한 계획가이자 연구자입니다. 지난 6,7년 동안 제가 깊게 간여했던 집값 논쟁의 시말을 과학과 스칼라십이라는 시각에서 말씀드려보겠습니다.
주택 및 부동산 전문가들 사이에서 집값 문제를 두고 격렬한 논쟁이 있었습니다. 이 논쟁은 크게 나누어 투기 때문에 집값이 높다는 진보의 투기원인론과 과잉 규제로 인해 공급이 부족해서 집값이 높다는 보수의 과잉규제론간 충돌로 요약됩니다. 논쟁 속에 던져진 질문은 크게 두 가지였습니다. 첫째, 진보와 보수 가운데 어떤 입장이 서울 집값의 변동을 더 잘 설명하는가? 둘째, 극명하게 상반된 두 서사가 어떻게 서로 확신을 가지고 지난 수십 년 동안 공존할 수 있었는가?
적지 않은 분량의 통계분석과 정식분석(formal analysis)을 포함해 가혹하다고 해도 좋은 검증을 통과하고 살아남은 결론은 크게 두 가지였습니다.
첫째, 2003년 노무현 정부 이후 부동산 정책을 보수와 진보의 대립적 구도에서 분석한 결과, 투기원인론은 근거가 부족하고, 노무현 정부 이래 오른 주택가격은 팬데믹 요인을 제외하고 대부분 진보정권 부동산정책의 산물이다. 또한 주택가격 상승도 투기 억제의 실패 때문이 아니라, 진보정권의 정책이 시장의 투기장적 요소를 자극해 초래한 정부실패였다. 정부대책이 시장전망의 이질성과 수요-공급자 풀(pool)에 미친 영향을 추적하면, 진보정권의 당초 예상과 다르게 어떻게 이런 관측 결과가 나왔는지 설명할 수 있다. 한편, 진보정권 시기 주택가격 상승과 보수정권 시기 주택가격 안정이라는 집값 변화 패턴은 두 정권의 상반된 정책이 낳은 주택가격의 순환변동이었음이, 검토한 여러 통계 모형에서 일관되게 확인된다.
둘째, 그러나 이러한 분석결과에도 불구하고 높은 집값이 진보정권의 산물이라는 보수와 시장주의자의 주장 역시 문제의 본질과 큰 괴리가 있다. 주택통계를 간단히 개념적으로 조작한 결과에 따르면, 집을 한 채 더 공급할 때 발생하는 외부비용은 외부편익을 초과한다. 즉 교과서적 통념과 달리, 한국사회는 주택을 더 이상 가치재로 여기지 않는다. 그리고 여기서 그치지 않고 집을 한 채 더 공급할 때 발생하는 외부비용이 외부편익을 초과하는 정도가 집값의 7,80%에 달하기 때문에, 주택은 이제 social bad가 되고, social bad 중에도 악성 social bad로 분류된다. 합법적인 재화로서 이런 피구세율을 가진 재화는 담배 정도이고, 불법적인 것으로는 마약이 이런 류에 속한다. 피구세는 외부비용을 내부화하기 위해 재화의 공급가격에 추가한 벌금을 말한다. 주택의 추가공급에 따른 사회적 비용이 사회적 편익을 초과하는 정도가 이렇게 크게 측정된다는 것은 관련 전문가들의 주택에 관한 인식에 심각한 편향이 존재한다는 의미이다. 이때, 이러한 편향에 비례해서 주택공급상 왜곡이 매우 심하게 된다. 바꾸어 말해, 주택의 추가공급을 통해 획득가능한 사회적 순편익이 왜곡의 정도에 비례해 매우 크게 주어질 것임을 시사한다. 이런 비용-편익 기준을 적용해 지난 수십년 동안 서울 주택가격의 변동패턴을 검토하면, 문재인 정부 시기 상승한 집값은 애교 수준이다.
요약하면, 전체적으로 진보의 투기원인론은 타당하지 않고 보수의 과잉규제론이 타당한 것으로 결론을 맺었습니다. 그러나, 그 과잉규제는 기존 보수와 시장주의자의 통념과 달리 진보적 부동산 정책에 앞서 계획제도에 의한, 그것도 정도가 매우 심한 규제 때문에 발생했다는 것이 드러났습니다. 이 결론은 좌우와 계획가 누구도 예상하지 못했던 결론입니다. 계획가는 토지이용계획과 용도지역제를 통해 주택공급에 절대적인 영향을 미칩니다. 결국 부동산 정책은 계획가가 설정한 제도적 지평의 한계 안에서 논의되기를 반복했고, 이러한 반복은 좌우의 주기적 정책 갈등에도 불구하고 큰 변화가 없었습니다. 서울의 주택 가격은 노무현 정부 이래, 좌우 정책 주기에 연동되어 계획계가 설정한 가격을 기저에 깔고 순환적으로 변동했습니다. 계획가가 부동산 문제의 한가운데 있었다는 것은 의외의 관찰 결과였습니다. 계획가는 보수도 있고 진보도 있습니다.
만약 서울에서 주택이 이 정도로 과소공급된 것이라면, 투기 때문에 집값이 높았다고 믿었던 진보 정권의 대책은 시장전망의 불확실성을 증가시켰을 가능성이 높았고, 시장은 실제 그렇게 반응했습니다. 이 경우 유동성 공급과 신용 확대를 필수요소로 거론하는 기존 가격거품-붕괴 문헌의 전형적 사례들과 달리, 유동성과 민간 신용이 담당했던 투기 추동의 역할을 진보 부동산정책이 대신하면서 장기간 집값을 상승 추세로 유지할 수 있었습니다. 몇 가지 단서가 달려야 하지만, 이런 대안 기제의 존재가 전혀 알려져 있지 않았던 것은 아닙니다.
주택에 존재하는 피구세 통계를 보면, 왜 그동안 보수의 지론대로 역대 정부의 주택공급, 규제완화 노력에도 불구하고 시장가격이 떨어지지 않았는지 결과론적으로 설명가능합니다. 이 피구세는 지난 수십년 동안 큰 변화가 없었고, 지난 정권에서 오히려 역대 최고 수준까지 상승했습니다. 그래서 진보가 과거부터 일관되게 제기했던 의문, 즉 보수가 주장하듯이 공급이 문제였다면 벌써 해결되었을 것이라는 진보의 오랜 의문은 이렇게 풀립니다. 우리가 주목해야 할 통계는 “예년 공급수준”이라는 통계가 아니라 피구세 통계였습니다. 주택이 재화와 자산으로서 여러 가지 사회적 부작용을 낳는다는 점을 고려해도, 서울에서 주택은 심각하게 부족했습니다. 기존의 계획제도적 틀 안에서 미세조정을 통해 주택시장을 효율적으로 관리할 수 있다는 상식 역시 타당하지 않다는 것은 충격적 결론이었습니다. 특히 계획커뮤니티로서는 수용할 수 없는 경험명제입니다. 왜 이런 결론이 충격적인지는 따로 설명이 필요 없습니다.
이 피구세 개념을 이용하면 논쟁의 두 번째 질문 즉 어떻게 좌우 및 계획커뮤니티의 스칼라십이 지난 수십년간 반복적으로 실패를 거듭했느냐에 대해서도 답할 수 있습니다. 이 실패의 시작에 계획가가 있다면 그 끝에 진보의 스칼라십이 있습니다. 먼저 논쟁 과정에서 드러난 진보의 스칼라십 실패에 관해 아래와 같이 4가지로 정리할 수 있습니다.
광범위하게 관찰되는 인과론적 측정의 부재(虛)
통계적 유의도와 설명력, 상관관계와 인과관계의 혼동, 귀인(歸因) 오류와 다수의 허위 경험명제(僞)
일부 연구자에게서 보는 표본과 모집단의 동일시 혹은 기존 연구성과의 선택적 인용(僞)
어떤 진보 부동산정책론도 집값의 7,80%에 달하는 피구세와 사회적 순비용의 출현 이유를 설명하지 못하고, 그 존재 또한 정당화하지 못하는 현실(虛)
이들 진단의 근거는 잠시 후 더 보기로 하고, 이런 관찰 결과는 진보 부동산정책론의 전반적 허위성을 시사하는 것으로서, 사회과학적 인과론을 인문학적 해석으로 대체하려 했던 시도가 낳은 scholarly failure입니다. 진보 학자들한테 accounting 논문은 있어도 주요 논설을 인과론적 측정 causal measurement를 통해 규명한 논문은 흔하지도 definitive하지도 않습니다. 부동산 문제의 도덕적 측면에 집중했던, 진보 연구자들의 성향이 이런 실패에 일조했습니다.
그러나 이런 부조리(absurdity)의 기저에는 계획계에 내재된 문화적 코드가 근인(根因)으로 자리 잡고 있었습니다. 계획가는 토목, 건축, 위생공학, 조경 등 기술 기반 분야에서 기원한 전문직으로서, 전통적으로 사회과학적 경험론보다는 공학적 처방과 설계 중심의 교육과 훈련을 받아왔습니다. 이런 배경은, 인과 구조의 실증적 규명과 설명(theorizing)을 연구의 중심에 두는 사회과학 일반의 연구 풍토와 달리, 계획 이슈를 이해하거나 설명하기보다 처방하고 설계하려는 경향을 강화시키는 분위기를 계획학계 전반에 형성시켰습니다. 그 결과, 계획과 정책의 영역에서 논의와 합의의 출발점이 되는, 검증된 인과 관계와 공통 이해가 충분하게 축적되지 못했고, 이로 인해 논의의 기반 자체가 취약해지면서, 생산적인 논의와 합의가 구조적으로 어려운 지형이 형성되었습니다. 한 전문가 집단을 수백년간 지탱해온 직업적 사명과 세계관을, 다른 전문가 집단이 그 규범적 정당성과 과학적 타당성을 의문시하는 것은 대단히 어렵습니다. 이런 지적 지형에서라면, 어떤 ill-scholarship도 계획계 안팎에서 출현할 수 있습니다. 진보의 지적 실패는 그런 사례 중 하나에 불과합니다. 보수와 시장주의자의 시각도 예외가 아닙니다. 시장이 제도라는 점, 그리고 그 제도의 주 설계자가 계획가라는 점을 간과하고, 손쉽게 진보에게 책임을 돌리고, 거기서 멈추었습니다. 사실 한국 사회 전체가 계획가의 인식지평에 포획되었고, 두 진영 모두 지적풍토를 왜곡하고 이를 유지하는 데 기여했으며, 이런 점에서는 두 진영간 차이가 없습니다.
이 말은 수사가 아닙니다. 조선일보와 오마이뉴스 어디에서도 금방 알 수 있고, 경제학자들이 쓴 논문과 증권사 애널리스트들의 글과 말에서도 쉽게 확인이 되는 내용입니다. 보수 언론에서도 이자율, 과잉 유동성, 가계 신용 등은 일상적으로 접하는 원인들입니다. 원인이 무엇인지 잘 모를 때 거론되는 단골 메뉴이고, 좌우와 전공자-비전공자를 불문하고 상투적으로 거론하는 원인론입니다. 자주 말하면 그런 추측은 지식이라는 지위를 얻습니다. 지식에서 합의는 중요한 성립요소이기 때문입니다. 보수와 진보의 scholarship은 이렇게 사이좋게 공진화했고, 우리 모두 이런 동적 지식생태계의 일원입니다.
계획가라는 전문가 집단이 자신뿐 아니라 다른 전문가들의 사고를 어떻게 황폐화했는지 일화 몇 가지를 소개합니다. 특히, 진보 scholarship이 심한 타격을 받았습니다.
국내 헨리 조지연구의 권위자이지만 경제학박사임에도 경제학 입문서 2,3주째 교재에 등장하는 기초개념에 관한 질문을 이해하지 못하고 반론하다 최종적으로 무너진 일이 있습니다. 뿐만 아니라 이 인사는 사상가로서 실천학문을 함에도 불구하고 사회과학 연구방법론의 기본철학에 대한 몰이해를 당시 보여주었습니다.
국내 최고 학부의 어떤 경제학과 교수는 자신의 주장은 "정밀한 실증적 검증이 필요하다"고 실토한 적도 있습니다. 이런 용기 있는 고백이 깊은 인상을 남겼습니다만, 이 책은 기대와 달리 작년에 우수도서 상을 받았습니다. 과학자는 추측만으로 책 한 권을 쓰지 않습니다. 사회는 해당 인사의 명성과 함께 그 저서를 ‘실험실’에서 생성된 문서로서 소비하고, 사이비 지식 생산의 새로운 사이클에 투입합니다.
국내 최고 학부의 어떤 부동산 전공자는 몇 차례에 걸쳐 유령명제를 수정 제시하다 결국 물러섰습니다. 그런 유령명제를 가지고 활동하던 유튜브 스타 교수였습니다. 유령명제는 애초에 인과론적 측정이 없이 경험명제라고 주장하는, 실체 없는 명제 혹은 참고가 될 만한 관련 측정결과가 없는 주장을 말합니다. 대중의 인식은 이렇게 영향을 받고, 이는 정치적 동력이 되고 정책으로 현실화됩니다.
국토계획분야 국책 연구기관의 어떤 전문가는 지난 대선 직전, 정부정책의 정당성을 뒷받침하는 논문을 게재했는데, 당시 청와대의 부동산 정책설계 책임자는 이를 인용하고 정책을 정당화했습니다. 하지만 연구방법론상 심각한 문제가 있었음이 논쟁 과정에서 드러났습니다. 연구자 본인, 연구자가 속한 기관, 그리고 논문을 심사한 편집위원회 등 다중의 검열장치가 모두 정상 작동하지 않았습니다. easy-going하는 스칼라십이 얼마나 사회통념에 취약한지, 그리고 전문가가 정치적 필요에 따라 어떻게 악용되는지 보여주는 system failure 사건이었습니다.
수도권 광역단체 연구원 소속 어떤 전공자의 경우, 논의의 전반적인 분위기를 이해하지 못하고 토론하다 물러선 사례도 있습니다. 앞뒤 가리지 않고 논쟁에 뛰어든 사례였는데, 이른바 심층 헤게모니적 입장(deep hegemonic view)이 어떻게 사람을 용감한 투사로 만들고, 이념적 성향이 문제를 더 악화시키며, 도전 명제를 배제 혹은 주변화하는지 보여준 사례였습니다.
모 유력 정치인 자문위원회 위원장의 경우, 경험명제의 설명을 요구받은 후 결국 반발하고 물러선 사례도 있습니다. 이번 대선 결과에 따라 중요 직책을 맡을 수도 있는 인사였습니다. 학자들의 연구성과가 부족하고, 전문가들의 과학 커뮤니케이션에 문제가 있을 때, 어떻게 일반인들이 마찬가지로 자유분방하게 사고하고, 그 폐해가 잠재적으로 얼마나 클 수 있는지 보여주는 사례였습니다.
기본소득과 토지조세간 결합을 주장한 책을 출판한 학자도 있는데, 두 정책수단의 결합에 관한 기본 아이디어가 논란이 된 적이 있습니다. 이 제안에 따르면 가구 자산의 6,70%에 달하는 자산에 대해 부과한 피구세가 더 늘어나게 되어서, 이 저자는 주택이 social bad라는 계획계와 사회 일반의 결과론적 평가에 동의하고 논의한 것이 됩니다. 그리고 여기서 더 나아가 지금보다 더 나쁜 재화로 취급해야 한다는 실천명제와 정책을 제안한 것이 됩니다. 물론 진보의 어떤 논설도 주택이 이 정도의 social bad라는 명제를 정당화하지 못하고, 해당 저서에도 그런 정당화 논설이 없습니다. 주택문제만 아니었어도 일거양득 double dividend라는 탁월한 제안이 되었겠지요. 이 사례는 한 분야의 부실함이 상호 참조를 통해 어떻게 다른 discipline과 시스템 전체로 확산되고, 그렇게 누적된 거대 부실이 어떻게 대체현실 substitute reality가 되어서, 지적, 정책적 agenda의 구성요소로 변하게 되는 지 보여주는 사례입니다. 이 학자는 다음 정부에서 주목도가 증가할 가능성이 높은, 이 분야의 대표적 인사입니다.
몇 해 전에는, 서울시장과 시장 입후보자 중에 올림픽대로 위에, 북부간선 도시 고속도로 위에 집 짓자는 말을 아무렇지 않게 하던 이도 있었습니다. 이런 세상에서라면 한강 위에 집 짓지자는 얘기도 나올 만했는데, 실제 그런 주장을 진지하게 한 사람도 있었습니다. 세상은 그렇게 미쳐 돌아갔습니다.
계획가가 부과한 피구세라는 개념을 도입하면 이런 우스꽝스러운 일이 어떻게 좌우를 가리지 않고 일어날 수 있었는지 납득이 됩니다. 서울 집값에 존재하는 피구세의 의미를 계획실무적 맥락에서 당시 학자들이 이해하지 못한 상태였습니다. 이 경우, 부동산과 주택에 관한 어떤 논의나 제안, 설명방식도 결국 어디에서인가 막히거나 일관성에서 문제가 생깁니다. 이와 달리 피구세를 전제하면, 통념과 달리 왜 금융요인 포함 경제요인이 서울 집값의 설명요인으로서 사실상 무력했는지 설명이 되고, 왜 연구자들이 이렇게 자유분방하고 논란이 많았는지 이해할 수 있습니다. 그리고 여러 연구자의 기대와 달리, 왜 문재인 정부 정책이 오히려 투기를 조장한 것으로 판명이 났는지, 그리고 정권 교체 후 왜 집값이 급락했는지 일관된 이론으로 설명가능합니다. 뿐만 아니라, 왜 이렇게 오랜 세월 좌우가 다투었음에도 논쟁이 평행선을 달렸는지, 어떻게 우리 주변에 경험과학 연구방법론의 기본 철학을 망각한 이른바 연구자와 학자를 지난 수십년 동안 일상적으로 볼 수밖에 없었는지, 그리고 그런 태도와 논설이 어떻게 공론과 정책 현장을 지배했는지 일부 이해할 수 있습니다. 도저히 상상도 못했다면, 그런 언행은 인습과 지적 게으름이 낳은 무지의 결과이자 오만이면서, 동시에 지적 좌절에서 나온 차선의 선택, 몸부림 같은 것이었습니다. 이 시각을 연장해 문재인 정부의 부동산 통계 조작 사건에 적용하면, 이 사건에 대한 해석이 조금 달라집니다. 이 일은 심각한 인지 부조화 상태에서 지적 패닉 때문에 발생한 일로서, 정치적 이해 때문에 감행했을 것이라는 설명은 표피적인 것이 됩니다.
연구자 시각에서, 논쟁을 통해 거둔 굵직한 성과라면 이런 것들입니다. 적어도 노무현 정부 이후 윤석열 정부 초까지 서울 집값의 변동에 관한 설명방식과 이를 뒷받침하는 관측결과를 확보했습니다. 지난 수십년 동안 한국사회를 괴롭힌 퍼즐이었습니다. 이를테면, 주택이 과소공급된 시장에서는 시장불안을 야기하는 정부대책 한가지만으로도 집값을 4, 5년 동안 상승시키는 압도적 기제가 작동했습니다. 그리고, 인과론적 측정 없이 경험과학이 성립할 수 없다는, 경험과학의 기본 철학에 관해 계획 및 부동산정책 커뮤니티가 재인식하게 되었다는 점은, 비록 대단히 부끄러운 일이지만 무엇보다 큰 성과라고 말씀드릴 수 있습니다. 그리고 규범적 정당성이 경험과학적 타당성까지 보장하지 않았다는 점은 계획계가 취해야 할 교훈이면서 동시에 차기 정권에서도 마찬가지입니다.
중요한 것은 이런 일의 발생가능성을 줄이는 일입니다. 만약 수많은 사람이 오랫동안 신뢰했던 경험명제조차 이렇게 처참하게 타당성이 부정될 수 있고, 이런 반증(falsification)이 과학사의 일상이라는 점을 각성한다면, 그리고 기성 좌우가 공유하는 인식과 경험의 틀을 넘어선, 제3의 이해의 틀과 서사가 어떤 상황과 딜레마를 더 잘 설명해내는 경우도 있다는 점을 잘 이해한다면, 논쟁적인 주제일수록, 지적 겸손이야말로 덕목 중의 덕목이라는 점 공감하리라 봅니다. 그럼 최소한 최악은 피할 수 있습니다. 왜냐하면 지적 겸손은 다른 생각도 존중한다는 말로서, 극단으로 가는 것만큼은 피할 수 있기 때문입니다. 최근 두 정부에서 그 폐해가 어떤지 보았고, 차기 정부에서도 통하는 교훈입니다.
이제 극도의 혼란과 갈등의 선단(先端)에서 빠지고, 분열된 내 모습에 낙망하는 일, 이제 하지 않아도 되어 다행입니다. 그간 여러 가지 도움, 깊이 감사의 말씀을 드립니다. 이런 직장에 있었다는 것은 저에게 행운이었습니다. 이혁주 드림. (2025.5.16 퇴임사)