WINDOW; $form_type = $window['FORM_TYPE']; $config = $window['CONFIG']; parse_str($config, $configParts); $window_name = $configParts['WN']; $odds_maker_config = $window->ODDSMAKER; if ($config && $odds_maker_config) { $strategy_layouts[$window_name] = fix_oddsmaker_config_values($odds_maker_config); } } #$strategy_xml = simplexml_load_file("http://will.trade-ideas.com/autooptimize/strategies.xml"); $strategy_url = "$url_base/strategies.xml"; if ($date != "") { $strategy_url = "$url_base/strategies.$date.xml"; } echo "Using strategy url: $strategy_url\n"; $strategy_xml = get_xml_from_url($strategy_url); foreach ($strategy_xml as $strategy_node) { $config = $strategy_node['CONFIG']; $config = strtr($config, array("http://www.trade-ideas.com/View.php?" => "")); parse_str($config, $configParts); $window_name = $configParts['WN']; if ($strategy_layouts[$window_name]) { $strategy = array(); $strategy['config'] = $config; $strategy['window_name'] = $window_name; $strategy['oddsmaker'] = $strategy_layouts[$window_name]; $strategy['id'] = $strategy_id; foreach ($variables as $variable) { $strategy[$variable] = (string)$strategy_node[$variable]; } array_push($to_return, $strategy); $strategy_id++; } } #print_r($to_return); return $to_return; } # boolean values get imported as "True" or "False" which PHP interprets as true. This fixes it. function fix_oddsmaker_config_values($oddsmaker) { $booleanValues = array( "LONG", "RDO_EXIT_AT_THE_CLOSE", "RDO_EXIT_TIME_FUTURE_CLOSE", "RDO_EXIT_TIME_AT_THE_OPEN", "RDO_BY_AT_LEAST_DOLLAR", "RDO_BY_AT_LEAST_PERCENT", "RDO_EXIT_COND_NONE", "RDO_EXIT_COND_PERCENT", "RDO_EXIT_COND_BARS", "RDO_EXIT_TIME_MINUTES_AFTER", "RDO_EXIT_COND_ANOTHER_ALERT", "CHK_PROFIT_TARGET", "CHK_STOP_LOSS", "CHK_WIGGLE", "IS_NEW", ); $numberValues = array( "DAYS_OF_TEST", "DAYS_TO_SKIP", "EXIT_TIME_CLOSE_DAYS", "EXIT_TIME_OPEN_DAYS", "EXIT_TIME_MINUTES_BEFORE", "EXIT_TIME_MINUTES_AFTER", "TXT_ENTRY_HOURS_START", "TXT_ENTRY_MINUTES_START", "TXT_ENTRY_HOURS_END", "TXT_ENTRY_MINUTES_END", "TXT_EXIT_COND_PERCENT", "TXT_EXIT_COND_BARS", "TXT_PROFIT_TARGET", "TXT_STOP_LOSS", "TXT_BY_AT_LEAST_DOLLARS", "TXT_BY_AT_LEAST_PERCENT", "EXIT_CONDITION", "CBO_LOCATION", ); $to_return = array(); foreach ($booleanValues as $booleanValue) { $to_return[$booleanValue] = $oddsmaker[$booleanValue] == "True"; } foreach ($numberValues as $numberValue) { $to_return[$numberValue] = (string)$oddsmaker[$numberValue]; } return $to_return; } function get_cloud_link($full_link) { $parts = explode("=", $full_link); return $parts[1]; } function get_settings($full_settings) { $settings = str_replace("http://www.trade-ideas.com/View.php?", "", $full_settings); return $settings; } function get_trading_date($optimized) { global $use_trading_date_today; if ($use_trading_date_today) { return date("Y-m-d"); } $optimize_date = strtotime($optimized); $optimize_ymd = date("Y-m-d", $optimize_date); $dow = date("w", $optimize_date); $days_to_add = 1; if ($dow == 5) { $days_to_add = 3; } else if ($dow == 6) { $days_to_add = 2; } $trading_date = date("Y-m-d", strtotime($optimize_ymd . " + $days_to_add days")); echo "Returning $trading_date\n"; return $trading_date; } ?>