If there are no nested objects and newlines are not guaranteed between parts, as you've said, it's as simple as splitting on }:
your_string = '''{"type":"summary","symbol":"SPY","open":"267.09","high":"267.22",
"low":"265.6", "prevClose":"266.75","close":"265.66"}
{"type":"quote","symbol":"SPY","bid":265.38,"bidsz":3,
"bidexch":"Q","biddate":"1513293904000","ask":265.42,
"asksz":45,"askexch":"P","askdate":"1513294015000"}
{"type":"summary","symbol":"SPY","open":"267.09",
"high":"267.22","low":"265.6","prevClose":"266.75","close":"265.66"}'''
substrings = [part.strip() + "}" for part in your_string.split("}") if part.strip()]
# ['{"type":"summary","symbol":"SPY","open":"267.09","high":"267.22",
#  "low":"265.6", "prevClose":"266.75","close":"265.66"}',
#  '{"type":"quote","symbol":"SPY","bid":265.38,"bidsz":3,
#  "bidexch":"Q","biddate":"1513293904000","ask":265.42,
#  "asksz":45,"askexch":"P","askdate":"1513294015000"}',
#  '{"type":"summary","symbol":"SPY","open":"267.09",
#  "high":"267.22","low":"265.6","prevClose":"266.75","close":"265.66"}']
Or you can immediately parse the parts into individual Python dictionaries:
dicts = [json.loads(part + "}") for part in your_string.split("}") if part.strip()]
# [{'open': '267.09', 'high': '267.22', 'prevClose': '266.75', 'type': 'summary',
#   'close': '265.66', 'low': '265.6', 'symbol': 'SPY'},
#  {'askdate': '1513294015000', 'bid': 265.38, 'asksz': 45, 'type': 'quote',
#   'ask': 265.42, 'bidsz': 3, 'bidexch': 'Q', 'biddate': '1513293904000',
#   'askexch': 'P', 'symbol': 'SPY'},
#  {'open': '267.09', 'high': '267.22', 'prevClose': '266.75', 'type': 'summary',
#   'close': '265.66', 'low': '265.6', 'symbol': 'SPY'}]