Off hand, I'm not seeing anything that looks out of the ordinary. That error you typically see if you drop the "if (!data) return" check in your code. That makes me think perhaps you had an earlier iteration of the symbol without that check which is being cached for the page and causing that error. If you close and reopen your browser or do a hard refresh on the page that drops the caches, does the issue persists?
Before we touch on Exercise 5 any more, were you able to get exercise 4 to display data in your symbol? You question mentions both, though the error should be specific to exercise 5 since it's erroring out when you're trying to retrieve something in the array which shouldn't be an issue for exercise 4.
Also, I see you have the log to console line commented out. If you uncomment that out, what do you see for the structure of the 'data' variable being returned to you?