Расчёт ПСК аннуитетного кредита

Junior Python Fintech

Условие задания

**Данные:** Параметры кредита: сумма 350 000 руб., срок 24 месяца, ставка 14% годовых, страховка 2.5% от суммы кредита.

**Задание:**
1. Рассчитайте ежемесячный аннуитетный платёж
2. Постройте график платежей (тело + проценты) по месяцам
3. Вычислите полную стоимость кредита (ПСК): общая переплата с учётом страховки

Пример данных

Структура для ориентира — реальные значения из эталонного решения.

import pandas as pd

# Параметры кредита
principal = 350_000      # сумма кредита
annual_rate = 0.14       # 14% годовых
months = 24              # срок
insurance_rate = 0.025   # страховка 2.5%

monthly_rate = annual_rate / 12
insurance = principal * insurance_rate

# Аннуитетный платёж: A = P * r * (1+r)^n / ((1+r)^n - 1)
annuity = principal * monthly_rate * (1 + monthly_rate)**months / \
          ((1 + monthly_rate)**months - 1)

print(f"Ежемесячный платёж: {annuity:,.2f} руб.")
print(f"Страховка (разовая): {insurance:,.2f} руб.")

# График платежей
schedule = []
balance = principal

for month in range(1, months + 1):
    interest = balance * monthly_rate
    principal_part = annuity - interest
    balance -= principal_part

    schedule.append({
        'month': month,
        'payment': round(annuity, 2),
        'principal': round(principal_part, 2),
        'interest': round(interest, 2),
        'balance': round(max(balance, 0), 2),
    })

df = pd.DataFrame(schedule)

# Итоги
total_paid = df['payment'].sum()
total_interest = df['interest'].sum()
total_cost = total_interest + insurance
psk = total_cost / principal * 100

print(f"\nГрафик платежей (первые 6 мес.):")
print(df.head(6).to_string(index=False))

print(f"\n--- Итого ---")
print(f"Сумма всех платежей: {total_paid:,.2f} руб.")
print(f"Переплата (проценты): {total_interest:,.2f} руб.")
print(f"Страховка: {insurance:,.2f} руб.")
print(f"Полная стоимость кредита (ПСК): {total_cost:,.2f} руб. ({psk:.1f}%)")
print(f"\nДоля процентов в 1-м платеже: {df.iloc[0]['interest']/annuity*100:.1f}%")
print(f"Доля процентов в последнем:   {df.iloc[-1]['interest']/annuity*100:.1f}%")

Темы

python pandas финансы аннуитет ПСК

Подсказки

Все тестовые задания →

Частые вопросы

Какой уровень знаний нужен для задачи "Расчёт ПСК аннуитетного кредита"?

Это задание для уровня Junior. Подходит для начинающих аналитиков, проверяет базовые знания SQL/Python/статистики.

На каких собеседованиях встречается такая задача?

Подобные задания в категории «Python» регулярно дают на собеседованиях аналитика данных в Яндекс, Сбер, Ozon, Авито, Тинькофф, Wildberries, T-Bank, X5, ВТБ и других крупных IT-компаниях. Тематика: python, pandas, финансы, аннуитет, ПСК.

Сколько времени даётся на решение?

На реальном собеседовании на подобную задачу отводится 5-10 минут — проверяется скорость и базовая грамотность. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.

Где ещё потренироваться по теме «Python»?

На zasqlpython.ru есть 482 Python задачи с проверкой через Pyodide, конспекты Python и pandas, AI мок-собеседование с разбором ваших ответов.

← Все задания