diff --git a/holoviews/core/spaces.py b/holoviews/core/spaces.py
index <HASH>..<HASH> 100644
--- a/holoviews/core/spaces.py
+++ b/holoviews/core/spaces.py
@@ -463,13 +463,13 @@ class DynamicMap(HoloMap):
        """)
 
     def __init__(self, callback, initial_items=None, **params):
+        super(DynamicMap, self).__init__(initial_items, callback=callback, **params)
 
         # Set source to self if not already specified
-        for stream in params.get('streams',[]):
+        for stream in self.streams:
             if stream.source is None:
                 stream.source = self
 
-        super(DynamicMap, self).__init__(initial_items, callback=callback, **params)
         self.counter = 0
         if self.callback is None:
             raise Exception("A suitable callback must be "
Setting stream sources in DynamicMap after setting the parameters