schema: EconSchema
aspectRatio: 1.3
params:
- name: C
value: 40
min: 35
max: 40
round: 0.01
- name: c
value: 0.6
min: 0.5
max: 0.6
round: 0.01
- name: I
value: 17
min: 17
max: 30
round: 0.05
- name: d
value: 500
min: 145
max: 250
round: 0.05
- name: G
value: 20
min: 20
max: 35
round: 0.05
- name: T
value: 20
min: 20
max: 35
round: 0.05
- name: x
value: 0.001
min: 0.001
max: 0.003
round: 0.001
- name: m
value: 0.2
min: 0.1
max: 0.3
round: 0.01
- name: h
value: 500
min: 490
max: 510
round: 0.05
- name: k
value: 0.5
min: 0.4
max: 0.5
round: 0.05
- name: Ye
value: 20000
min: 10000
max: 20000
round: 0.05
- name: M
value: 25
min: 25
max: 35
round: 0.05
- name: L
value: 1200
min: 50
max: 10000
round: 10
- name: rf
value: 0.05
min: 0
max: 0.1
round: 0.01
calcs:
e: ((((2)(params.m)((params.C)+(params.I)+(params.G)-((params.c)(params.T))+(((params.d)(params.M))/(params.h))))-((params.L)((params.k)/(params.h))((params.C)+(params.I)+(params.G)-((params.c)(params.T))+(((params.d)(params.M))/(params.h))))+((params.L)(((params.M)/(params.h))+(params.rf))((1)-(params.c)+((2)(params.m))+(((params.d)(params.k))/(params.h)))))/(((params.x)(params.Ye)((1)-(params.c)+(((params.d)(params.k))/(params.h))+((params.L)(params.k)/(params.h))))+((params.m)((params.C)+(params.I)+(params.G)-((params.c)(params.T))+(((params.d)(params.M))/(params.h))))+((params.L)(params.m)(((params.M)/(params.h))+(params.rf)))))
Yeq: (((params.C)-((params.c)(params.T))+(params.I)+(params.G)+(((params.d)(params.M))/(params.h))+((params.x)(calcs.e)(params.Ye)))/((1)-(params.c)+((2)(params.m))-((params.m)(calcs.e))+(((params.d)(params.k))/(params.h))))
req: ((((params.k)(calcs.Yeq))/(params.h))-((params.M)/(params.h)))
Md2: ((((params.C)(params.k))+((params.I)(params.k))+((35)(params.c))+((35)(params.m)(calcs.e))+((params.G)(params.k))+((params.Ye)(params.k)(calcs.e)(params.x))-((2)(35)(params.m))-(35)-((params.T)(params.c)(params.k)))/(((params.d)(params.k))+((2)(params.h)(params.m))+(params.h)-((params.c)(params.h))-((params.h)(params.m)(calcs.e))))
IS: (((params.C)+(params.I)-((params.d)(0))+(params.G)-((params.T)(params.c))+((params.x)(params.Ye)(calcs.e)))/((1 - params.c)+((2)(params.m))-((params.m)(calcs.e))))
LM: ((((0.075)*(params.h))/(params.k))+((params.M)/(params.k)))
X: (((params.x)(params.Ye))+((params.Ye)(((calcs.e)(params.x))-(params.x))))
M: (((params.m)(calcs.Yeq))+((calcs.Yeq)((params.m)-((params.m)(calcs.e)))))
req100: ((calcs.req)(100))
layout:
FourGraphsPlusSidebar2:
topRightGraph:
xAxis:
min: 0
max: 200
ticks: 6
yAxis:
min: 0
max: 200
ticks: 6
objects:
#45-degree Line
- Line:
slope: 1
strokeWidth: 2
color: grey
- AngleMarker:
measure: 45
strokeWidth: 2.5
color: black
r: 30
label:
text: "`45\\\\degree`"
fontSize: 11
- Segment:
a: [170, 170]
b: [170, 170]
color: grey
label:
text: "`Y_{d}=Y_{renda}=Y_{prod}`"
position: a
fontSize: 9
#Agreggate Expenditure
- Curve:
fn: "(params.C + params.c*(x - params.T) + params.G + params.I - params.d(calcs.req) + (params.x)(params.Ye) + (params.Ye)(((params.x)(calcs.e))-(params.x)) - ((params.m)(x)+(x)((params.m)-((params.m)(calcs.e)))))"
ind: x
color: blue
min: 0
max: 500
strokeWidth: 4
samplePoints: 100
- Point:
coordinates: [calcs.Yeq, calcs.Yeq]
color:
- Segment:
a: [calcs.Yeq, 0]
b: [calcs.Yeq, calcs.Yeq]
color: green
lineStyle: dotted
strokeWidth: 2
- Segment:
a: [calcs.Yeq, 0]
b: [calcs.Yeq, 0]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${calcs.Yeq.toFixed(1)}`"
position: t
- Segment:
a: [0, calcs.Yeq]
b: [0, calcs.Yeq]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${calcs.Yeq.toFixed(1)}`"
position: r
- Segment:
a: [calcs.Yeq, calcs.Yeq]
b: [0, calcs.Yeq]
color: green
lineStyle: dotted
strokeWidth: 2
bottomLeftGraph:
xAxis:
min: 0
max: 50
ticks: 4
yAxis:
min: 0
max: 0.079
ticks: 4
objects:
#Demand for Money - Curve
- Curve:
fn: "((((params.C)(params.k))+((params.I)(params.k))+((x)(params.c))+((x)(params.m)(calcs.e))-((2)(x)(params.m))-(x)-((params.T)(params.c)(params.k))+((params.G)(params.k))+((params.Ye)(params.k)(calcs.e)(params.x)))/(-((params.c)(params.h))+((params.d)(params.k))-((params.h)(params.m)(calcs.e))+((2)(params.h)(params.m))+(params.h)))"
ind: x
color: blue
min: 0
max: 60
strokeWidth: 4
samplePoints: 100
#Money Supply - Line
- Point:
coordinates: [params.M, calcs.req]
color:
- Line:
xIntercept: params.M
color: supply
lineStyle: solid
strokeWidth: 3
- Line:
yIntercept: calcs.req
color: supply
lineStyle: dotted
strokeWidth: 2
#Canva
- Segment:
a: [0,0.079]
b: [0,0.079]
color: black
bgcolor: white
label:
text: r
position: r
fontSize: 13
- Segment:
a: [50,0]
b: [50,0]
color: black
label:
text: M/P
position: t
- Segment:
a: [0, calcs.req]
b: [0, calcs.req]
color: black
bgcolor: "'#36a854'"
label:
text: "`${calcs.req100.toFixed(1)} \\\\%`"
position: r
- Segment:
a: [params.M, 0]
b: [params.M, 0]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${params.M.toFixed(1)}`"
position: t
- Segment:
a: [params.M, 0.079]
b: [params.M, 0.079]
color: white
bgcolor: "'#fc7e0f'"
label:
text: M_{of}
position: b
- Segment:
a: [45, calcs.Md2]
b: [45, calcs.Md2]
color: white
bgcolor: "'#2177b5'"
label:
text: M_{d}
position: a
topLeftGraph:
xAxis:
min: 0
max: 20
ticks: false
show: false
yAxis:
min: 0
max: 10
ticks: 6
show: false
bottomRightGraph:
xAxis:
min: 0
max: 200
ticks: 4
yAxis:
min: 0
max: 0.079
ticks: 4
objects:
#IS Curve
- Curve:
fn: "((((params.C)-((params.c)(params.T))+(params.I)+(params.G)+((calcs.e)(params.x)(params.Ye)))/(params.d))-(((x)((1)-(params.c)-((calcs.e)(params.m))+((2)(params.m))))/(params.d)))"
ind: x
color: blue
min: 0
max: 500
strokeWidth: 4
samplePoints: 100
#LM Curve
- Curve:
fn: "((((x)(params.k))/(params.h))-((params.M)/(params.h)))"
ind: x
color: supply
min: 0
max: 200
strokeWidth: 4
samplePoints: 100
- Point:
coordinates: [calcs.Yeq, calcs.req]
color:
- Segment:
a: [calcs.Yeq, 0]
b: [calcs.Yeq, 0.079]
color: green
lineStyle: dotted
strokeWidth: 2
#BP
- Curve:
fn: "((params.rf)+((((2)(params.m)(x))-((calcs.e)(((params.x)(params.Ye))+((params.m)(x)))))/(params.L)))"
ind: x
color: green
min: 0
max: 200
strokeWidth: 4
samplePoints: 100
label:
text: "'BP'"
x: 180
#Canva
- Segment:
a: [0,0.079]
b: [0,0.079]
color: black
bgcolor: white
label:
text: r
position: r
fontSize: 13
- Segment:
a: [200, 0]
b: [200, 0]
color: black
label:
text: Y_{Eq}
position: t
- Segment:
a: [0, calcs.req]
b: [0, calcs.req]
color: black
bgcolor: "'#36a854'"
label:
text: "`${calcs.req100.toFixed(1)} \\\\%`"
position: r
- Segment:
a: [calcs.Yeq, 0]
b: [calcs.Yeq, 0]
color: black
bgcolor: "'#36a854'"
label:
text: "`(\\\\$)\\\\ ${calcs.Yeq.toFixed(2)}`"
position: t
- Segment:
a: [calcs.IS, 0.005]
b: [calcs.IS, 0.005]
color: white
bgcolor: "'#2177b5'"
label:
text: IS
position: b
- Segment:
a: [calcs.LM, 0.07]
b: [calcs.LM, 0.07]
color: white
bgcolor: "'#fc7e0f'"
label:
text: LM
position: l
- Segment:
a: [0, calcs.req]
b: [calcs.Yeq, calcs.req]
color: green
lineStyle: dotted
strokeWidth: 2
sidebar:
controls:
- title: Modelo IS-LM-BP — MOBILIDADE IMPERFEITA DE CAPITAIS E REGIME DE CÂMBIO FLEXÍVEL
sliders:
- param: M
label: M_{of}
digits: 4
- param: G
label: G
digits: 4
- param: L
label: \lambda
digits: 4
divs:
- html: '`Os resultados relevantes são: $$\\color{${colors.black}}{Y_{d} = R \\$ ${calcs.Yeq.toFixed(2)}}$$ $$\\color{${colors.black}}{e = ${calcs.e.toFixed(2)}}$$ $$\\color{${colors.black}}{X = R \\$ ${calcs.X.toFixed(2)}}$$ $$\\color{${colors.black}}{M = R \\$ ${calcs.M.toFixed(2)}}$$`'
- html: 'A identidade do produto ${Y_d}$ pela ótica da despesa em Economia Aberta é: $${Y_{d}=C+I+G+(X-M)}$$ As formas funcionais para cada componente são: $${C=C_0+c(Y_{renda}-T)}$$ $${I=I_0-d \cdot r}$$ $${G= \overline{G}}$$ Para uma condição inicial de orçamento equilibrado, temos: $${G=T}$$ Para Exportações ${(X)}$: $${X=x_1 \cdot Y_e + Y_e (e \cdot x_1 - x_1)}$$ em que ${\bf{x_1}}$ é a sensibilidade de ${\bf{X}}$ em relação à renda externa ${\bf{Y_e}}$, e $${\bf{Y_e(e \cdot x_1 - x_1)}}$$ representa a sensibilidade de ${\bf{X}}$ em relação à taxa de câmbio real ${\bf{(e)}}$.'
- html: 'Para as Importações ${(M)}$: $${M=m \cdot Y_{renda} + Y_{renda} (m - m \cdot e)}$$ em que ${\bf{m}}$ é a propensão marginal à importar e $${\bf{Y_{renda}(m - m \cdot e)}}$$ representa a sensibilidade das Importações ${(\bf{M})}$ em relação à taxa de câmbio real ${(\bf{e})}$.'
- html: 'A curva IS é: $${IS:r(Y)=\frac{C_0 + I_0 + G - cT + x_1 Y_e + Y_e (x_1 e - x_1)}{d}- \frac{Y(1 + 2m - me -c)}{d}}$$ A curva LM é: $${LM:r(Y)= \frac{k \cdot Y}{h} - \frac{M_o}{h}}$$ O equilíbrio no Balanço de Pagamentos ${(BP)}$ é: $${CC=-CF}$$ Como há mobilidade imperfeita de Capitais, então: $${CF=\lambda(r-r^*)}$$ $${\Longleftrightarrow}$$ $${X-M=-\lambda(r-r^*)}$$ $${\Longleftrightarrow}$$ $${x_1 \cdot Y_e + Y_e (e \cdot x_1 - x_1)-(m \cdot Y_{renda} + Y_{renda} (m - m \cdot e))=-\lambda(r-r^*)}$$ Resolvendo para a taxa de juros ${(r)}$ $${BP: r(Y) = r^* + \frac{Y_{renda}(2 \cdot m - m\cdot e)- e x Y_e}{\lambda}}$$ Para encontrar a Taxa de Câmbio ${(e)}$ de equilíbrio, basta igualar a equação acima com a curva LM e resolver para a taxa de câmbio ${(e)}$. Depois substituir a renda de equilíbrio encontrada na intersecção da curva IS com a LM.'
- html: '$${ e = \frac{2m\,Y_{eq} - \lambda\Bigl(\dfrac{k}{h}\,Y_{eq} - \dfrac{M_o}{h} - r^*\Bigr)}{\,x\,Y_e + m\,Y_{eq}\,}}$$ Para o nosso caso: $${e = \frac{ \left(C_0 + I_0 + G - cT + \frac{dM_o}{h}\right)\left(2m - \lambda\frac{k}{h}\right) + \lambda\left(\frac{M_o}{h} + r^*\right)\left(1 - c + 2m + \frac{dk}{h}\right)}{m\left(C_0 + I_0 + G - cT + \frac{dM_o}{h} + \lambda\left(\frac{M_o}{h} + r^*\right)\right) + xY_e\left(1 - c + \frac{k}{h}(d + \lambda)\right)}}$$'