diff --git a/djmoney/models/fields.py b/djmoney/models/fields.py
index 9b7195e..9d42575 100644
--- a/djmoney/models/fields.py
+++ b/djmoney/models/fields.py
@@ -298,8 +298,11 @@ class MoneyField(models.DecimalField):
 
         if self._has_default:
             kwargs["default"] = self.default.amount
-        if self.default_currency is not None and self.default_currency != DEFAULT_CURRENCY:
-            kwargs["default_currency"] = str(self.default_currency)
+        if self.default_currency != DEFAULT_CURRENCY:
+            if self.default_currency is not None:
+                kwargs["default_currency"] = str(self.default_currency)
+            else:
+                kwargs["default_currency"] = None
         if self.currency_choices != CURRENCY_CHOICES:
             kwargs["currency_choices"] = self.currency_choices
         if self.currency_field_name:

diff --git a/tests/test_models.py b/tests/test_models.py
index f573ed3..506fac4 100644
--- a/tests/test_models.py
+++ b/tests/test_models.py
@@ -787,3 +787,11 @@ def test_mixer_blend():
         instance = mixer.blend(ModelWithTwoMoneyFields)
         assert isinstance(instance.amount1, Money)
         assert isinstance(instance.amount2, Money)
+
+
+def test_deconstruct_includes_default_currency_as_none():
+    instance = ModelWithNullableCurrency()._meta.get_field("money")
+    __, ___, args, kwargs = instance.deconstruct()
+    new = MoneyField(*args, **kwargs)
+    assert new.default_currency == instance.default_currency
+    assert new.default_currency is None

default_currency=None keeps detecting migration changes
Based on the comment in the discussion found here: https://github.com/django-money/django-money/issues/530#issuecomment-650166087

If `MoneyField(..., default_currency=None)` is added to an already existing model, so that the field is triggering migration operations `AddField` or `AlterField`. Django keeps detecting changes on the field/model when running `python manage.py makemigrations`.
tests/test_models.py::test_deconstruct_includes_default_currency_as_none
tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithVanillaMoneyField-kwargs0-expected0] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithVanillaMoneyField-kwargs1-expected1] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[BaseModel-kwargs2-expected2] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[BaseModel-kwargs3-expected3] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[BaseModel-kwargs4-expected4] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[BaseModel-kwargs5-expected5] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[BaseModel-kwargs6-expected6] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[BaseModel-kwargs7-expected7] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithDefaultAsMoney-kwargs8-expected8] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithDefaultAsFloat-kwargs9-expected9] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithDefaultAsStringWithCurrency-kwargs10-expected10] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithDefaultAsString-kwargs11-expected11] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithDefaultAsInt-kwargs12-expected12] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[ModelWithDefaultAsDecimal-kwargs13-expected13] tests/test_models.py::TestVanillaMoneyField::test_create_defaults[CryptoModel-kwargs14-expected14] tests/test_models.py::TestVanillaMoneyField::test_old_money_not_mutated_default tests/test_models.py::TestVanillaMoneyField::test_old_money_not_mutated_f_object tests/test_models.py::TestVanillaMoneyField::test_old_money_defaults tests/test_models.py::TestVanillaMoneyField::test_revert_to_default[ModelWithVanillaMoneyField-other_value0] tests/test_models.py::TestVanillaMoneyField::test_revert_to_default[BaseModel-other_value1] tests/test_models.py::TestVanillaMoneyField::test_revert_to_default[ModelWithDefaultAsMoney-other_value2] tests/test_models.py::TestVanillaMoneyField::test_revert_to_default[ModelWithDefaultAsFloat-other_value3] tests/test_models.py::TestVanillaMoneyField::test_revert_to_default[ModelWithDefaultAsFloat-other_value4] tests/test_models.py::TestVanillaMoneyField::test_invalid_values[value0] tests/test_models.py::TestVanillaMoneyField::test_invalid_values[value1] tests/test_models.py::TestVanillaMoneyField::test_invalid_values[value2] tests/test_models.py::TestVanillaMoneyField::test_save_new_value[money-Money0] tests/test_models.py::TestVanillaMoneyField::test_save_new_value[money-Money1] tests/test_models.py::TestVanillaMoneyField::test_save_new_value[second_money-Money0] tests/test_models.py::TestVanillaMoneyField::test_save_new_value[second_money-Money1] tests/test_models.py::TestVanillaMoneyField::test_rounding tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters0-1] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters1-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters2-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters3-0] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters4-3] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters5-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters6-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters7-3] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters8-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters9-1] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money0-filters10-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters0-1] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters1-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters2-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters3-0] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters4-3] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters5-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters6-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters7-3] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters8-2] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters9-1] tests/test_models.py::TestVanillaMoneyField::test_comparison_lookup[Money1-filters10-2] tests/test_models.py::TestVanillaMoneyField::test_date_lookup tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-startswith-2-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-regex-^[134]-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-iregex-^[134]-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-istartswith-2-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-contains-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-lt-5-4] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-endswith-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-iendswith-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-gte-4-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-iexact-3-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-exact-3-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-isnull-True-0] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-range-rhs12-4] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-lte-2-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-gt-3-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-icontains-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money0-in-rhs16-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-startswith-2-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-regex-^[134]-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-iregex-^[134]-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-istartswith-2-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-contains-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-lt-5-4] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-endswith-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-iendswith-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-gte-4-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-iexact-3-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-exact-3-1] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-isnull-True-0] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-range-rhs12-4] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-lte-2-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-gt-3-3] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-icontains-5-2] tests/test_models.py::TestVanillaMoneyField::test_all_lookups[Money1-in-rhs16-1] tests/test_models.py::TestVanillaMoneyField::test_exact_match tests/test_models.py::TestVanillaMoneyField::test_issue_300_regression tests/test_models.py::TestVanillaMoneyField::test_range_search tests/test_models.py::TestVanillaMoneyField::test_filter_chaining tests/test_models.py::TestVanillaMoneyField::test_currency_querying[ModelWithVanillaMoneyField] tests/test_models.py::TestVanillaMoneyField::test_currency_querying[ModelWithChoicesMoneyField] tests/test_models.py::TestVanillaMoneyField::test_in_lookup[Money0] tests/test_models.py::TestVanillaMoneyField::test_in_lookup[Money1] tests/test_models.py::TestVanillaMoneyField::test_in_lookup_f_expression[Money0] tests/test_models.py::TestVanillaMoneyField::test_in_lookup_f_expression[Money1] tests/test_models.py::TestVanillaMoneyField::test_isnull_lookup tests/test_models.py::TestVanillaMoneyField::test_null_default tests/test_models.py::TestGetOrCreate::test_get_or_create_respects_currency[ModelWithVanillaMoneyField-money-kwargs0-PLN] tests/test_models.py::TestGetOrCreate::test_get_or_create_respects_currency[ModelWithVanillaMoneyField-money-kwargs1-EUR] tests/test_models.py::TestGetOrCreate::test_get_or_create_respects_currency[ModelWithVanillaMoneyField-money-kwargs2-EUR] tests/test_models.py::TestGetOrCreate::test_get_or_create_respects_currency[ModelWithSharedCurrency-first-kwargs3-CZK] tests/test_models.py::TestGetOrCreate::test_get_or_create_respects_defaults tests/test_models.py::TestGetOrCreate::test_defaults tests/test_models.py::TestGetOrCreate::test_currency_field_lookup tests/test_models.py::TestGetOrCreate::test_no_default_model[NullMoneyFieldModel-create_kwargs0-get_kwargs0] tests/test_models.py::TestGetOrCreate::test_no_default_model[ModelWithSharedCurrency-create_kwargs1-get_kwargs1] tests/test_models.py::TestGetOrCreate::test_shared_currency tests/test_models.py::TestNullableCurrency::test_create_nullable tests/test_models.py::TestNullableCurrency::test_create_default tests/test_models.py::TestNullableCurrency::test_fails_with_null_currency tests/test_models.py::TestNullableCurrency::test_fails_with_nullable_but_no_default tests/test_models.py::TestNullableCurrency::test_query_not_null tests/test_models.py::TestNullableCurrency::test_query_null tests/test_models.py::TestFExpressions::test_save[f_obj0-expected0] tests/test_models.py::TestFExpressions::test_save[f_obj1-expected1] tests/test_models.py::TestFExpressions::test_save[f_obj2-expected2] tests/test_models.py::TestFExpressions::test_save[f_obj3-expected3] tests/test_models.py::TestFExpressions::test_save[f_obj4-expected4] tests/test_models.py::TestFExpressions::test_save[f_obj5-expected5] tests/test_models.py::TestFExpressions::test_save[f_obj6-expected6] tests/test_models.py::TestFExpressions::test_save[f_obj7-expected7] tests/test_models.py::TestFExpressions::test_save[f_obj8-expected8] tests/test_models.py::TestFExpressions::test_save[f_obj9-expected9] tests/test_models.py::TestFExpressions::test_save[f_obj10-expected10] tests/test_models.py::TestFExpressions::test_save[f_obj11-expected11] tests/test_models.py::TestFExpressions::test_save[f_obj12-expected12] tests/test_models.py::TestFExpressions::test_save[f_obj13-expected13] tests/test_models.py::TestFExpressions::test_save[f_obj14-expected14] tests/test_models.py::TestFExpressions::test_save[f_obj15-expected15] tests/test_models.py::TestFExpressions::test_f_update[f_obj0-expected0] tests/test_models.py::TestFExpressions::test_f_update[f_obj1-expected1] tests/test_models.py::TestFExpressions::test_f_update[f_obj2-expected2] tests/test_models.py::TestFExpressions::test_f_update[f_obj3-expected3] tests/test_models.py::TestFExpressions::test_f_update[f_obj4-expected4] tests/test_models.py::TestFExpressions::test_f_update[f_obj5-expected5] tests/test_models.py::TestFExpressions::test_f_update[f_obj6-expected6] tests/test_models.py::TestFExpressions::test_f_update[f_obj7-expected7] tests/test_models.py::TestFExpressions::test_f_update[f_obj8-expected8] tests/test_models.py::TestFExpressions::test_f_update[f_obj9-expected9] tests/test_models.py::TestFExpressions::test_f_update[f_obj10-expected10] tests/test_models.py::TestFExpressions::test_f_update[f_obj11-expected11] tests/test_models.py::TestFExpressions::test_f_update[f_obj12-expected12] tests/test_models.py::TestFExpressions::test_f_update[f_obj13-expected13] tests/test_models.py::TestFExpressions::test_f_update[f_obj14-expected14] tests/test_models.py::TestFExpressions::test_f_update[f_obj15-expected15] tests/test_models.py::TestFExpressions::test_default_update tests/test_models.py::TestFExpressions::test_filtration[create_kwargs0-filter_value0-True] tests/test_models.py::TestFExpressions::test_filtration[create_kwargs1-filter_value1-True] tests/test_models.py::TestFExpressions::test_filtration[create_kwargs2-filter_value2-False] tests/test_models.py::TestFExpressions::test_filtration[create_kwargs3-filter_value3-True] tests/test_models.py::TestFExpressions::test_filtration[create_kwargs4-filter_value4-True] tests/test_models.py::TestFExpressions::test_filtration[create_kwargs5-filter_value5-False] tests/test_models.py::TestFExpressions::test_filtration[create_kwargs6-filter_value6-False] tests/test_models.py::TestFExpressions::test_update_fields_save tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj0] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj1] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj2] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj3] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj4] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj5] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj6] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj7] tests/test_models.py::TestFExpressions::test_invalid_expressions_access[f_obj8] tests/test_models.py::TestExpressions::test_bulk_update tests/test_models.py::TestExpressions::test_conditional_update tests/test_models.py::TestExpressions::test_create_func tests/test_models.py::TestExpressions::test_value_create[None-None] tests/test_models.py::TestExpressions::test_value_create[10-expected1] tests/test_models.py::TestExpressions::test_value_create[value2-expected2] tests/test_models.py::TestExpressions::test_value_create_invalid tests/test_models.py::TestExpressions::test_expressions_for_non_money_fields tests/test_models.py::test_find_models_related_to_money_models tests/test_models.py::test_allow_expression_nodes_without_money tests/test_models.py::test_base_model tests/test_models.py::TestInheritance::test_model[InheritedModel] tests/test_models.py::TestInheritance::test_model[InheritorModel] tests/test_models.py::TestInheritance::test_fields[InheritedModel] tests/test_models.py::TestInheritance::test_fields[InheritorModel] tests/test_models.py::TestManager::test_manager tests/test_models.py::TestManager::test_objects_creation tests/test_models.py::TestProxyModel::test_instances tests/test_models.py::TestProxyModel::test_patching tests/test_models.py::TestDifferentCurrencies::test_add_default tests/test_models.py::TestDifferentCurrencies::test_sub_default tests/test_models.py::TestDifferentCurrencies::test_eq tests/test_models.py::TestDifferentCurrencies::test_ne tests/test_models.py::TestDifferentCurrencies::test_ne_currency tests/test_models.py::test_manager_instance_access[ModelWithNonMoneyField] tests/test_models.py::test_manager_instance_access[InheritorModel] tests/test_models.py::test_manager_instance_access[InheritedModel] tests/test_models.py::test_manager_instance_access[ProxyModel] tests/test_models.py::test_different_hashes tests/test_models.py::test_migration_serialization tests/test_models.py::test_clear_meta_cache[ModelWithVanillaMoneyField-objects] tests/test_models.py::test_clear_meta_cache[ModelWithCustomDefaultManager-custom] tests/test_models.py::TestFieldAttributes::test_missing_attributes tests/test_models.py::TestFieldAttributes::test_default_currency tests/test_models.py::TestCustomManager::test_method tests/test_models.py::test_package_is_importable tests/test_models.py::test_hash_uniqueness tests/test_models.py::test_override_decorator tests/test_models.py::TestSharedCurrency::test_attributes tests/test_models.py::TestSharedCurrency::test_filter_by_money_match[args0-kwargs0] tests/test_models.py::TestSharedCurrency::test_filter_by_money_match[args1-kwargs1] tests/test_models.py::TestSharedCurrency::test_filter_by_money_no_match[args0-kwargs0] tests/test_models.py::TestSharedCurrency::test_filter_by_money_no_match[args1-kwargs1] tests/test_models.py::TestSharedCurrency::test_f_query[args0-kwargs0] tests/test_models.py::TestSharedCurrency::test_f_query[args1-kwargs1] tests/test_models.py::TestSharedCurrency::test_in_lookup[args0-kwargs0] tests/test_models.py::TestSharedCurrency::test_in_lookup[args1-kwargs1] tests/test_models.py::TestSharedCurrency::test_create_with_money tests/test_models.py::test_order_by tests/test_models.py::test_distinct_through_wrapper tests/test_models.py::test_mixer_blend