Cho đoạn mô tả: description = """Setup Name: Continuation breakout
Strategy Type: Breakout
Timeframe: Daily chart
Description:
A leg of 3-5 daily candles, each candle has close near high, the range between the close and open is larger than normal
A period of 3-5 daily candles (yellow mark), of very narrow range (Doji), where the range between high to low is smaller than normal
A big daily candle, close near high, as the entry candle
Setup Criteria 2LYNCH:
(2): Not up 2 days in a row - Before the entry day, the previous 2 days should not have positive net change. Net change of a candle is calculated by its closing price toward the previous candle’s closing price.
(L): Linearity - The leg (description 1.) should have more green candles than red candle, and not many wicks
(N): Narrow - Before the entry day, the previous day should be a doji or a red candle, not a green candle
(C): Consolidation - The pullback (description 2.) should be tight, compact, in low declining volume
(H): High: the entry candle at the close, should have closing price near the high of day""" Mục đích từ đoạn mô tả này, chúng tôi muốn tạo ra Python code để vẽ được đúng biểu đồ đồ thị hình nến đúng theo chi tiết mô tả nhất. Hiện tại chúng tôi đã thiết kế hệ thống multi-agent dùng autogen nhưng nó mô tả còn sơ sài, chưa tối ưu. Bạn hãy chỉnh sửa và cải tiến để nó đáp ứng được yêu cầu của chúng tôi. Đây là đoạn code mô tả multi-agent: # Define the agents
user_proxy = UserProxyAgent(
    name="User_Proxy",
    system_message="A proxy for the human user. You will recieve candlestick chart description and initiate the process.",
    description="Recieve candlestick chart description from the user",
    code_execution_config=False,
)

nlp_agent = AssistantAgent(
    name="NLP_Agent",
    system_message="""You are an NLP expert. Analyze the chart description and extract key information such as timeframe, data points, and special indicators, ...""",
    description="Analyze the chart description and extract key information",
    llm_config=gpt4_config,
)
chart_designer = AssistantAgent(
    name="Chart_Designer",
    system_message="""You are a chart design expert. Based on the processed information, design the structure and components of the candlestick chart.""",
    description="design the structure and components of the candlestick chart",
    llm_config=gpt4_config,
)
code_generator = AssistantAgent(
    name="Code_Generator",
    system_message="""You are a Python expert specializing in mplfinance. Generate Python code to create the designed candlestick chart using mplfinance. 
    Wrap the code in a code block that specifies the script type. The user can't modify your code. So do not suggest incomplete code which requires others to modify. 
    Don't use a code block if it's not intended to be executed by the executor.
    Don't include multiple code blocks in one response. Do not ask others to copy and paste the result. Check the execution result returned by the executor.
    If the result indicates there is an error, fix the error and output the code again. Suggest the full code instead of partial code or code changes. 
    After successful execution, review the result to ensure it accurately represents the chart description provided by the NLP_Agent and Chart_Designer.
    If the chart doesn't match the description, adjust the code and re-execute.
    If the error can't be fixed or if the task is not solved even after the code is executed successfully, analyze the problem, revisit your assumption, collect additional info you need, and think of a different approach to try.
    """,
    description="write code, fix bug and review the result",
    llm_config=gpt4_config,
)
code_executor = UserProxyAgent(
    name="Code_Executor",
    system_message="""You are a Python code execution expert. Run the provided code, capture the output or any errors, and report the results. 
    If there are errors, provide detailed information to help with debugging.""",
    description="Execute Python code and report result",
    human_input_mode="NEVER",
    code_execution_config={
        "last_n_messages": 3,
        "work_dir": "create_chart",
        "use_docker": False,
    },  # Please set use_docker=True if docker is available to run the generated code. Using docker is safer than running the generated code directly.
)groupchat = GroupChat(
    agents=[user_proxy, nlp_agent, chart_designer, code_generator, code_executor],
    messages=[],
    max_round=10,
    send_introductions=True,
    speaker_selection_method="round_robin",
)
groupchat_manager = GroupChatManager(groupchat=groupchat, llm_config=gpt4_config)