[Bug 47221] Zorro 2.x (time series analysis and trading strategies software) using OLE Date/Time API via MFC 'COleDateTime' class shows incorrect data

WineHQ Bugzilla wine-bugs at winehq.org
Sun Jan 12 14:53:28 CST 2020


https://bugs.winehq.org/show_bug.cgi?id=47221

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
            Summary|COleDateTime class is not   |Zorro 2.x (time series
                   |100% compatible             |analysis and trading
                   |                            |strategies software) using
                   |                            |OLE Date/Time API via MFC
                   |                            |'COleDateTime' class shows
                   |                            |incorrect data
             Status|UNCONFIRMED                 |NEW
                 CC|                            |focht at gmx.net
          Component|-unknown                    |oleaut32

--- Comment #4 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

confirming.

Stable download link to Zorro v2.09 (matching screenshot from comment #2) via
Internet Archive:

https://web.archive.org/web/20190518095628/http://opserver.de/down/Zorro_setup.exe

I've rephrased the title of the bug report as it was misleading. Wine doesn't
implement MFC at all which provides the 'COleDateTime' class (it could have
been interpreted as such).

Trace log shows the following OLE date/time APIs being used by the app (or
rather the MFC COleDateTime code the app is linked with):

* oleaut32.SystemTimeToVariantTime
* oleaut32.VariantTimeToSystemTime
* oleaut32.VarUdateFromDate

--- snip ---
$ pwd
/home/focht/.wine/drive_c/users/focht/Zorro

$ WINEDEBUG=+seh,+relay,+ole,+variant wine ./Zorro.exe >>log.txt 2>&1
...
--- snip ---

@jcl (comment #3)

--- quote ---
>From comparing both logs, I suspect a difference of COleDateTime.GetDayOfWeek()
or GetHour() when the date is close to a day or hour boundary.
--- quote ---

I presume you are one of the developers of this app?

https://zorro-project.com/development.php

It would definitely help to have a small test app that shows this behaviour or
alternatively reduce the simulation to the absolute minimum.

I've played a bit with the simulation parameters to reduce the amount of
data/smaller time series but I was only partially successful.

'/home/focht/.wine/drive_c/users/focht/Zorro/Strategy/Workshop4.c'

--- snip ---
// Trend Trading ///////////////////
#include <profile.c>

function run()
{
    EndDate = 2017; // fixed simulation period 
    Verbose = 2;
    set(LOGFILE|PLOTNOW); // log all trades

    vars Prices = series(priceClose());
    vars Trends = series(LowPass(Prices,300));

    Stop = 30*ATR(100);

    vars MMI_Raw = series(MMI(Prices,300));
    vars MMI_Smooth = series(LowPass(MMI_Raw,300));

    if(falling(MMI_Smooth)) 
    {
        if(valley(Trends))
            enterLong();
        else if(peak(Trends))
            enterShort();
    }

    PlotWidth = 800;
    PlotHeight1 = 300;
    //setf(PlotMode,PL_FILE);
    //setf(PlotMode,PL_FILE);
    //plot("MMI_Raw",MMI_Raw,NEW,GREY);
    //plot("MMI_Smooth",MMI_Smooth,0,BLACK);
    //plotTradeProfile(-50); 
}
--- snip ---

You have way more insight how adjust the parameters to reduce the amount of
output, specifically Lookback and Depth.

$ sha1sum Zorro_setup.exe 
9c9f0f65bf3d045df0d92084a48916869b060577  Zorro_setup.exe

$ du -sh Zorro_setup.exe 
95M    Zorro_setup.exe

$ wine --version
wine-5.0-rc5

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list