Кому стратегию? Много и бесплатно) - страница 44

 

Вопрос по FxSB + Net С#.

Умумукался переводить хотя бы "свои" индикаторы (те, которые были "подогнаны" в стратегии) в mql4.

Вопрос - можно ли (легко ли) откомпилить всю эту "богадельню" в dll, которые потом можно будет вызывать в советнике? (естественно без переписывания кода).

Сам я от всех этих Net'ов и "диезов" далек. TurboC 2.0 рулит ;)

 
SergNF писал(а) >>

Вопрос по FxSB + Net С#.

Умумукался переводить хотя бы "свои" индикаторы (те, которые были "подогнаны" в стратегии) в mql4.

Аналогично. Муторно это.

SergNF писал(а) >>

Вопрос - можно ли (легко ли) откомпилить всю эту "богадельню" в dll, которые потом можно будет вызывать в советнике? (естественно без переписывания кода).

Сам я от всех этих Net'ов и "диезов" далек. TurboC 2.0 рулит ;)

Я когда-то с Net'ом весьма дружил, но давно. В любом случае просто откомпилить не получится, так как необходимо еще учесть все нюансы МТ4. В общем, энтузиазма нужно изрядно и времени. Имхо, проще все же написать точные аналоги на mq4. И предложить Мирославу складывать исходники в ту же "богадельню".

А что, TurboC dll-ки не стругает? :)

 
voltair писал(а) >>

Аналогично. Муторно это.

Я когда-то с Net'ом весьма дружил, но давно. В любом случае просто откомпилить не получится, так как необходимо еще учесть все нюансы МТ4. В общем, энтузиазма нужно изрядно и времени. Имхо, проще все же написать точные аналоги на mq4. И предложить Мирославу складывать исходники в ту же "богадельню".

Нет. Мне кажется, что проще сделать какую-то "обвязку" (так, чтобы вообще не править исходный текст) к текстам из соурсов и линковать dll'ки в mql4.

voltair писал(а) >>

А что, TurboC dll-ки не стругает? :)

Это была шутка - компилятор времен, когда компьютеры были большими, а DOS рулил. :)

Сейчас, если припрет, пишу на Дельфи 6.0, для котрой тоже надо переделывать все исходники. А хочется скопировать/вставить/откомпилить и все.

voltair писал(а) >>

...просто откомпилить не получится, так как необходимо еще учесть все нюансы МТ4....

Из dll'ки достаточно вернуть что-то типа:

// Sets the component's type
if (slotType == SlotTypes.OpenFilter)
{
component[1].DataType = IndComponentType.AllowOpenLong;
component[1].CompName = "Allows long positions opening";
component[2].DataType = IndComponentType.AllowOpenShort;
component[2].CompName = "Allows short positions opening";
}
else if (slotType == SlotTypes.CloseFilter)
{
component[1].DataType = IndComponentType.ForceCloseLong;
component[1].CompName = "Forces long positions closing";
component[2].DataType = IndComponentType.ForceCloseShort;
component[2].CompName = "Forces short positions closing";
}

 
SergNF писал(а) >>

Нет. Мне кажется, что проще сделать какую-то "обвязку" (так, чтобы вообще не править исходный текст) к текстам из соурсов и линковать dll'ки в mql4.

Вот заметим хотя бы то, что нумерация баров противоположная... В FxSB последний бар не нулевой, а наоборот максимальный для истории. Плюс другие разные нюансы. В общем, имхо, если кто обвязку делать возьмется, то честь и хвала, конечно. Но я бы не стал. Еще причины ниже.

SergNF писал(а) >>

... хочется скопировать/вставить/откомпилить и все.

Из dll'ки достаточно вернуть что-то типа ...

А как потом оптимизировать?

Мне видится, что все таки несколько более просто написать конвертор xml в mq4. Но для этого нужна библиотека FxSB-шных индикаторов в коде mq4. Однако эту работу можно выполнить параллельно. Каждый (желающий и умеющий) закодит по индюку, через пару недель (оптимистично, конечно :) ) все будут. Ну и конвертор xml-ки далее написать не сложно. А "обвязка" это, имхо, надолго.


P.S. О! Вот и Мирослав ниже о том же (библиотеке индикаторов в mq4) пишет!

 

Hello,

I noticed that when Forex strategy Builder runs in Russian an unpleasant overlap appears in the "Generator" tool. It seems the Russian font is wider than the English one. I'll correct this today.

If you have corrections or suggestions to the Russian translation, please contact me. (The translation can be edited online in the programs help system).

The compatibility between Forex Strategy Builder and MetaTrader is a different question. There are several possible ways to make the strategies of FSB working in MT. The most natural to me is to make a set of proper MQL4 indicators. It should not be so difficult since the indicators I’m using are pretty standard. The greatest part of the C# code is implementation of the logic rules for application of the indicators. It looks terrific but it describes simple logic only. I’m ready to help everyone who wants to adopt the code.

It's possible to start an open source progect fsb2mql converter. It will benefit all the MetaTrader users.

 

voltair писал(а) >>

У меня есть свои контрдоводы (pure совместимость, актуальность, "translate error free"), но я настаивать не буду, т.к. пока "это" воспринимаю как "игрушку для ума" - проветрить свои мозги от основной работы.

It looks terrific but it describes simple logic

И прочая "латиница" :)

Эээх. Ну не кОсмОпОлиты мы ;)

 
Miroslav_Popov писал(а) >>

... There are several possible ways to make the strategies of FSB working in MT. The most natural to me is to make a set of proper MQL4 indicators. ... I’m ready to help everyone who wants to adopt the code.

It's possible to start an open source progect fsb2mql converter. It will benefit all the MetaTrader users.

Perfectly! And it coincides with my offers. I suggest to write the converter fsb2mql on... mq4! :) If it will be some script of MT4 it will be convenient for all.

 

Полный off-топик.

Когда пытались "переписать" юриков, то были целые ветки, в которых "попиксельно" сравнивали графики купленного и вновь написанного.

В данном случае - конечно есть автор, но по поводу любой нестыковки любой сделки FSB и MT4 будут целые флеймы "ошибка перевода"/рисующий индикатор/просто туфта.

ЗЫ. С одной стороны, я догадался, что кроме написания

#define MT4_EXPFUNC __declspec(dllexport)
MT4_EXPFUNC BOOL __stdcall ...

придется много "адаптировать" - описывать структуры и прочая прочая.

С другой стороны, когда я переписал на mql это

// ---------------------------------------------------------
Bulls_Bears_Power BBP = new Bulls_Bears_Power(slotType);
BBP.IndParam.ListParam[1].Index = parameters.ListParam[1].Index;
BBP.IndParam.NumParam[0].Value = parameters.NumParam[0].Value;
BBP.IndParam.CheckParam[0].Checked = parameters.CheckParam[0].Checked;
BBP.Calculate(slotType);

afIndicator1 = BBP.Component[0].Value;
afIndicator2 = MovingAverage(iPeriod2, 0, maSignalMAMethod, afIndicator1);
// ----------------------------------------------------------

for (int iBar = iFirstBar; iBar < Bars; iBar++)
{
afOscllator[iBar] = afIndicator1[iBar] - afIndicator2[iBar];
}

то просто ... не был уверен в правильности.

ЗЫЫ. Ни на чем не настаиваю. Меня пока просто интересует - совпадут ли сигналы/профиты/лосы для случая, чуть сложнее, чем написал Figar0.

 

Exporting full Expert Adviser from Forex Strategy Builder is not so easy. FSB uses 9 strategy templates so far and I think I'll double them shortly. Another problem is that some of the indicator functions are implemented in the backtester core instead of the indicator class. There are also several specific cases FSB manage differently than the MT backtester. Off course I can explain every step of the process if somebody is interested in.

However I don’t see problems to write 90% of the indicators and the logic rules to MQL4. Actually I tested personally great variety of strategy in both testers to be sure of the reliability of FSB. There is very little number of differences between the backtests and they are in specific cases that FSB manages in special care in order to improve the backtest.

 
Miroslav_Popov >>:

Hello dear traders,

I’m Miroslav Popov – the author of Forex Strategy Builder.

I noticed recently more Russian and Ukrainian visitors coming to the Forex Strategy Builder’s website because of this discussion. I hope some of you will find the program useful.

I don’t want to flood your forum since I’m not confident in Russian.

Wish you luck and profit!

Bye

Dear Miroslav!

I show the admirer of your labour.

That you create this great prodigy.

I have already programmed 6 your strategies, remake your indicators for MetaTrader.

And very complacent that have a chance, using your boundless bounty, become happier.