MT5 and trans2quik.dll - page 18

 
Vitalii Ananev:

It is not a commission. It is the difference in price between the commodity and the futures contract. If the futures contract is more expensive than the commodity, it is called a contango. If it's cheaper, it's called a backwardation.

I know that. 42.5 is the commission at the standard opening rate for 100 shares + 1 futures (both ways). At more advantageous futures it will be more convenient, but also the volume of means will be more necessary, it will be necessary to open with limits or one leg with limit the other with a market that the parity remained profitable.

And spread on short futures is about 20 p. maximum, on long futures is more profitable, but there is no liquidity on futures at all.

 
prostotrader:

It's unlikely that a "dummy" will write his own application that will accept PostMessage from MT5 and manage trades via Quick API

Of course he won't, I thought there was enough open source code to reproduce a working terminal mapping.

 
Aleksey Vyazmikin:

Of course he won't, I thought there was enough open source code to reproduce a working terminal binding.

The problem is that MT5 doesn't handle external colbacs,

If there were, we could write everything in MQL5

 

I rewrote the crypt to avoid the HWND_BROADCAST system "chugging" all the time,

messages are sent at the start of the script and when the money changes

w32 = require("w32")

is_run = false
HWND_BROADCAST = 0xFFFF
WParam = 2

WM_EBS_MONEY = w32.RegisterWindowMessage("WM_EBS_MONEY")

if WM_EBS_MONEY >= 0xC000 then
  a_table = getPortfolioInfoEx("MCХХХХХХХХХХ", "ХХХХХ", 2)
  lpParam = math.floor(a_table.limit_open_pos * 100)
  w32.PostMessage(HWND_BROADCAST, WM_EBS_MONEY, WParam, lpParam)

  is_run = true
else
  message("Message not registered!") 
end

function OnStop()
  is_run = false
end

function OnMoneyLimit(m_limit)
  a_table = getPortfolioInfoEx("MCХХХХХХХХХХ", "ХХХХХ", 2)  
  lpParam = math.floor(a_table.limit_open_pos * 100)
  w32.PostMessage(HWND_BROADCAST, WM_EBS_MONEY, WParam, lpParam)
--  message("OnMoneyLimit")
end

function OnDepoLimit(d_limit)
  a_table = getPortfolioInfoEx("MCХХХХХХХХХХ", "ХХХХХ", 2)  
  lpParam = math.floor(a_table.limit_open_pos * 100)
  w32.PostMessage(HWND_BROADCAST, WM_EBS_MONEY, WParam, lpParam)
--  message("OnDepoLimit")
end

function OnFuturesClientHolding(f_holding)
  a_table = getPortfolioInfoEx("MCХХХХХХХХХХ", "ХХХХХ", 2)  
  lpParam = math.floor(a_table.limit_open_pos * 100)  
  w32.PostMessage(HWND_BROADCAST, WM_EBS_MONEY, WParam, lpParam)  
--  message("OnFuturesClientHolding")
end


function OnFuturesLimitChange(f_change)
  a_table = getPortfolioInfoEx("MCХХХХХХХХХХ", "ХХХХХ", 2)  
  lpParam = math.floor(a_table.limit_open_pos * 100)
  w32.PostMessage(HWND_BROADCAST, WM_EBS_MONEY, WParam, lpParam)
--  message("OnFuturesLimitChange")
end

function main()
 while is_run do
   sleep(1000)
  end
end
 

Hello. Can someone advise me on how to duplicate trades from MT4 to Quick?

I found one site on the net, but its author does not reply to messages

 
законопослушный гражданин Quick?

I found one site on the net, but its author is not answering my messages.

Of course they can.

Herehttps://www.mql5.com/ru/job

Торговые приложения для MetaTrader 5 на заказ
Торговые приложения для MetaTrader 5 на заказ
  • 2021.12.13
  • www.mql5.com
Самый большой фриланс c разработчиками программ на MQL5
 
prostotrader #:

Of course they can.

Herehttps://www.mql5.com/ru/

there's nothing in the search.

empty.

 
законопослушный гражданин #:

there's nothing in the search.

nothing.

You don't have to search there, you have to order what you want.