diff --git a/common/djangoapps/student/management/tests/test_transfer_students.py b/common/djangoapps/student/management/tests/test_transfer_students.py
index 62d2527d3b31490e0aabef202ca61ab89fae1c0e..6431f60095d3bf1f6f02c7f9053e0c569919d812 100644
--- a/common/djangoapps/student/management/tests/test_transfer_students.py
+++ b/common/djangoapps/student/management/tests/test_transfer_students.py
@@ -10,8 +10,9 @@ import ddt
 from shoppingcart.models import Order, CertificateItem  # pylint: disable=import-error
 from course_modes.models import CourseMode
 from student.management.commands import transfer_students
-from student.models import CourseEnrollment, UNENROLL_DONE, EVENT_NAME_ENROLLMENT_DEACTIVATED, \
+from student.models import CourseEnrollment, EVENT_NAME_ENROLLMENT_DEACTIVATED, \
     EVENT_NAME_ENROLLMENT_ACTIVATED, EVENT_NAME_ENROLLMENT_MODE_CHANGED
+from student.signals import UNENROLL_DONE
 from student.tests.factories import UserFactory
 from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase
 from xmodule.modulestore.tests.factories import CourseFactory
diff --git a/common/djangoapps/student/models.py b/common/djangoapps/student/models.py
index 5717f377bedefe6e6acfdb35fa6f15b51d3cbe13..459342a4933f7f8a78321361f1c802d0db44ccd8 100644
--- a/common/djangoapps/student/models.py
+++ b/common/djangoapps/student/models.py
@@ -31,7 +31,7 @@ from django.core.exceptions import MultipleObjectsReturned, ObjectDoesNotExist
 from django.db import IntegrityError, models
 from django.db.models import Count
 from django.db.models.signals import post_save, pre_save
-from django.dispatch import Signal, receiver
+from django.dispatch import receiver
 from django.utils import timezone
 from django.utils.functional import cached_property
 from django.utils.translation import ugettext_lazy as _
@@ -48,6 +48,7 @@ from slumber.exceptions import HttpClientError, HttpServerError
 import dogstats_wrapper as dog_stats_api
 import lms.lib.comment_client as cc
 import request_cache
+from student.signals import UNENROLL_DONE, ENROLL_STATUS_CHANGE, REFUND_ORDER, ENROLLMENT_TRACK_UPDATED
 from certificates.models import GeneratedCertificate
 from course_modes.models import CourseMode
 from courseware.models import DynamicUpgradeDeadlineConfiguration, CourseDynamicUpgradeDeadlineConfiguration
@@ -63,11 +64,6 @@ from util.milestones_helpers import is_entrance_exams_enabled
 from util.model_utils import emit_field_changed_events, get_changed_fields_dict
 from util.query import use_read_replica_if_available
 
-from .signals.signals import ENROLLMENT_TRACK_UPDATED
-
-UNENROLL_DONE = Signal(providing_args=["course_enrollment", "skip_refund"])
-ENROLL_STATUS_CHANGE = Signal(providing_args=["event", "user", "course_id", "mode", "cost", "currency"])
-REFUND_ORDER = Signal(providing_args=["course_enrollment"])
 log = logging.getLogger(__name__)
 AUDIT_LOG = logging.getLogger("audit")
 SessionStore = import_module(settings.SESSION_ENGINE).SessionStore  # pylint: disable=invalid-name
diff --git a/common/djangoapps/student/signals/__init__.py b/common/djangoapps/student/signals/__init__.py
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6a50ccf072f6fcb64f1d37e507dea59e979ddf15 100644
--- a/common/djangoapps/student/signals/__init__.py
+++ b/common/djangoapps/student/signals/__init__.py
@@ -0,0 +1,6 @@
+from student.signals.signals import (
+    ENROLLMENT_TRACK_UPDATED,
+    UNENROLL_DONE,
+    ENROLL_STATUS_CHANGE,
+    REFUND_ORDER
+)
diff --git a/common/djangoapps/student/signals/signals.py b/common/djangoapps/student/signals/signals.py
index 7f280b98b0b409ce8ac8f95bada1dae3025d769d..d1c080584d975b01ac54877af2445900d8eca874 100644
--- a/common/djangoapps/student/signals/signals.py
+++ b/common/djangoapps/student/signals/signals.py
@@ -4,3 +4,6 @@ Enrollment track related signals.
 from django.dispatch import Signal
 
 ENROLLMENT_TRACK_UPDATED = Signal(providing_args=['user', 'course_key'])
+UNENROLL_DONE = Signal(providing_args=["course_enrollment", "skip_refund"])
+ENROLL_STATUS_CHANGE = Signal(providing_args=["event", "user", "course_id", "mode", "cost", "currency"])
+REFUND_ORDER = Signal(providing_args=["course_enrollment"])
diff --git a/common/djangoapps/student/tests/test_views.py b/common/djangoapps/student/tests/test_views.py
index 4dc046093aa44816dcb73fa389cdbea944696659..d44c4d948ef9a571a23777b5669e6a11d1178855 100644
--- a/common/djangoapps/student/tests/test_views.py
+++ b/common/djangoapps/student/tests/test_views.py
@@ -20,7 +20,8 @@ from opaque_keys import InvalidKeyError
 from milestones.tests.utils import MilestonesTestCaseMixin
 from student.cookies import get_user_info_cookie_data
 from student.helpers import DISABLE_UNENROLL_CERT_STATES
-from student.models import CourseEnrollment, REFUND_ORDER, UserProfile
+from student.models import CourseEnrollment, UserProfile
+from student.signals import REFUND_ORDER
 from student.tests.factories import CourseEnrollmentFactory, UserFactory
 from util.milestones_helpers import set_prerequisite_courses, remove_prerequisite_course, get_course_milestones
 from xmodule.modulestore import ModuleStoreEnum
diff --git a/common/djangoapps/student/views.py b/common/djangoapps/student/views.py
index 47223681f21bffd1ef678fb21ffb4141f9b415b2..463e56f557b7aa9bd77dde7938ad640cfc6e1093 100644
--- a/common/djangoapps/student/views.py
+++ b/common/djangoapps/student/views.py
@@ -118,9 +118,9 @@ from student.models import (
     UserStanding,
     anonymous_id_for_user,
     create_comments_service_user,
-    unique_id_for_user,
-    REFUND_ORDER
+    unique_id_for_user
 )
+from student.signals import REFUND_ORDER
 from student.tasks import send_activation_email
 from third_party_auth import pipeline, provider
 from util.bad_request_rate_limiter import BadRequestRateLimiter
diff --git a/lms/djangoapps/badges/handlers.py b/lms/djangoapps/badges/handlers.py
index 79887d5330ea71d217532dcfaedb8ed16d3dcd7d..d53a50b762c0eae72fa70e0f4b66f8d96de169b7 100644
--- a/lms/djangoapps/badges/handlers.py
+++ b/lms/djangoapps/badges/handlers.py
@@ -5,7 +5,8 @@ from django.dispatch import receiver
 
 from lms.djangoapps.badges.events.course_meta import award_enrollment_badge
 from lms.djangoapps.badges.utils import badges_enabled
-from student.models import ENROLL_STATUS_CHANGE, EnrollStatusChange
+from student.models import EnrollStatusChange
+from student.signals import ENROLL_STATUS_CHANGE
 
 
 @receiver(ENROLL_STATUS_CHANGE)
diff --git a/lms/djangoapps/commerce/signals.py b/lms/djangoapps/commerce/signals.py
index a9c8feb62ec06625afccd28396f6ee75ecc7cbeb..58e7ffe7124b543f469727486fe2dd21112e03dd 100644
--- a/lms/djangoapps/commerce/signals.py
+++ b/lms/djangoapps/commerce/signals.py
@@ -19,7 +19,7 @@ from openedx.core.djangoapps.commerce.utils import ecommerce_api_client, is_comm
 from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers
 from openedx.core.djangoapps.theming import helpers as theming_helpers
 from request_cache.middleware import RequestCache
-from student.models import REFUND_ORDER
+from student.signals import REFUND_ORDER
 
 log = logging.getLogger(__name__)
 
diff --git a/lms/djangoapps/commerce/tests/test_signals.py b/lms/djangoapps/commerce/tests/test_signals.py
index 2954f22d2bd80bb39e7270e307cd629dfc49b4db..f74f1f2500067e8c2d9db257f9647afcdabf521d 100644
--- a/lms/djangoapps/commerce/tests/test_signals.py
+++ b/lms/djangoapps/commerce/tests/test_signals.py
@@ -23,7 +23,7 @@ from commerce.signals import create_zendesk_ticket, generate_refund_notification
 from commerce.tests import JSON
 from commerce.tests.mocks import mock_create_refund, mock_process_refund
 from course_modes.models import CourseMode
-from student.models import REFUND_ORDER
+from student.signals import REFUND_ORDER
 from student.tests.factories import CourseEnrollmentFactory, UserFactory
 
 ZENDESK_URL = 'http://zendesk.example.com/'
diff --git a/lms/djangoapps/grades/signals/handlers.py b/lms/djangoapps/grades/signals/handlers.py
index a5420049ec58f8505ff4dbfdc8aa2bb53bb7d8cf..3651bb65191ede1d0802c7d9d005cb33b85629ef 100644
--- a/lms/djangoapps/grades/signals/handlers.py
+++ b/lms/djangoapps/grades/signals/handlers.py
@@ -9,7 +9,7 @@ from django.dispatch import receiver
 from openedx.core.djangoapps.course_groups.signals.signals import COHORT_MEMBERSHIP_UPDATED
 from openedx.core.lib.grade_utils import is_score_higher_or_equal
 from student.models import user_by_anonymous_id
-from student.signals.signals import ENROLLMENT_TRACK_UPDATED
+from student.signals import ENROLLMENT_TRACK_UPDATED
 from submissions.models import score_reset, score_set
 from track.event_transaction_utils import get_event_transaction_id, get_event_transaction_type
 from util.date_utils import to_timestamp
diff --git a/lms/djangoapps/shoppingcart/models.py b/lms/djangoapps/shoppingcart/models.py
index 144df4bbed9d48b0ee9d9e56d783aea4124f04fb..82906b772ae715583d7cdb235dee02993d865b94 100644
--- a/lms/djangoapps/shoppingcart/models.py
+++ b/lms/djangoapps/shoppingcart/models.py
@@ -37,7 +37,8 @@ from eventtracking import tracker
 from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers
 from openedx.core.djangoapps.xmodule_django.models import CourseKeyField
 from shoppingcart.pdf import PDFInvoice
-from student.models import UNENROLL_DONE, CourseEnrollment, EnrollStatusChange
+from student.models import CourseEnrollment, EnrollStatusChange
+from student.signals import UNENROLL_DONE
 from util.query import use_read_replica_if_available
 from xmodule.modulestore.django import modulestore