private void ShowEstimationForm(data.baseDS.stockCodeRow stockCodeRow, data.baseDS.strategyRow strategyRow,
                                        AppTypes.TimeScale timeScale, DateTime frDate, DateTime toDate)
        {
            Data data = new Data(frDate, toDate, timeScale, stockCodeRow.code);

            Analysis.AnalysisResult advices = appHub.strategy.TradeAnalysis(data, strategyRow.code);
            if (advices != null)
            {
                myAdviceEstimateForm.Init(data, advices);
                myAdviceEstimateForm.ShowForm();
            }
        }
 private void dataGrid_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e)
 {
     try
     {
         if (testResultDataGrid.CurrentRow == null)
         {
             return;
         }
         string stockCode = testResultDataGrid.CurrentRow.Cells[0].Value.ToString();
         if (e.ColumnIndex == 0)
         {
             ShowAnalysisForm(stockCode, dateRangeEd);
             return;
         }
         string strategyCode = strategyClb.myCheckedValues[e.ColumnIndex - 1];
         data.baseDS.strategyRow  strategyRow  = application.dataLibs.FindAndCache(myDataSet.strategy, strategyCode);
         data.baseDS.stockCodeRow stockCodeRow = application.dataLibs.FindAndCache(myDataSet.stockCode, stockCode);
         ShowEstimationForm(stockCodeRow, strategyRow, dateRangeEd.myTimeScale, dateRangeEd.frDate, dateRangeEd.toDate);
     }
     catch (Exception er)
     {
         this.ShowError(er);
     }
 }