class_docstr: The TensorTrade observer that is compatible with the other `default`
  components.
  
  Parameters
  ----------
  portfolio : `Portfolio`
      The portfolio to be used to create the internal data feed mechanism.
  feed : `DataFeed`
      The feed to be used to collect observations to the observation window.
  renderer_feed : `DataFeed`
      The feed to be used for giving information to the renderer.
  window_size : int
      The size of the observation window.
  min_periods : int
      The amount of steps needed to warmup the `feed`.
  **kwargs : keyword arguments
      Additional keyword arguments for observer creation.
  
  Attributes
  ----------
  feed : `DataFeed`
      The master feed in charge of streaming the internal, external, and
      renderer data feeds.
  window_size : int
      The size of the observation window.
  min_periods : int
      The amount of steps needed to warmup the `feed`.
  history : `ObservationHistory`
      The observation history.
  renderer_history : `List[dict]`
      The history of the renderer data feed.
class_docstr_tok: ["The","TensorTrade","observer","that","is","compatible","with","the","other","`","default","`","components",".","Parameters","--","--","--","--","--","portfolio",":","`","Portfolio","`","The","portfolio","to","be","used","to","create","the","internal","data","feed","mechanism",".","feed",":","`","DataFeed","`","The","feed","to","be","used","to","collect","observations","to","the","observation","window",".","renderer_feed",":","`","DataFeed","`","The","feed","to","be","used","for","giving","information","to","the","renderer",".","window_size",":","int","The","size","of","the","observation","window",".","min_periods",":","int","The","amount","of","steps","needed","to","warmup","the","`","feed","`",".","*","*","kwargs",":","keyword","arguments","Additional","keyword","arguments","for","observer","creation",".","Attributes","--","--","--","--","--","feed",":","`","DataFeed","`","The","master","feed","in","charge","of","streaming","the","internal",",","external",",","and","renderer","data","feeds",".","window_size",":","int","The","size","of","the","observation","window",".","min_periods",":","int","The","amount","of","steps","needed","to","warmup","the","`","feed","`",".","history",":","`","ObservationHistory","`","The","observation","history",".","renderer_history",":","`","List","[","dict","]","`","The","history","of","the","renderer","data","feed","."]
docstr: Checks if there is another observation to be generated.
  
  Returns
  -------
  bool
      Whether there is another observation to be generated.
docstr_tok: ["Checks","if","there","is","another","observation","to","be","generated",".","Returns","--","--","--","-","bool","Whether","there","is","another","observation","to","be","generated","."]
code: def has_next(self) -> bool:
      """Checks if there is another observation to be generated.
  
      Returns
      -------
      bool
          Whether there is another observation to be generated.
      """
      return self.feed.has_next()
  
imports: from typing import List
  import datetime
  import numpy
  import pandas
  from gym.spaces import Box, Space
  from random import randrange
  from tensortrade.feed.core import Stream, NameSpace, DataFeed
  from tensortrade.oms.wallets import Wallet
  from tensortrade.env.generic import Observer
  from collections import OrderedDict
label_desc: Use image node_id 5 for calling the TensorTradeObserver obj's underlying member method code with example usage: obj.has_next() and returns: self