@jjlmoya/utils-finance 1.4.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/package.json +2 -1
  2. package/src/category/i18n/de.ts +158 -0
  3. package/src/category/i18n/id.ts +158 -0
  4. package/src/category/i18n/it.ts +158 -0
  5. package/src/category/i18n/ja.ts +158 -0
  6. package/src/category/i18n/ko.ts +158 -0
  7. package/src/category/i18n/nl.ts +158 -0
  8. package/src/category/i18n/pl.ts +158 -0
  9. package/src/category/i18n/pt.ts +158 -0
  10. package/src/category/i18n/ru.ts +158 -0
  11. package/src/category/i18n/sv.ts +158 -0
  12. package/src/category/i18n/tr.ts +158 -0
  13. package/src/category/i18n/zh.ts +158 -0
  14. package/src/category/index.ts +13 -1
  15. package/src/tests/category_validation.test.ts +73 -0
  16. package/src/tests/faq_count.test.ts +1 -1
  17. package/src/tests/i18n_coverage.test.ts +36 -0
  18. package/src/tests/locale_completeness.test.ts +3 -0
  19. package/src/tests/slug_language_code_format.test.ts +23 -0
  20. package/src/tests/slug_uniqueness.test.ts +81 -0
  21. package/src/tests/title_quality.test.ts +1 -1
  22. package/src/tool/compoundInterest/i18n/de.ts +208 -0
  23. package/src/tool/compoundInterest/i18n/id.ts +208 -0
  24. package/src/tool/compoundInterest/i18n/it.ts +208 -0
  25. package/src/tool/compoundInterest/i18n/ja.ts +207 -0
  26. package/src/tool/compoundInterest/i18n/ko.ts +207 -0
  27. package/src/tool/compoundInterest/i18n/nl.ts +208 -0
  28. package/src/tool/compoundInterest/i18n/pl.ts +208 -0
  29. package/src/tool/compoundInterest/i18n/pt.ts +208 -0
  30. package/src/tool/compoundInterest/i18n/ru.ts +208 -0
  31. package/src/tool/compoundInterest/i18n/sv.ts +208 -0
  32. package/src/tool/compoundInterest/i18n/tr.ts +208 -0
  33. package/src/tool/compoundInterest/i18n/zh.ts +202 -0
  34. package/src/tool/compoundInterest/index.ts +15 -7
  35. package/src/tool/courtFeeCalculator/i18n/de.ts +152 -0
  36. package/src/tool/courtFeeCalculator/i18n/fr.ts +1 -1
  37. package/src/tool/courtFeeCalculator/i18n/id.ts +152 -0
  38. package/src/tool/courtFeeCalculator/i18n/it.ts +152 -0
  39. package/src/tool/courtFeeCalculator/i18n/ja.ts +152 -0
  40. package/src/tool/courtFeeCalculator/i18n/ko.ts +152 -0
  41. package/src/tool/courtFeeCalculator/i18n/nl.ts +152 -0
  42. package/src/tool/courtFeeCalculator/i18n/pl.ts +152 -0
  43. package/src/tool/courtFeeCalculator/i18n/pt.ts +152 -0
  44. package/src/tool/courtFeeCalculator/i18n/ru.ts +152 -0
  45. package/src/tool/courtFeeCalculator/i18n/sv.ts +152 -0
  46. package/src/tool/courtFeeCalculator/i18n/tr.ts +152 -0
  47. package/src/tool/courtFeeCalculator/i18n/zh.ts +152 -0
  48. package/src/tool/courtFeeCalculator/index.ts +16 -8
  49. package/src/tool/debtSnowball/i18n/de.ts +160 -0
  50. package/src/tool/debtSnowball/i18n/id.ts +160 -0
  51. package/src/tool/debtSnowball/i18n/it.ts +160 -0
  52. package/src/tool/debtSnowball/i18n/ja.ts +157 -0
  53. package/src/tool/debtSnowball/i18n/ko.ts +160 -0
  54. package/src/tool/debtSnowball/i18n/nl.ts +160 -0
  55. package/src/tool/debtSnowball/i18n/pl.ts +160 -0
  56. package/src/tool/debtSnowball/i18n/pt.ts +160 -0
  57. package/src/tool/debtSnowball/i18n/ru.ts +160 -0
  58. package/src/tool/debtSnowball/i18n/sv.ts +160 -0
  59. package/src/tool/debtSnowball/i18n/tr.ts +160 -0
  60. package/src/tool/debtSnowball/i18n/zh.ts +160 -0
  61. package/src/tool/debtSnowball/index.ts +17 -9
  62. package/src/tool/fireCalculator/i18n/de.ts +261 -0
  63. package/src/tool/fireCalculator/i18n/id.ts +261 -0
  64. package/src/tool/fireCalculator/i18n/it.ts +261 -0
  65. package/src/tool/fireCalculator/i18n/ja.ts +261 -0
  66. package/src/tool/fireCalculator/i18n/ko.ts +261 -0
  67. package/src/tool/fireCalculator/i18n/nl.ts +261 -0
  68. package/src/tool/fireCalculator/i18n/pl.ts +261 -0
  69. package/src/tool/fireCalculator/i18n/pt.ts +261 -0
  70. package/src/tool/fireCalculator/i18n/ru.ts +261 -0
  71. package/src/tool/fireCalculator/i18n/sv.ts +261 -0
  72. package/src/tool/fireCalculator/i18n/tr.ts +261 -0
  73. package/src/tool/fireCalculator/i18n/zh.ts +261 -0
  74. package/src/tool/fireCalculator/index.ts +15 -7
  75. package/src/tool/ibanBicSwiftConverter/i18n/de.ts +128 -0
  76. package/src/tool/ibanBicSwiftConverter/i18n/id.ts +128 -0
  77. package/src/tool/ibanBicSwiftConverter/i18n/it.ts +128 -0
  78. package/src/tool/ibanBicSwiftConverter/i18n/ja.ts +128 -0
  79. package/src/tool/ibanBicSwiftConverter/i18n/ko.ts +128 -0
  80. package/src/tool/ibanBicSwiftConverter/i18n/nl.ts +128 -0
  81. package/src/tool/ibanBicSwiftConverter/i18n/pl.ts +128 -0
  82. package/src/tool/ibanBicSwiftConverter/i18n/pt.ts +128 -0
  83. package/src/tool/ibanBicSwiftConverter/i18n/ru.ts +128 -0
  84. package/src/tool/ibanBicSwiftConverter/i18n/sv.ts +128 -0
  85. package/src/tool/ibanBicSwiftConverter/i18n/tr.ts +128 -0
  86. package/src/tool/ibanBicSwiftConverter/i18n/zh.ts +128 -0
  87. package/src/tool/ibanBicSwiftConverter/index.ts +15 -7
  88. package/src/tool/inflation/i18n/de.ts +297 -0
  89. package/src/tool/inflation/i18n/id.ts +297 -0
  90. package/src/tool/inflation/i18n/it.ts +297 -0
  91. package/src/tool/inflation/i18n/ja.ts +297 -0
  92. package/src/tool/inflation/i18n/ko.ts +297 -0
  93. package/src/tool/inflation/i18n/nl.ts +297 -0
  94. package/src/tool/inflation/i18n/pl.ts +297 -0
  95. package/src/tool/inflation/i18n/pt.ts +297 -0
  96. package/src/tool/inflation/i18n/ru.ts +297 -0
  97. package/src/tool/inflation/i18n/sv.ts +297 -0
  98. package/src/tool/inflation/i18n/tr.ts +297 -0
  99. package/src/tool/inflation/i18n/zh.ts +297 -0
  100. package/src/tool/inflation/index.ts +17 -9
  101. package/src/tool/lateInterest/i18n/de.ts +224 -0
  102. package/src/tool/lateInterest/i18n/id.ts +224 -0
  103. package/src/tool/lateInterest/i18n/it.ts +224 -0
  104. package/src/tool/lateInterest/i18n/ja.ts +224 -0
  105. package/src/tool/lateInterest/i18n/ko.ts +224 -0
  106. package/src/tool/lateInterest/i18n/nl.ts +224 -0
  107. package/src/tool/lateInterest/i18n/pl.ts +224 -0
  108. package/src/tool/lateInterest/i18n/pt.ts +224 -0
  109. package/src/tool/lateInterest/i18n/ru.ts +224 -0
  110. package/src/tool/lateInterest/i18n/sv.ts +224 -0
  111. package/src/tool/lateInterest/i18n/tr.ts +224 -0
  112. package/src/tool/lateInterest/i18n/zh.ts +224 -0
  113. package/src/tool/lateInterest/index.ts +17 -9
  114. package/src/tool/legalInterestRate/i18n/de.ts +143 -0
  115. package/src/tool/legalInterestRate/i18n/id.ts +143 -0
  116. package/src/tool/legalInterestRate/i18n/it.ts +143 -0
  117. package/src/tool/legalInterestRate/i18n/ja.ts +143 -0
  118. package/src/tool/legalInterestRate/i18n/ko.ts +143 -0
  119. package/src/tool/legalInterestRate/i18n/nl.ts +143 -0
  120. package/src/tool/legalInterestRate/i18n/pl.ts +143 -0
  121. package/src/tool/legalInterestRate/i18n/pt.ts +143 -0
  122. package/src/tool/legalInterestRate/i18n/ru.ts +143 -0
  123. package/src/tool/legalInterestRate/i18n/sv.ts +143 -0
  124. package/src/tool/legalInterestRate/i18n/tr.ts +143 -0
  125. package/src/tool/legalInterestRate/i18n/zh.ts +143 -0
  126. package/src/tool/legalInterestRate/index.ts +17 -9
  127. package/src/tool/lotteryOptimizer/i18n/de.ts +177 -0
  128. package/src/tool/lotteryOptimizer/i18n/id.ts +177 -0
  129. package/src/tool/lotteryOptimizer/i18n/it.ts +177 -0
  130. package/src/tool/lotteryOptimizer/i18n/ja.ts +177 -0
  131. package/src/tool/lotteryOptimizer/i18n/ko.ts +177 -0
  132. package/src/tool/lotteryOptimizer/i18n/nl.ts +177 -0
  133. package/src/tool/lotteryOptimizer/i18n/pl.ts +177 -0
  134. package/src/tool/lotteryOptimizer/i18n/pt.ts +177 -0
  135. package/src/tool/lotteryOptimizer/i18n/ru.ts +177 -0
  136. package/src/tool/lotteryOptimizer/i18n/sv.ts +177 -0
  137. package/src/tool/lotteryOptimizer/i18n/tr.ts +177 -0
  138. package/src/tool/lotteryOptimizer/i18n/zh.ts +177 -0
  139. package/src/tool/lotteryOptimizer/index.ts +17 -9
  140. package/src/tool/mortgage/i18n/de.ts +223 -0
  141. package/src/tool/mortgage/i18n/id.ts +219 -0
  142. package/src/tool/mortgage/i18n/it.ts +223 -0
  143. package/src/tool/mortgage/i18n/ja.ts +219 -0
  144. package/src/tool/mortgage/i18n/ko.ts +219 -0
  145. package/src/tool/mortgage/i18n/nl.ts +219 -0
  146. package/src/tool/mortgage/i18n/pl.ts +219 -0
  147. package/src/tool/mortgage/i18n/pt.ts +219 -0
  148. package/src/tool/mortgage/i18n/ru.ts +219 -0
  149. package/src/tool/mortgage/i18n/sv.ts +219 -0
  150. package/src/tool/mortgage/i18n/tr.ts +219 -0
  151. package/src/tool/mortgage/i18n/zh.ts +219 -0
  152. package/src/tool/mortgage/index.ts +15 -7
  153. package/src/tool/percentageCalculator/i18n/de.ts +229 -0
  154. package/src/tool/percentageCalculator/i18n/id.ts +229 -0
  155. package/src/tool/percentageCalculator/i18n/it.ts +229 -0
  156. package/src/tool/percentageCalculator/i18n/ja.ts +229 -0
  157. package/src/tool/percentageCalculator/i18n/ko.ts +229 -0
  158. package/src/tool/percentageCalculator/i18n/nl.ts +229 -0
  159. package/src/tool/percentageCalculator/i18n/pl.ts +229 -0
  160. package/src/tool/percentageCalculator/i18n/pt.ts +229 -0
  161. package/src/tool/percentageCalculator/i18n/ru.ts +229 -0
  162. package/src/tool/percentageCalculator/i18n/sv.ts +229 -0
  163. package/src/tool/percentageCalculator/i18n/tr.ts +229 -0
  164. package/src/tool/percentageCalculator/i18n/zh.ts +229 -0
  165. package/src/tool/percentageCalculator/index.ts +15 -7
  166. package/src/tool/rentIncreaseCalculator/i18n/de.ts +136 -0
  167. package/src/tool/rentIncreaseCalculator/i18n/id.ts +136 -0
  168. package/src/tool/rentIncreaseCalculator/i18n/it.ts +136 -0
  169. package/src/tool/rentIncreaseCalculator/i18n/ja.ts +136 -0
  170. package/src/tool/rentIncreaseCalculator/i18n/ko.ts +136 -0
  171. package/src/tool/rentIncreaseCalculator/i18n/nl.ts +136 -0
  172. package/src/tool/rentIncreaseCalculator/i18n/pl.ts +136 -0
  173. package/src/tool/rentIncreaseCalculator/i18n/pt.ts +136 -0
  174. package/src/tool/rentIncreaseCalculator/i18n/ru.ts +136 -0
  175. package/src/tool/rentIncreaseCalculator/i18n/sv.ts +136 -0
  176. package/src/tool/rentIncreaseCalculator/i18n/tr.ts +136 -0
  177. package/src/tool/rentIncreaseCalculator/i18n/zh.ts +136 -0
  178. package/src/tool/rentIncreaseCalculator/index.ts +17 -9
  179. package/src/types.ts +1 -1
@@ -0,0 +1,261 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { FIRECalculatorUI } from '../ui';
4
+
5
+ const slug = 'four-percent-rule-fire-calculator';
6
+ const title = 'FIRE 계산기: 경제적 자유를 위한 4% 법칙';
7
+ const description = '4% 법칙을 사용하여 경제적 자립을 위한 매직 넘버를 계산해 보세요. 조기 은퇴를 계획하고 경제적 자유를 향한 여정을 시각화합니다.';
8
+
9
+ const faqData = [
10
+ {
11
+ question: '4% 법칙이란 무엇인가요?',
12
+ answer: '4% 법칙은 트리니티 연구에 기반한 인출 전략으로, 은퇴 첫해에 자산의 4%를 인출하고 이후 해마다 인플레이션을 반영해 조정하면 30년 동안 자산이 고갈되지 않는다는 이론입니다.',
13
+ },
14
+ {
15
+ question: 'FIRE란 무엇인가요?',
16
+ answer: 'FIRE는 Financial Independence, Retire Early(경제적 자립, 조기 은퇴)의 약자입니다. 공격적인 저축과 스마트한 투자를 결합하여 경제적 자유를 조기에 달성하려는 운동입니다.',
17
+ },
18
+ {
19
+ question: '나의 매직 넘버는 얼마인가요?',
20
+ answer: '매직 넘버는 일하지 않고 투자 수익만으로 생활하기 위해 모아야 할 총 자산액입니다. 연간 지출을 안전 인출률(보통 4%)로 나누어 계산합니다.',
21
+ },
22
+ {
23
+ question: 'Lean, Barista, Fat FIRE의 차이점은 무엇인가요?',
24
+ answer: 'Lean FIRE는 최소한의 지출로 생활하는 것(현재 지출의 70%), Barista FIRE는 투자 수익으로 절반을 충당하며 파트타임으로 일하는 것(지출의 50%), Fat FIRE는 여유로운 생활을 즐기는 것(지출의 150%)을 의미합니다.',
25
+ },
26
+ {
27
+ question: '4% 법칙은 현실적인가요?',
28
+ answer: '역사적으로 주식 50%, 채권 50% 포트폴리오에서 30년간 성공 확률이 95%에 달합니다. 다만, 수익률 순서 리스크는 고려되지 않았으며 주로 미국 시장 데이터에 기반하고 있습니다.',
29
+ },
30
+ ];
31
+
32
+ const howToData = [
33
+ {
34
+ name: '월간 지출 계산하기',
35
+ text: '주거비, 식비, 공과금, 오락비 등 매달 실제로 사용하는 금액을 정확히 분석합니다.',
36
+ },
37
+ {
38
+ name: '안전 인출률 선택하기',
39
+ text: '4% 법칙이 표준이지만, 위험 감수 성향에 따라 2.5%(보수적)에서 6%(공격적) 사이로 조정할 수 있습니다.',
40
+ },
41
+ {
42
+ name: '현재 자산 입력하기',
43
+ text: '투자금, 예적금, 수동적 소득을 창출하는 자산의 총합을 입력합니다.',
44
+ },
45
+ {
46
+ name: '진척도 시각화하기',
47
+ text: '자산 성장 차트와 자유를 향한 이정표(Lean, Barista, Fat FIRE)를 통해 언제 목표에 도달할지 파악합니다.',
48
+ },
49
+ ];
50
+
51
+ const bibliographyData = [
52
+ {
53
+ name: 'The Trinity Study: Portfolio Survivability',
54
+ url: 'https://en.wikipedia.org/wiki/Trinity_study',
55
+ },
56
+ {
57
+ name: 'Early Retirement Forum - 4% Rule Discussion',
58
+ url: 'https://www.bogleheads.org/forum/',
59
+ },
60
+ {
61
+ name: 'Shiller CAPE Index - Market Valuations',
62
+ url: 'https://www.multpl.com/shiller-pe',
63
+ },
64
+ {
65
+ name: 'Bogleheads - 투자 가이드',
66
+ url: 'https://bogleheads.es/',
67
+ },
68
+ ];
69
+
70
+ const faqSchema: WithContext<FAQPage> = {
71
+ '@context': 'https://schema.org',
72
+ '@type': 'FAQPage',
73
+ mainEntity: faqData.map((item) => ({
74
+ '@type': 'Question',
75
+ name: item.question,
76
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
77
+ })),
78
+ };
79
+
80
+ const howToSchema: WithContext<HowTo> = {
81
+ '@context': 'https://schema.org',
82
+ '@type': 'HowTo',
83
+ name: title,
84
+ description,
85
+ step: howToData.map((step, i) => ({
86
+ '@type': 'HowToStep',
87
+ position: i + 1,
88
+ name: step.name,
89
+ text: step.text,
90
+ })),
91
+ };
92
+
93
+ const appSchema: WithContext<SoftwareApplication> = {
94
+ '@context': 'https://schema.org',
95
+ '@type': 'SoftwareApplication',
96
+ name: title,
97
+ description,
98
+ applicationCategory: 'FinanceApplication',
99
+ operatingSystem: 'All',
100
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'KRW' },
101
+ inLanguage: 'ko',
102
+ };
103
+
104
+ export const content: ToolLocaleContent<FIRECalculatorUI> = {
105
+ slug,
106
+ title,
107
+ description,
108
+ faqTitle: 'FIRE에 대해 자주 묻는 질문',
109
+ faq: faqData,
110
+ bibliographyTitle: '출처 및 참고 자료',
111
+ bibliography: bibliographyData,
112
+ howTo: howToData,
113
+ schemas: [faqSchema, howToSchema, appSchema],
114
+ seo: [
115
+ {
116
+ type: 'title',
117
+ text: '4% 법칙: 조기 은퇴의 성배',
118
+ level: 2,
119
+ },
120
+ {
121
+ type: 'paragraph',
122
+ html: '투자 수익만으로 영원히 살기 위해 필요한 자산을 계산하는 방법을 알아보세요. <strong>4% 법칙</strong>은 1998년 세 명의 재무학 교수가 수행한 "트리니티 연구"에서 시작되었습니다. 1926년 이후의 역사적 데이터를 분석하여 30년 동안 자산을 유지하면서 매년 인출 가능한 비율을 산출했습니다.',
123
+ },
124
+ {
125
+ type: 'stats',
126
+ columns: 4,
127
+ items: [
128
+ { value: '95%', label: '역사적 성공률' },
129
+ { value: '50/50', label: '주식/채권 비중' },
130
+ { value: '30년', label: '운용 기간' },
131
+ { value: '4%', label: '안전 인출률' },
132
+ ],
133
+ },
134
+ {
135
+ type: 'title',
136
+ text: 'FIRE 운동이란 무엇인가요?',
137
+ level: 3,
138
+ },
139
+ {
140
+ type: 'list',
141
+ items: [
142
+ 'FIRE는 Financial Independence, Retire Early(경제적 자립, 조기 은퇴)의 머리글자입니다.',
143
+ '돈에 얽매이지 않고 자신의 시간을 어떻게 쓸지 선택할 수 있는 자유를 추구합니다.',
144
+ '저축의 최적화와 현명한 투자에 기반합니다.',
145
+ '지출을 충당하기에 충분한 현금 흐름을 자산에서 창출하는 것이 목표입니다.',
146
+ ],
147
+ },
148
+ {
149
+ type: 'title',
150
+ text: '경제적 자유의 유형',
151
+ level: 3,
152
+ },
153
+ {
154
+ type: 'comparative',
155
+ columns: 3,
156
+ items: [
157
+ {
158
+ title: 'Lean FIRE',
159
+ description: '미니멀한 생활 스타일. 생존에 필요한 기본 지출만 충당합니다.',
160
+ points: ['극한의 절약', '매우 낮은 지출', '검소한 자유'],
161
+ },
162
+ {
163
+ title: 'Barista FIRE',
164
+ description: '투자 수익으로 지출의 절반을 충당하고 나머지는 파트타임으로 버는 하이브리드형.',
165
+ points: ['즐거움을 위한 일', '사회보장 유지', '낮은 스트레스'],
166
+ },
167
+ {
168
+ title: 'Fat FIRE',
169
+ description: '여유로운 예산으로 여행과 사치도 가능한 은퇴 생활.',
170
+ points: ['고액 자산', '제한 없음', '가족 유산'],
171
+ },
172
+ ],
173
+ },
174
+ {
175
+ type: 'title',
176
+ text: 'FIRE 계산기 사용법',
177
+ level: 3,
178
+ },
179
+ {
180
+ type: 'list',
181
+ items: [
182
+ '<strong>지출 추적:</strong> 지난 12개월간의 실제 지출을 분석합니다.',
183
+ '<strong>SWR 설정:</strong> 리스크 성향에 따라 안전 인출률을 선택합니다.',
184
+ '<strong>현재 자산:</strong> 현재 투자 자산의 가치를 입력합니다.',
185
+ '<strong>저축 능력:</strong> 목표 달성까지 남은 시간을 예측합니다.',
186
+ '<strong>시각화:</strong> 자산 성장 차트를 분석합니다.',
187
+ ],
188
+ },
189
+ {
190
+ type: 'title',
191
+ text: '4% 법칙 분석',
192
+ level: 3,
193
+ },
194
+ {
195
+ type: 'comparative',
196
+ columns: 2,
197
+ items: [
198
+ {
199
+ title: '장점',
200
+ description: '4% 법칙이 작동하는 이유',
201
+ points: [
202
+ '빠른 계획 수립을 위한 수학적 간결함.',
203
+ '거의 한 세기에 걸친 역사적 데이터에 기반함.',
204
+ '모든 지출 수준에 적용 가능.',
205
+ ],
206
+ },
207
+ {
208
+ title: '한계',
209
+ description: '4% 법칙이 고려하지 않는 것',
210
+ points: [
211
+ '수익률 순서 리스크(은퇴 직후 하락)를 고려하지 않음.',
212
+ '주로 미국 시장 데이터에 기반함.',
213
+ '지역 세제의 급격한 변화는 무시됨.',
214
+ ],
215
+ },
216
+ ],
217
+ },
218
+ {
219
+ type: 'title',
220
+ text: '핵심 요소: 인플레이션',
221
+ level: 3,
222
+ },
223
+ {
224
+ type: 'paragraph',
225
+ html: '현재의 100만원이 미래에도 같은 가치가 아님을 기억하세요. 예측을 현실적으로 유지하려면 인플레이션을 제외한 실질 수익률을 사용하는 것이 필수적입니다. 4% 법칙은 매년 은퇴 자금 인출액을 인플레이션에 맞춰 조정하는 것을 전제로 합니다.',
226
+ },
227
+ ],
228
+ ui: {
229
+ labelTitle: 'FIRE 계산기: 4% 법칙',
230
+ labelDescription: '4% 법칙을 사용하여 경제적 자립을 위한 매직 넘버를 계산하고 자유를 향한 이정표를 시각화하세요.',
231
+ labelMonthlyExpenses: '월간 지출',
232
+ labelSWR: '인출률 (SWR)',
233
+ labelCurrentWorth: '현재 순자산',
234
+ labelMonthlySavings: '월 저축액',
235
+ labelAnnualReturn: '예상 수익률 (세후)',
236
+ labelFreedomMilestones: '자유를 향한 이정표',
237
+ labelLeanFIRE: 'Lean FIRE (생존비 70%)',
238
+ labelBaristaFIRE: 'Barista FIRE (소득 50%)',
239
+ labelFatFIRE: 'Fat FIRE (여유 생활 150%)',
240
+ labelMagicNumber: '자유를 얻기 위한 매직 넘버',
241
+ labelMagicNumberDesc: '투자 수익으로 생활하기 위해 필요한 자본',
242
+ labelTimeRemaining: '경제적 자유까지 남은 시간',
243
+ labelTimeRemainingFormat: '앞으로 {years}년 {months}개월 남았습니다',
244
+ labelAlreadyFI: '축하합니다! 이미 경제적 자유를 달성하셨습니다.',
245
+ labelUnachievable: '현재 저축 속도로는 목표 달성이 어렵습니다',
246
+ labelHiddenCostsChecklist: '숨은 지출 체크리스트',
247
+ labelHealth: '의료 보험 (+200,000원)',
248
+ labelTaxes: '세금 (+150,000원)',
249
+ labelHome: '주택 유지비 (+100,000원)',
250
+ labelTravel: '여행 및 레저 (+300,000원)',
251
+ labelEmergency: '비상금 (+100,000원)',
252
+ labelSubscriptions: '구독 서비스 (+50,000원)',
253
+ labelAdded: '추가됨:',
254
+ labelSavePlan: '플랜 저장',
255
+ labelSWRTooltip: 'Safe Withdrawal Rate: 자산 고갈 위험 없이 매년 인출할 수 있는 자산 비율.',
256
+ labelReturnTooltip: '연간 시장 수익률 (인플레이션 반영 후). 역사적 표준은 7%입니다.',
257
+ currencySymbol: '₩',
258
+ currencyCode: 'KRW',
259
+ currencyLocale: 'ko-KR',
260
+ },
261
+ };
@@ -0,0 +1,261 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { FIRECalculatorUI } from '../ui';
4
+
5
+ const slug = 'fire-calculator-4-procent-regel';
6
+ const title = 'FIRE Calculator: De 4% regel voor jouw financiële vrijheid';
7
+ const description = 'Bereken je magische getal voor financiële onafhankelijkheid met de 4%-regel. Plan je vervroegde pensioen en visualiseer je weg naar economische vrijheid.';
8
+
9
+ const faqData = [
10
+ {
11
+ question: 'Wat is de 4%-regel?',
12
+ answer: 'De 4%-regel is een opnamestrategie gebaseerd op de Trinity-studie die aangeeft dat je in het eerste jaar van je pensioen 4% van je vermogen kunt opnemen, gecorrigeerd voor inflatie in de jaren daarna, zonder dat je fondsen binnen 30 jaar opraken.',
13
+ },
14
+ {
15
+ question: 'Wat is FIRE?',
16
+ answer: 'FIRE staat voor Financial Independence, Retire Early (Financiële Onafhankelijkheid, Vroeg Pensioen). Het is een beweging die streeft naar economische vrijheid door een agressieve combinatie van sparen en slim beleggen.',
17
+ },
18
+ {
19
+ question: 'Wat is mijn magische getal?',
20
+ answer: 'Je magische getal is het totale vermogen dat je moet opbouwen om van het rendement te kunnen leven zonder te werken. Dit wordt berekend door je jaarlijkse uitgaven te delen door het veilige opnamepercentage (meestal 4%).',
21
+ },
22
+ {
23
+ question: 'Wat is het verschil tussen Lean, Barista en Fat FIRE?',
24
+ answer: 'Lean FIRE is leven met minimale uitgaven (70% van de huidige uitgaven), Barista FIRE is parttime werken terwijl het rendement de rest dekt (50% van de uitgaven), en Fat FIRE is een luxe levensstijl hebben (150% van de uitgaven).',
25
+ },
26
+ {
27
+ question: 'Is de 4%-regel realistisch?',
28
+ answer: 'De 4%-regel heeft een historische slagingskans van 95% in een portfolio van 50/50 aandelen-obligaties gedurende 30 jaar. Het houdt echter geen rekening met het volgorderisico van rendementen en is voornamelijk gebaseerd op gegevens van de Amerikaanse markt.',
29
+ },
30
+ ];
31
+
32
+ const howToData = [
33
+ {
34
+ name: 'Bereken je maandelijkse uitgaven',
35
+ text: 'Analyseer hoeveel je daadwerkelijk elke maand uitgeeft, inclusief huisvesting, voeding, diensten en entertainment.',
36
+ },
37
+ {
38
+ name: 'Kies jouw veilige opnamepercentage',
39
+ text: 'De 4%-regel is de standaard, maar je kunt aanpassen tussen 2,5% (conservatiever) en 6% (agressiever) afhankelijk van je risicotolerantie.',
40
+ },
41
+ {
42
+ name: 'Voer je huidige vermogen in',
43
+ text: 'Tel het totaal van je beleggingen, spaargeld en activa die passief inkomen genereren op.',
44
+ },
45
+ {
46
+ name: 'Visualiseer je voortgang',
47
+ text: 'Bekijk de groeigrafiek en de mijlpalen van vrijheid (Lean, Barista, Fat FIRE) om te begrijpen wanneer je je doel zult bereiken.',
48
+ },
49
+ ];
50
+
51
+ const bibliographyData = [
52
+ {
53
+ name: 'The Trinity Study: Portfolio Survivability',
54
+ url: 'https://en.wikipedia.org/wiki/Trinity_study',
55
+ },
56
+ {
57
+ name: 'Early Retirement Forum - 4% Rule Discussion',
58
+ url: 'https://www.bogleheads.org/forum/',
59
+ },
60
+ {
61
+ name: 'Shiller CAPE Index - Market Valuations',
62
+ url: 'https://www.multpl.com/shiller-pe',
63
+ },
64
+ {
65
+ name: 'Bogleheads - Beleggingsgids',
66
+ url: 'https://bogleheads.es/',
67
+ },
68
+ ];
69
+
70
+ const faqSchema: WithContext<FAQPage> = {
71
+ '@context': 'https://schema.org',
72
+ '@type': 'FAQPage',
73
+ mainEntity: faqData.map((item) => ({
74
+ '@type': 'Question',
75
+ name: item.question,
76
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
77
+ })),
78
+ };
79
+
80
+ const howToSchema: WithContext<HowTo> = {
81
+ '@context': 'https://schema.org',
82
+ '@type': 'HowTo',
83
+ name: title,
84
+ description,
85
+ step: howToData.map((step, i) => ({
86
+ '@type': 'HowToStep',
87
+ position: i + 1,
88
+ name: step.name,
89
+ text: step.text,
90
+ })),
91
+ };
92
+
93
+ const appSchema: WithContext<SoftwareApplication> = {
94
+ '@context': 'https://schema.org',
95
+ '@type': 'SoftwareApplication',
96
+ name: title,
97
+ description,
98
+ applicationCategory: 'FinanceApplication',
99
+ operatingSystem: 'All',
100
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
101
+ inLanguage: 'nl',
102
+ };
103
+
104
+ export const content: ToolLocaleContent<FIRECalculatorUI> = {
105
+ slug,
106
+ title,
107
+ description,
108
+ faqTitle: 'Veelgestelde vragen over FIRE',
109
+ faq: faqData,
110
+ bibliographyTitle: 'Bronnen en referenties',
111
+ bibliography: bibliographyData,
112
+ howTo: howToData,
113
+ schemas: [faqSchema, howToSchema, appSchema],
114
+ seo: [
115
+ {
116
+ type: 'title',
117
+ text: 'De 4%-regel: De heilige graal van vervroegd pensioen',
118
+ level: 2,
119
+ },
120
+ {
121
+ type: 'paragraph',
122
+ html: 'Ontdek hoe je het vermogen berekent dat je nodig hebt om voor altijd van het rendement te leven. De <strong>4%-regel</strong> is voortgekomen uit de Trinity-studie, uitgevoerd in 1998 door drie professoren in de financiën. Ze analyseerden historische gegevens sinds 1926 om te bepalen welk percentage jaarlijks kon worden opgenomen zonder de portefeuille in 30 jaar uit te putten.',
123
+ },
124
+ {
125
+ type: 'stats',
126
+ columns: 4,
127
+ items: [
128
+ { value: '95%', label: 'Historisch succes' },
129
+ { value: '50/50', label: 'Mix Aandelen/Obligaties' },
130
+ { value: '30', label: 'Jaar Horizon' },
131
+ { value: '4%', label: 'Veilige opname' },
132
+ ],
133
+ },
134
+ {
135
+ type: 'title',
136
+ text: 'Wat is de FIRE-beweging?',
137
+ level: 3,
138
+ },
139
+ {
140
+ type: 'list',
141
+ items: [
142
+ 'FIRE is het acroniem voor Financial Independence, Retire Early (Financiële Onafhankelijkheid, Vroeg Pensioen).',
143
+ 'Streeft naar de vrijheid om te kiezen wat je met je tijd doet zonder dat geld een beperkende factor is.',
144
+ 'Gebaseerd op de optimalisatie van sparen en slim beleggen.',
145
+ 'Het doel is dat je activa voldoende cashflow genereren om je uitgaven te dekken.',
146
+ ],
147
+ },
148
+ {
149
+ type: 'title',
150
+ text: 'Typen Financiële Vrijheid',
151
+ level: 3,
152
+ },
153
+ {
154
+ type: 'comparative',
155
+ columns: 3,
156
+ items: [
157
+ {
158
+ title: 'Lean FIRE',
159
+ description: 'Minimalistische levensstijl. Dekt alleen de basisuitgaven om te overleven.',
160
+ points: ['Extreem sparen', 'Zeer lage uitgaven', 'Sobere vrijheid'],
161
+ },
162
+ {
163
+ title: 'Barista FIRE',
164
+ description: 'Hybride situatie waarbij je beleggingen de helft van je uitgaven dekken.',
165
+ points: ['Werken voor je plezier', 'Sociale zekerheid gedekt', 'Minder stress'],
166
+ },
167
+ {
168
+ title: 'Fat FIRE',
169
+ description: 'Pensioen met een ruim budget dat luxe en reizen toelaat.',
170
+ points: ['Hoog vermogen', 'Geen beperkingen', 'Familie-erfenis'],
171
+ },
172
+ ],
173
+ },
174
+ {
175
+ type: 'title',
176
+ text: 'Hoe gebruik je onze FIRE calculator?',
177
+ level: 3,
178
+ },
179
+ {
180
+ type: 'list',
181
+ items: [
182
+ '<strong>Uitgaven bijhouden:</strong> Analyseer je werkelijke uitgaven van de afgelopen 12 maanden.',
183
+ '<strong>SWR-definitie:</strong> Kies je veilige opnamepercentage op basis van je risico.',
184
+ '<strong>Huidig vermogen:</strong> Voer de waarde van je huidige beleggingen in.',
185
+ '<strong>Spaarcapaciteit:</strong> Projecteer hoeveel tijd je nog hebt tot het doel.',
186
+ '<strong>Visuele weergave:</strong> Analyseer de groeigrafiek van je vermogen.',
187
+ ],
188
+ },
189
+ {
190
+ type: 'title',
191
+ text: 'Analyse van de 4%-regel',
192
+ level: 3,
193
+ },
194
+ {
195
+ type: 'comparative',
196
+ columns: 2,
197
+ items: [
198
+ {
199
+ title: 'Voordelen',
200
+ description: 'Waarom de 4%-regel werkt',
201
+ points: [
202
+ 'Wiskundige eenvoud voor snelle planning.',
203
+ 'Gebaseerd op historische gegevens van bijna een eeuw.',
204
+ 'Aanpasbaar aan elk uitgavenniveau.',
205
+ ],
206
+ },
207
+ {
208
+ title: 'Beperkingen',
209
+ description: 'Wat de 4%-regel niet dekt',
210
+ points: [
211
+ 'Houdt geen rekening met het volgorderisico van rendementen.',
212
+ 'Voornamelijk gebaseerd op de Amerikaanse markt.',
213
+ 'Negeert drastische veranderingen in lokale fiscaliteit.',
214
+ ],
215
+ },
216
+ ],
217
+ },
218
+ {
219
+ type: 'title',
220
+ text: 'Kritieke factor: De inflatie',
221
+ level: 3,
222
+ },
223
+ {
224
+ type: 'paragraph',
225
+ html: 'Onthoud dat € 1.000 vandaag in de toekomst niet hetzelfde zal kopen. Het is cruciaal om reëel rendement (gecorrigeerd voor inflatie) te gebruiken zodat je projecties de huidige koopkracht behouden. De 4%-regel gaat ervan uit dat je je opnames jaarlijks aanpast aan de inflatie.',
226
+ },
227
+ ],
228
+ ui: {
229
+ labelTitle: 'FIRE Calculator: 4%-regel',
230
+ labelDescription: 'Bereken je magische getal voor financiële onafhankelijkheid met de 4%-regel en visualiseer je mijlpalen naar vrijheid.',
231
+ labelMonthlyExpenses: 'Maandelijkse uitgaven',
232
+ labelSWR: 'Opnamepercentage (SWR)',
233
+ labelCurrentWorth: 'Huidig vermogen',
234
+ labelMonthlySavings: 'Maandelijkse spaarcapaciteit',
235
+ labelAnnualReturn: 'Geschat rendement (netto)',
236
+ labelFreedomMilestones: 'Mijlpalen van vrijheid',
237
+ labelLeanFIRE: 'Lean FIRE (70% overleving)',
238
+ labelBaristaFIRE: 'Barista FIRE (50% inkomen)',
239
+ labelFatFIRE: 'Fat FIRE (150% luxe)',
240
+ labelMagicNumber: 'Jouw magische getal om vrij te zijn',
241
+ labelMagicNumberDesc: 'Benodigd kapitaal om van het rendement te leven',
242
+ labelTimeRemaining: 'Tijd tot financiële vrijheid',
243
+ labelTimeRemainingFormat: 'Je hebt nog {years} jaar en {months} maanden te gaan',
244
+ labelAlreadyFI: 'Je hebt al financiële vrijheid bereikt!',
245
+ labelUnachievable: 'Doel onbereikbaar met dit spaargeld',
246
+ labelHiddenCostsChecklist: 'Checklist voor verborgen kosten',
247
+ labelHealth: 'Zorgverzekering (+€ 200)',
248
+ labelTaxes: 'Belastingen (+€ 150)',
249
+ labelHome: 'Woningonderhoud (+€ 100)',
250
+ labelTravel: 'Reizen en vrije tijd (+€ 300)',
251
+ labelEmergency: 'Noodfonds (+€ 100)',
252
+ labelSubscriptions: 'Abonnementen (+€ 50)',
253
+ labelAdded: 'Toegevoegd:',
254
+ labelSavePlan: 'Plan opslaan',
255
+ labelSWRTooltip: 'Safe Withdrawal Rate: Percentage van je spaargeld dat je elk jaar kunt opnemen zonder dat het geld opraakt.',
256
+ labelReturnTooltip: 'Jaarlijks marktrendement (al gecorrigeerd voor inflatie). De historische standaard is 7%.',
257
+ currencySymbol: '€',
258
+ currencyCode: 'EUR',
259
+ currencyLocale: 'nl-NL',
260
+ },
261
+ };